Skip to content

Fix issue #688#690

Merged
marcoeilers merged 4 commits into
masterfrom
meilers_fix_668
Mar 13, 2023
Merged

Fix issue #688#690
marcoeilers merged 4 commits into
masterfrom
meilers_fix_668

Conversation

@marcoeilers

Copy link
Copy Markdown
Contributor

Fixes issue #688. The problem in that issue is that when consuming a QP with an unsatisfiable condition, trigger evaluation results in more unsatisfiable assumptions. This is no problem if these assumptions are assumed conditionally under the quantifier condition, but they were not:
Since they were part of a path condition layer that did not contain the branch condition (this layer is introduced specifically before trigger evaluation to be able to identify the newly-added assumptions), they were assumed unconditionally, which is unsound.

This PR removed the new layer and all its assumptions after trigger evaluation. They are then assumed again only if the trigger could be evaluated successfully, but crucially, on the layer that contains the branch condition, so they will be assumed conditionally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant