-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Regression in Z3 timeout? #2354
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
Comments
I added the following:
and it seems to "get stuck" with output like this:
|
Attempted fix in #2356. I think this is where things got broken: 48fc3d7#diff-5f65287f221a60407bf05209d67c8d9bL3734 |
smt.timeout should really be deprecated. |
Yep! I can confirm that -- I changed our code to use |
Signed-off-by: Nikolaj Bjorner <[email protected]>
@NikolajBjorner Hmm, from release note for 4.8.6, I saw this issue. But, the |
I've hit this issue too, @yxliang01 where are the release notes you mentioned? I can't see details of this bug in the main release notes file in the repo |
No, I didn't see any issue mentioning this. That's why I commented here. |
ah okay, I see now a link to this issue and a commit that removes the timeout, I see something about "datalog.timeout", not sure what that is but doesn't do what I want. |
CC: @NikolajBjorner |
Ah, I think I found my issue, and I'm not sure if it's a bug or intended, I was calling t = Then(*tactics)
self.solver = t.solver()
if timeout:
set_param("timeout", timeout*1000) # New way???
#self.solver.set("timeout", timeout*1000) # Deprecated??? |
There is a gobal timeout: The solver object also admits setting a timeout, though it isn't called solver.timeout. It is called timeout. This works for me: from z3 import * s = Solver() Arguably, it should have been called "solver.timeout", or for usability, both options are available. |
Signed-off-by: Nikolaj Bjorner <[email protected]>
I was doing Which timeout am I supposed to configure to achieve the same result? |
Hello,
I have two builds of Z3:
606754c09
(May 1st)b1893f2a5
(June 20th)Given a particular Z3 Python script, and when using
606754c09
, I get a timeout (i.e., Z3 returnsunknown
). However, when using the same script underb1893f2a5
, Z3 never terminates (i.e., it appears that the timeout parameter is being ignored). This timeout is set to 10000 ms.I have captured the Z3 logs from these two runs:
606754c09_z3.log
b1893f2a5_z3.log
The log for
b1893f2a5
ends when I kill the process; the log for606754c09
has been "artificially truncated" to match that ofb1893f2a5
(i.e., after the check givesunknown
, we do further work with Z3, which is irrelevant for this issue I believe).Please let me know if there are any more details I can provide on this issue.
Cheers,
Andrew
The text was updated successfully, but these errors were encountered: