-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New syntax for pragmas and assertions #276
base: new_dedukti
Are you sure you want to change the base?
Conversation
All right, I'll just inline some example file here to have a taste of it
|
All previous pragmas of the form |
This syntax change requires an update of the |
| HasType of term * term (** Typability test, given a term and a type. *) | ||
| Convert of typed_context * term * term (** Convertibility between the two given terms. *) | ||
| HasType of typed_context * term * term (** Typability test, given a term and a type. *) | ||
| Typeable of typed_context * term (** Typability test, without the type *) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not call it infer
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's because it is an assertion, so we are thinking of a predicate rather than a computation. In particular, the Dedukti command Typeable(c, t)
should not print anything. It could be IsTypeable
, if you want to stress out the predicate.
Implement the new syntax for pragmas and assertions as discussed.