3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 05:18:44 +00:00
Commit graph

215 commits

Author SHA1 Message Date
Nikolaj Bjorner fbae881ece add option to bypass model converter during constraint addition. Simplify model definitions that come from blocked clauses
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-27 16:24:14 -08:00
Nikolaj Bjorner 8230cbef4c fix mc efficiency issues
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-22 08:55:21 -08:00
Nikolaj Bjorner 107bfb1438 print model-add in display method
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-21 21:26:07 -08:00
Nikolaj Bjorner 2313b14210 include mc0 for display method
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-21 20:40:43 -08:00
Nikolaj Bjorner 33e8113c9e adding instrumentation to debug #1233
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-20 16:51:17 -08:00
Nikolaj Bjorner 2f218b0bdc remove also cores as arguments to tactics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-19 12:18:50 -08:00
Nikolaj Bjorner 4bbece6616 re-organize proof and model converters to be associated with goals instead of external
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-18 16:33:54 -08:00
Nikolaj Bjorner df6b1a707e remove proof_converter from tactic application, removing nlsat_tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-17 23:32:29 -08:00
Nikolaj Bjorner b3bd9b89b5 prepare for inverse model conversion for formulas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-17 19:55:23 -08:00
Nikolaj Bjorner 0d15b6abb7 add stubs for converting assertions, consolidate filter_model_converter
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-17 14:51:13 -08:00
Nikolaj Bjorner 454e12fc49 update to vector format
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-10 15:28:16 -08:00
Nikolaj Bjorner ee3ed3a27a Merge branch 'opt' of https://github.com/nikolajbjorner/z3 into opt 2017-11-09 09:55:41 -08:00
Nikolaj Bjorner 700f413e26 updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-09 09:55:37 -08:00
Nikolaj Bjorner 75b8d10f48 add backtrack level to cuber interface
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-08 21:44:21 -08:00
Nikolaj Bjorner 59ea11b1a3 cube and conquer parallel tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-04 13:40:31 -05:00
Nikolaj Bjorner 6df3e47b07 disable symbol fixing in pretty printer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-02 09:53:47 -05:00
Nikolaj Bjorner fd49a0c89c added facility to persist model transformations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-02 00:05:52 -05:00
Nikolaj Bjorner caaf0ba33c model-add/del
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-01 22:32:22 -05:00
Nikolaj Bjorner 3de8c193ea implementing model updates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-30 16:11:51 -05:00
Nikolaj Bjorner 92b5301b7f adding Cube method to .NET API, removing lookahead and get-lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-29 08:57:24 -07:00
Nikolaj Bjorner 2227db215e fix build break with virtual method override
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-28 16:58:16 -07:00
Nikolaj Bjorner e4b595d490 add solver pool abstraction for Spacer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-28 16:10:20 -07:00
Nikolaj Bjorner 32711790e8 bug fixes reported by Miguel
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-25 13:36:48 -07:00
Nikolaj Bjorner e507a6ccd1 adding incremental cubing from API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-28 09:06:17 -07:00
Nikolaj Bjorner ae9a6664d4 add cube mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-24 10:53:57 -07:00
Nikolaj Bjorner 651587ce01 merge with master branch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-19 09:39:22 -07:00
Nikolaj Bjorner 8ff1e070be add QF_DT
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-17 01:39:39 +02:00
Nikolaj Bjorner 7a977f0106 ensure that timeouts are distinguished from other cancel events #848
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-18 14:54:54 -07:00
Nikolaj Bjorner 2b82fd5d0c updated include directives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Nikolaj Bjorner b482dbd589 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 17:02:27 -07:00
Nikolaj Bjorner ce592d7716 add facility to add lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-12 19:44:02 -07:00
Dan Liew 4b517b96df [CMake] Move CMake files into their intended location so the
`contrib/cmake/bootstrap.py` script no longer needs to be executed.

The previous location of the CMake files was a compromise proposed
by @agurfinkel in #461. While this has served us well (allowing progress
to be made) over time limitations of this approach have appeared.

The main problem is that doing many git operations (e.g. pull, rebase)
means the CMake files don't get updated unless the user remembers to
run the script. This can lead to broken and confusing build system
behaviour.

This commit only does the file moving and necessary changes to
`.gitignore`. Other changes will be done in subsequent commits.
2017-06-12 11:59:00 +01:00
Nikolaj Bjorner af6ebbcd92 init search before returning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-11 13:08:05 -07:00
Nikolaj Bjorner c870b77366 fixes to lookahead
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-08 17:25:06 -07:00
Nikolaj Bjorner 19d4b0a97a resolve conflicts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-02 10:38:37 -07:00
Nikolaj Bjorner 4e65c13726 adding lookahead and lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-01 14:49:54 -07:00
Nikolaj Bjorner 7d245be4e1 enable exposing internal solver state on interrupted solvers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-30 17:33:27 -07:00
Nikolaj Bjorner 2de80b5ce9 add pb built in ops for logic ALL #1045
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-29 10:08:50 -07:00
Murphy Berzish 92755b0185 smt_setup framework, all hooks to theory_str are redirected to theory_seq 2017-05-02 17:16:35 -04:00
Nikolaj Bjorner 854bb2197f include recursive functions to models. Issue #898
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-08 21:41:24 -08:00
Nikolaj Bjorner e02160c674 expose bounds as vector expressions instead of containing ad-hoc expressions. Issue #911
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-24 11:07:40 -08:00
Christoph M. Wintersteiger 5682c43604 Merge pull request #881 from dwoos/tactic-labels
Thread labels through tactic system
2017-02-04 20:37:11 +00:00
Nikolaj Bjorner f015e3e4cc fix bug in propagation of parameters to combined solvers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-31 17:17:58 -08:00
Doug Woos 8196173e29 Introduce and use labels_vec 2017-01-30 15:50:34 -08:00
Doug Woos 5796e15088 Thread labels through tactic system 2017-01-27 11:07:13 -08:00
Nikolaj Bjorner 5cb21924ad ensure that FD logic understands pb from command context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-17 16:02:54 -08:00
Nikolaj Bjorner 024082a45f adding preferred sat, currently disabled, to wmax. Fixing issue #815
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-30 09:52:05 -08:00
Nikolaj Bjorner 51a4085910 check for logic in solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-04 15:19:11 +00:00
Nikolaj Bjorner f61600d1d8 fixing unsat core extraction for tactics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-02 14:14:55 +00:00
Nikolaj Bjorner 305e080239 enable unsat core extraction in nlsat_tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-01 17:57:28 +01:00
Nikolaj Bjorner 3714e520be fix performance bottlnecks: gc of literals walk through potentially huge watch-lists, avoid user-push/pop around calls to solver2tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-28 08:27:11 -07:00
Nikolaj Bjorner b1d673e3eb catch cancellation exceptions, return undef
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 16:34:26 -07:00
Nikolaj Bjorner 24fc19ed58 speed up consequence finding by avoiding local search whenver assumption level is reached during the initial phase
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 08:15:39 -07:00
Nikolaj Bjorner 4bd83724dd remove conflict on false disequality, introduced regression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-26 19:15:05 -07:00
Nikolaj Bjorner 461e88e34c additional robustness check for incremental sat solver core when it recieves interpreted constants, added PB equality to interface and special handling of equalities to adddress performance gap documented in #755
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-25 20:32:13 -07:00
Nikolaj Bjorner e4d2c5867a remove dead (and incorrect) code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-24 15:52:47 -07:00
Nikolaj Bjorner 8d2b70a5e2 better encodings for at-most-1, #755
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-10 23:46:03 -07:00
Nikolaj Bjorner 619cce0a52 add mutex preprocessing to maxsat, add parsing functions to C++ API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-07 12:42:08 -07:00
Nikolaj Bjorner f452895f5f add mutex pass
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-04 14:45:23 -07:00
Christoph M. Wintersteiger f54a7db108 Added debug traces. 2016-08-09 16:36:49 +01:00
Nikolaj Bjorner 491b3b34aa tune consequence finding. Factor solver pretty-printing as SMT-LIB into top-level
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-03 11:14:29 -07:00
Nikolaj Bjorner 7346098895 fix unsat core extraction code in smt_context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 11:22:34 -07:00
Nikolaj Bjorner 7d545d902d switch to specialized consequence generator in combined_solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-29 17:36:11 -07:00
Nikolaj Bjorner 8221a09659 fast path for antecedent extraction in smt_context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 16:49:19 -07:00
Nikolaj Bjorner 14f29e7265 add basic built-in consequence finding
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 11:20:17 -07:00
Nikolaj Bjorner b7de813c63 set solver on simplify command
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-27 15:35:44 -07:00
Nikolaj Bjorner 017165c474 fix bug with model completion and remove spurious std::cout
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 09:02:12 -07:00
Nikolaj Bjorner 67ea78a4a5 Add basic MARCO example
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 08:00:23 -07:00
Nikolaj Bjorner 914bf2ff3b extend constant folding for bit-vector overflow/underflow operators, #657
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 07:43:05 -07:00
Nikolaj Bjorner c72ed3e6b4 update core minimization code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-23 21:39:28 -07:00
Nikolaj Bjorner c7ff05cc78 enable core minimization with qsat in case it turns out to be useful
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-12 15:58:12 -07:00
Nikolaj Bjorner 9f5a117443 move mus to solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-10 16:24:14 -07:00
Nikolaj Bjorner ec565ae7a0 fixes to #596 and #592: use exponential step increments on integer problems, align int.to.str with canonizer and disequality checker
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-17 01:00:42 -07:00
Nikolaj Bjorner e29adbf304 fix issues #581: nested timeouts canceled each-other
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-30 11:18:34 -07:00
Nikolaj Bjorner 45fdb95f53 fix performance for model construction, recognize concats of values as a value for pre-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-23 17:23:57 -07:00
Nikolaj Bjorner 3d7eb12117 tracking use of assumptions in tactics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-09 21:33:08 -08:00
Nikolaj Bjorner 9743c188da add exception handling for making solver-1 discontinuation transparent, thanks to Martin, #497
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-08 17:00:12 -08:00
Nikolaj Bjorner 49d0e28621 allow parameters to overwrite logic, fixes bug report by Nuno
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-07 10:44:06 -08:00
Nikolaj Bjorner b352d43e50 fix bugs exposed by Chris' sequence unit tests. Improve diagnostics for reason-unknown in combined solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-28 08:50:13 -08:00
Nikolaj Bjorner 85d44c5d66 fix axioms for extract, add extensionality checking for shared variables, convert exceptions to unknown status per #419
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-18 11:09:41 +05:30
Nikolaj Bjorner 4132fc2d91 ensure limit children are safe for race conditions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 10:18:51 -08:00
Nikolaj Bjorner 96d1066c6a reworking cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 16:43:48 -08:00
Nikolaj Bjorner baee4225a7 reworking cancellation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 16:21:24 -08:00
Nikolaj Bjorner b4cb51cdb3 working on Forking/Serializing a z3 Solver #209
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-06 17:29:24 -08:00
Nikolaj Bjorner 7f517c625f have solver pretty print declarations, include also datatype declarations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-07 08:48:24 +02:00
Nikolaj Bjorner a3c43c34fb change default behavior of solver pretty printer to include declarations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-06 18:57:11 +02:00
Christoph M. Wintersteiger ca4a7ca74e style 2015-08-01 14:29:45 +01:00
Nikolaj Bjorner 4bc044c982 update header guards to be C++ style. Fixes issue #9
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07:00
Nikolaj Bjorner 949c21ca08 enable incremental sat for QF_BV
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-21 02:23:56 -07:00
Nikolaj Bjorner 52619b9dbb pull unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07:00
Christoph M. Wintersteiger 9b137d54d3 Bugfix and new examples for implicit assumptions in Z3_solver_assert_and_track. Thanks to Amir Ebrahimi for reporting this issue!
(See http://stackoverflow.com/questions/28558683/modeling-constraints-in-z3-and-unsat-core-cases)

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-18 16:25:27 +00:00
Nikolaj Bjorner e6725b2344 merge unstable into opt
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-26 12:12:24 -07:00
Nikolaj Bjorner 904ab4bf9e address race condition in cleanup methods
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-09-05 11:18:34 -07:00
Ken McMillan 51aa10821e fixed pop issue and interpolation proof mode issue 2014-08-26 13:46:53 -07:00
Nikolaj Bjorner 03979fd580 fix up pareto callback mechanism
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-05-13 12:48:17 -07:00
Nikolaj Bjorner 97dfb6d521 moving to rational coefficients
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-21 15:55:08 -08:00
Anh-Dung Phan 074e851d49 Display Fu Malik statistics 2013-11-15 12:58:11 -08:00
Nikolaj Bjorner b573b94f84 nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-08 21:59:38 -08:00
Leonardo de Moura 050ec0b760 Fix memout detected in nightly regressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-15 13:26:11 -08:00
Leonardo de Moura 13dda76ddb Removed dead code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-11 18:00:09 -08:00
Leonardo de Moura 8198e62cbd solver factories, cleanup solver API, simplified strategic solver, added combined solver
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-11 17:47:27 -08:00
Leonardo de Moura ffb7e26c75 removed front-end-params
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-02 10:05:29 -08:00
Leonardo de Moura f15de18c4a context params
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-01 22:53:55 -08:00
Leonardo de Moura 92acd6d4ee removed front_end_params from cmd_context
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-01 18:19:02 -08:00
Leonardo de Moura 29cf179364 more reorg
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-01 17:03:14 -08:00
Leonardo de Moura aa4fe775b1 fixed bug reported by Herman
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-27 17:18:38 -08:00
Leonardo de Moura 8d6a091083 fixed bugs found in regression tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-07 07:36:40 -08:00
Leonardo de Moura b70687acc9 cleanning solver initialization, and fixing named assertion support
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-02 16:35:08 -07:00
Leonardo de Moura e2f6a65aa2 added support for named assertions 2012-11-02 14:00:43 -07:00
Leonardo de Moura e1eb3ee8ee fixed bug in solver_na2as
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-02 11:36:59 -07:00
Leonardo de Moura 33c165490c fixed solver_na2as
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-02 09:43:07 -07:00
Leonardo de Moura d545f187f8 working on named assertions support
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-02 08:28:34 -07:00
Leonardo de Moura adb6d05805 fixed typo
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-01 14:43:02 -07:00
Leonardo de Moura 4c98b567e1 old_params ==> front_end_params. Isolated abstract solver interface
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-01 11:28:14 -07:00