我的工作是关于过程代数语义的。
现在,我已经定义了一些代数语义运算符,并且由于要构造一个完整的程序语义,所以我想在Datatype中使用它们。
这是我的代码:
<VirtualHost *:80>
DocumentRoot "/Users/{myuser}/Sites/mywebsite"
ServerName mywebsite.localhost
</VirtualHost>
现在,在这一行:
datatype 'a prog_expr =
Const_expr "'a" |
if_then_else_expr "'a prog_expr" bool "'a prog_expr" |
sequential_expr "'a prog_expr" "'a prog_expr" |
nondeterm_choice_expr "'a prog_expr" bool "'a prog_expr"
primrec val_prog_expr :: "'a prog_expr ⇒ ('a ⇒ 'a prog_expr) ⇒ 'a prog_expr" where
"val_prog_expr (Const_expr P) s = s P" |
"val_prog_expr (if_then_else_expr P b Q) s = (val_prog_expr P s ◃ b ▹⇩ val_prog_expr Q s)" |
"val_prog_expr (sequential_expr P Q) s = (val_prog_expr P s ; val_prog_expr Q s)" |
"val_prog_expr (nondetem_choice_expr P Q) s = (val_prog_expr p s ⊓ val_prog_expr Q s)"
有错误:
"val_prog_expr (if_then_else_expr P b Q) s = (val_prog_expr P s ◃ b ▹⇩ val_prog_expr Q s)" |
我认为这与我使用的语言环境运算符有关。
然后,我添加上下文locale_name开始....结束
它有新错误:
Inner lexical error⌂ Failed to parse prop
那我该怎么办?我希望有人能给我一些指导。