-
Notifications
You must be signed in to change notification settings - Fork 54
Update Yices to version 2.7.0 #524
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
base: master
Are you sure you want to change the base?
Conversation
Otherwise Yices may put SMTLIB quotes around the name
When compiled with --thread-safety Yices should be reentrant
The issue has been fixed in the new version and "(" characters in variable names now get quoted
@kfriedberger |
@daniel-raffler |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good. I will make a deeper test the next days.
*/ | ||
DEFINE_FUNC(int, 1has_1mcsat) WITHOUT_ARGS | ||
CALL0(int, has_mcsat) | ||
INT_RETURN |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could maybe add BOOL_RETURN for such methods.
Thanks! I've been able to build the binaries in the 18.04 image Should I build with --thread-safety or --enable-mcsat? Unfortunately these options can't be combined and I'm not quite sure which one is more important to us |
Hello,
this PR updates Yices to version 2.7.0 and closes #402. Other than that the new version mainly includes improvements to the MCSat solver, which we're not using at the moment. Here is a full changelog.
Yices2 has some additional features that we may want to include:
unsat core
(yet?)unsat core
, but no interpolation or non-linear arithmetic--thread-safety
option that allows multiple solver instances to run in parallelQF_BV
logicIn this PR I stuck with Dpll as solver and just enabled the
--thread-safety
option. We could still add MCSat support and maybe even the external SAT solvers. Yices then picks the solver based on the logic, which would give us the best feature set. The big downside is that MCSat is not compatible with--thread-safety
, which means that multiple parallel solver instances are not possible