Isabelle - 代码生成 - typedef
Isabelle - Code generation - typedef
我正在尝试从一个非常简单的 Isabelle 程序生成代码。
typedef point = "{p::(real*real). True}" by(auto)
definition xCoord :: "point ⇒ real" where "xCoord P ≡ fst(Rep_point P)"
export_code xCoord in Haskell module_name Example file code
但出现错误:
No code equations for Rep_point
反正我是不明白。究竟缺少什么?
您可以在吊运包中登记型号。然后 code-generation 工作。此外,不直接使用 Rep_point
而是使用 lift_definition
是有用的,例如,在下面的代码中
setup_lifting type_definition_point
lift_definition xCoord :: "point ⇒ real" is fst .
export_code xCoord in Haskell module_name Example
我正在尝试从一个非常简单的 Isabelle 程序生成代码。
typedef point = "{p::(real*real). True}" by(auto)
definition xCoord :: "point ⇒ real" where "xCoord P ≡ fst(Rep_point P)"
export_code xCoord in Haskell module_name Example file code
但出现错误:
No code equations for Rep_point
反正我是不明白。究竟缺少什么?
您可以在吊运包中登记型号。然后 code-generation 工作。此外,不直接使用 Rep_point
而是使用 lift_definition
是有用的,例如,在下面的代码中
setup_lifting type_definition_point
lift_definition xCoord :: "point ⇒ real" is fst .
export_code xCoord in Haskell module_name Example