Skip to content
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

Introduce an {:isolate_branches} attribute that can be used at the method level #5817

Open
keyboardDrummer opened this issue Oct 9, 2024 · 0 comments
Labels
kind: enhancement Enhancements, feature requests, etc. These are NOT bugs, but ways we can improve Dafny misc: brittleness When Dafny sometimes proves something, and sometimes doesn't priority: not yet Will reconsider working on this when we're looking for work

Comments

@keyboardDrummer
Copy link
Member

{:isolate_branches} would provide a weaker form of {:isolate_assertions}, by only creating a separate VC for each branch in the method. This way, different branches of the same conditional construct would be isolated. Not doing so can lead to rather surprising verification behavior, where changes in one branch effecting the verification of a sibling branch.

We could consider making {:isolate_branches} the default, since it is relatively cheap compared to {:isolate_assertions}.

@keyboardDrummer keyboardDrummer added kind: enhancement Enhancements, feature requests, etc. These are NOT bugs, but ways we can improve Dafny misc: brittleness When Dafny sometimes proves something, and sometimes doesn't priority: not yet Will reconsider working on this when we're looking for work labels Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: enhancement Enhancements, feature requests, etc. These are NOT bugs, but ways we can improve Dafny misc: brittleness When Dafny sometimes proves something, and sometimes doesn't priority: not yet Will reconsider working on this when we're looking for work
Projects
None yet
Development

No branches or pull requests

1 participant