-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Performance difference between solvers #7134
Comments
no configuration at the moment. It may be as simple as detecting that
where F is a formula context, A an array, I an index, and E an element. For your formula I are all constant indices, E are disjoint extracts into a bit-vector that isn't used elsewhere. |
Thanks for the feedback, I will implement this pre-processing at ESBMC level then and check if it gives us the same performance boost then. |
Signed-off-by: Nikolaj Bjorner <[email protected]>
ehm, this was not as complicated. Z3 has an inefficiency when handling large stores with constant offsets. |
Many thanks, @NikolajBjorner. |
At ESBMC we noticed a benchmark with a huge difference between exporting SMT2 from Boolector and Z3 (esbmc/esbmc#1698). Specifically, Boolector took 5s and I could not reach a solution with Z3 under 5min. Also, extracting the boolector formula and feeding it to Z3 gave the same performance (<5s).
Could you please advise whether there is a configuration to make Z3 have a similar performance?
z3-flat.txt
btor-formula.txt
The text was updated successfully, but these errors were encountered: