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

8878 commits

Author SHA1 Message Date
Nikolaj Bjorner f5775f265a fix python build script dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 09:21:33 -07:00
Nikolaj Bjorner 0708ecb543 dealing with compilers that don't take typename in non-template classes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 09:11:33 -07:00
Nikolaj Bjorner 2800049dd4 stale files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 08:49:49 -07:00
Nikolaj Bjorner 75eba45926
Merge pull request #1606 from NikolajBjorner/opt
This integrates several features and improvements to the SAT and finite domain solver.

- The SAT solver by default handle cardinality and PB constraints using a custom plugin that operates directly on cardinality and PB constraints.
- A parallel mode is available for select theories, including QF_BV. By setting parallel.enable=true Z3 will spawn a number of worker threads proportional to the number of available CPU cores to apply cube and conquer solving on the goal.
- A "cube" interface is exposed over the solver API. 
- Model conversion is first class over the textual API, such that subgoals created from running a solver can be passed in text files and a model for the original formula can be recreated from the result.
- This has also led to changes in how models are tracked over tactic subgoals. The API for extracting models from apply_result have been replaced.
- An optional mode handles xor constraints using a custom xor propagator. It is off by default and its value not demonstrated.
- The SAT solver includes new inprocessing technques that are available during simplification. It performs asymmetric tautology elimination by default, and one can turn on more powerful inprocessing techniques (known as ACCE, ABCE, CCE). Asymmetric branching also uses features introduced in Lingeling by exploiting binary implication graphs.

- A breaking change to the API is that parsers for SMT-LIB2 formulas return a vector of formulas as opposed to a conjunction of formulas. The vector of formulas correspond to the set of "assert" instructions in the SMT-LIB input.
2018-05-23 08:47:08 -07:00
Nikolaj Bjorner c963f6f2df merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-23 08:02:16 -07:00
Nikolaj Bjorner b5100b5b6a Merge branch 'master' of https://github.com/z3prover/z3 2018-05-22 20:02:16 -07:00
Nikolaj Bjorner 363d7aad2a fix bug reported in #1637
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 20:02:08 -07:00
Nikolaj Bjorner 50c93d1ad4 merge with 4.7.1
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 17:10:36 -07:00
Nikolaj Bjorner 87ae679db6 delay dereferencing justification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 17:03:35 -07:00
Nikolaj Bjorner f2aae7cffa release notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 16:59:11 -07:00
Nikolaj Bjorner 3b1b82bef0 bumping version number by 1 for release tagging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-22 10:19:38 -07:00
Nikolaj Bjorner c390b72e42
Merge pull request #1635 from danielschemmel/cmake-cpp11
Use CMake's own mechanism for selecting language version
2018-05-21 08:46:01 -07:00
Daniel Schemmel 7467368266
Use CMake's own mechanism for selecting language version if CMake version is new enough 2018-05-21 07:35:43 +02:00
Nikolaj Bjorner 6938c76950
Merge pull request #1630 from danielschemmel/warnings
Fix GCC Warnings
2018-05-20 10:24:05 -07:00
Daniel Schemmel 78087483ca
Add missing include
The code should not have compiled previously, as smt::context was only forward declared at this point.
2018-05-20 15:34:01 +02:00
Daniel Schemmel 9c5a0ee810
Remove unnecessary (and confusing) parantheses around variable name in its declaration.
Also fixes GCC warning [-Wparentheses].
2018-05-20 15:34:01 +02:00
Nikolaj Bjorner 470e49afc1
Merge pull request #1631 from JoranHonig/master
Parallel python example
2018-05-19 11:08:23 -07:00
Joran Honig e32dfad81e Add comments 2018-05-19 11:16:20 +02:00
Joran Honig 7d51353b8b Implement parallel python example 2018-05-19 11:13:53 +02:00
Daniel Schemmel f02d031d11
As of GCC8, the throw by value, catch by reference idiom is enforced via -Wcatch-value 2018-05-19 04:39:36 +02:00
Daniel Schemmel 5134c16833
NULL-initialize pointers to help GCC static analyzer Fixes: variable may be used uninitialized 2018-05-19 03:45:05 +02:00
Daniel Schemmel 1cc4a4ccc5
remove unused constructor that would construct lar_constraint in an partly initialized state. Fixes: variable may be used uninitialized 2018-05-19 02:56:46 +02:00
Nikolaj Bjorner ad973d5c6d Merge branch 'master' of https://github.com/z3prover/z3 2018-05-18 14:31:16 -07:00
Nikolaj Bjorner 4b3483ec6e Merge branch 'master' of https://github.com/z3prover/z3 2018-05-18 14:30:35 -07:00
Nikolaj Bjorner d462ed3f00 fix #1621
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-18 14:30:27 -07:00
Nikolaj Bjorner 8302360321 fix #1625
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-18 14:24:12 -07:00
Nikolaj Bjorner 925867dc3e fix #1621
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-18 14:14:00 -07:00
Nikolaj Bjorner e5b14ab682 fix #1625
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-18 14:03:32 -07:00
Nikolaj Bjorner 2c71640503
Merge pull request #1624 from sb98052/master
Link in Big_int via num package
2018-05-17 20:58:30 -07:00
Nikolaj Bjorner dfeb4b5235 updated sat state
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-17 16:45:12 -07:00
Sapan Bhatia c198b12743 Big_int is no longer a part of OCaml's standard library and must be
included via the num package: https://github.com/ocaml/num
2018-05-15 04:55:57 +05:30
Nikolaj Bjorner 1e143971c3 tune for unit test, delay initialize re-solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-13 11:49:33 -07:00
Nikolaj Bjorner a6829ea9d0 Merge branch 'master' of https://github.com/z3prover/z3 2018-05-13 05:40:56 -07:00
Nikolaj Bjorner f2bee7f16a fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-12 10:03:20 -07:00
Nikolaj Bjorner 9e2625e629 add support for core extraction in parallel mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-12 07:49:11 +02:00
Nikolaj Bjorner 618d394ab5 unreferenced variables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-10 09:41:12 +01:00
Nikolaj Bjorner c151ae98f8 fix osx build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-09 18:20:37 +01:00
Nikolaj Bjorner 2aedaf315a fix removal bug, tune all-interval usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-09 16:32:38 +01:00
Nikolaj Bjorner ad571510f3 disable slow validation code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-09 10:49:32 +01:00
Nikolaj Bjorner 75ae58f49e fix parenthesis
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-09 09:25:01 +01:00
Nikolaj Bjorner 41072e3125 use __builtin_prefetch for clang/gcc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-08 19:09:59 +01:00
Nikolaj Bjorner 53976d0ddf
Merge pull request #1613 from corrodedHash/master
Fixed Segfault when failing to load datalog file
2018-05-08 18:55:35 +01:00
corrodedHash d097d90731 Fixed Segfault when failing to load datalog file 2018-05-08 19:26:14 +02:00
Nikolaj Bjorner bc3719f436
Merge pull request #1612 from danielschemmel/gcc8
`lp::permutation_matrix::values` attempts an incorrect conversion
2018-05-08 15:49:22 +01:00
Daniel Schemmel 2d5dd80238
The Permutation Matrix' values function attempted an incorrect conversion.
This causes compilation with GCC 8 to fail. I suspect it worked previously due to SFINAE.
2018-05-07 23:33:40 +02:00
Nikolaj Bjorner ad6e128cab fix if-def
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-07 17:04:02 +01:00
Nikolaj Bjorner 13b54f379c fix ema
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-05 13:58:47 +02:00
Nikolaj Bjorner 43403fafcd adding ema
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-03 13:23:59 -07:00
Nikolaj Bjorner 502d0e37dd
Merge pull request #1611 from Z3Prover/revert-1610-cv/encoding
Revert "Specify encoding of source files in mk_util.py"
2018-05-03 12:00:03 -07:00
Nikolaj Bjorner 888699548d
Revert "Specify encoding of source files in mk_util.py" 2018-05-03 11:59:49 -07:00