-
Notifications
You must be signed in to change notification settings - Fork 62
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
prove_core
has unhelpful error message "Term is not a proposition"
#1566
Comments
I think you need to use Pi instead of lambda to state propositions. |
Indeed, I ran into this issue in a separate context: aws/s2n-tls@d5a044b#diff-ae328ea2909d8141691e3a608d7acef67c9900d80e3c58a8ce08e341fb578d69R39 |
You'll shortly run into a separate problem, though, which is that |
@robdockins Yes, of course, that's it. I was switching from In that case, the bug is that the error message is unhelpful. I assumed it was complaining about quantification over |
The following script just doesn't quite work. We should probably make "trivial" a little less trivial:
|
Yes, it would be good to make EDIT: See #1567. |
Here's my workaround, for the record:
where |
prove_core
rejects polymorphic theoremsprove_core
has unhelpful error message "Term is not a proposition"
The current error is produced here: saw-script/src/SAWScript/Proof.hs Lines 139 to 148 in db538d3
It would probably not be hard to add a little extra step there to check if the leading symbol is a lambda and print an additional hint in that case. |
Well, hummm. I thought that GaloisInc/s2n#7 had been pushed upstream. |
Fixed via #1568 |
I have a polymorphic rewrite rule that I'd like to prove, which quantifies over a variable
n : Nat
that is used as a vector size parameter. It should be provable just by unfolding some definitions. Butprove_core
rejects it with an error message before even running the proof tactic, saying "Term is not a proposition".The text was updated successfully, but these errors were encountered: