Constraining or conditionally enabling axioms inside a verification condition #7263
Unanswered
kiranandcode
asked this question in
Q&A
Replies: 1 comment
-
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hiya, I have a file that has a lot of quantified axioms -- I'm trying to speed up my verification by trying to restrict the instantiations of axioms per sub-branch of a larger query.
So far, the approach I have been using is to try and use triggers to do this:
For example, the following axiom
into
and then within the sub branch in which this axiom should be available, I ensure that it is assumed to be true
(=> (ax1 true) ...)
This seems to be effective at disabling axioms -- if an axiom is neccesary for a proof to go through, then the guard has to be present for the solver to return SAT, however, Z3 still seems to slow down as unneccesary axioms are added, even if their axiom guards are not assumed, and I see no significant improvement over just submitting everything to z3 as is.
In other words, I am currently trying to guide z3's search process and constrain it to only look at a particular subset of axioms and their instantiations, but it seems like this encoding doesn't seem to be effective in that regard, as it seems like the search process considers all axioms even though I have tried to indicate that they are not needed.
Beta Was this translation helpful? Give feedback.
All reactions