-
Notifications
You must be signed in to change notification settings - Fork 52
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
Proper way of having an abstract function as a postcondition of another abstract function? #483
Comments
Maybe the simplifier is messing up somewhere. Can you print the VC? |
Yes you're right, it seems the call to
|
The |
This is due to the encoding replacing ensuring in abstract functions by chooses which are then dropped by the simplifier. We already had another issue reported because of this I think. I'm thinking of a fairly major redesign of the simplifier to correctly take dependent types into account, but this will take some time. For a quick fix, we can maybe change the |
This one #408? |
This seems to be fixed on latest master, likely by #408.
|
Or maybe epfl-lara/inox#96, thanks for keeping track! |
I'm trying to define a trait which contains a function
inv
and a functionf
that shows thatinv
is true.I'm getting this invalid VC, any idea how to fix it? I was thinking the postcondition of
f$27
should hold since it callsf$29
, which has the same postcondition.The text was updated successfully, but these errors were encountered: