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

Add --isolate-paths option #5576

Open
keyboardDrummer opened this issue Jun 26, 2024 · 0 comments
Open

Add --isolate-paths option #5576

keyboardDrummer opened this issue Jun 26, 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 part: verifier Translation from Dafny to Boogie (translator)

Comments

@keyboardDrummer
Copy link
Member

keyboardDrummer commented Jun 26, 2024

Add an --isolate-paths option that can be set globally or at the verifiable symbol level (method/function/..)

When this option is set, at least one VC is generated per path.

We should enable Dafny developers to code in a way that allows a many to one relation for paths and assertions. This way, using --isolate-assertions would, when already using --isolate-paths, not introduce additional VCs. Using --isolate-assertions is important for guidance type features like #5261

Enable the many to one relation should be helped by:

The cost of using --isolate-paths can be reduced using opaque blocks: #5687

When combined with --isolate-assertions, this may produce a lot of VCs, so that's not recommended.

It's OK if this option can not be combined with {:split_here} and {:focus}

@keyboardDrummer keyboardDrummer added kind: enhancement Enhancements, feature requests, etc. These are NOT bugs, but ways we can improve Dafny part: verifier Translation from Dafny to Boogie (translator) misc: brittleness When Dafny sometimes proves something, and sometimes doesn't labels Jun 26, 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 part: verifier Translation from Dafny to Boogie (translator)
Projects
None yet
Development

No branches or pull requests

1 participant