3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-08 18:31:49 +00:00
Commit graph

6757 commits

Author SHA1 Message Date
Nikolaj Bjorner e0ac5bd585 Merge pull request #1013 from NikolajBjorner/master
Integrate new LRA solver capabilities by Lev Nachmanson. 

The LRA solver relies on a portfolio of Simplex implementations.
For large problems it resorts to revised Simplex with different search options. It uses doubles for large systems. For smaller problems it uses a Dual Simplex tableau representation that outperforms the scalable solver when many small calls are used. It uses infinite precision rationals by default. 
The theory_lra class provides the interface to the scalable Simplex solver.
2017-05-09 14:07:33 -07:00
Nikolaj Bjorner 2a63c56ae0 A faster and more scalable LRA solver by Lev Nachmanson. It is disabled in the initial merge pending a few bug fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 14:03:30 -07:00
Nikolaj Bjorner 911b24784a merge LRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 10:46:11 -07:00
Nikolaj Bjorner 085d31dca2 mpq/mpz features from LRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:18:59 -07:00
Nikolaj Bjorner 60725f5384 use vector fixes from LRA branch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:13:27 -07:00
Nikolaj Bjorner 42ea2d1ea5 LRA changes to rational
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 09:06:41 -07:00
Nikolaj Bjorner d8c3b273d3 adding benign initialization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-08 10:50:06 -07:00
Nikolaj Bjorner 579b914d78 add configuration per Dan Liew's comment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-08 10:02:09 -07:00
Nikolaj Bjorner 51e6d8a28d Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-08 09:55:03 -07:00
Nikolaj Bjorner 99474eb44a integrate Dan Liew's patch for language selection
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-08 09:46:40 -07:00
Nikolaj Bjorner 921d0309a4 Merge pull request #1010 from mtrberzi/warning-nits
Fix warnings in theory_str.cpp
2017-05-07 15:37:33 -07:00
Murphy Berzish 6b2a800c7f fix warnings: unused variables, string constants 2017-05-07 18:23:47 -04:00
Nikolaj Bjorner 3ae722025f relaxing condition for assumptions, add theory-assumption to skolem functions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-07 14:54:47 -07:00
Nikolaj Bjorner e02392c0e3 use skolem function to avoid exposing temporary variables in models
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-07 14:03:24 -07:00
Nikolaj Bjorner 82bdd26817 clean up some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-06 13:40:53 -04:00
Nikolaj Bjorner de69c42e4d Merge pull request #1007 from mtrberzi/formatting
Code formatting for theory_str
2017-05-05 19:42:32 -04:00
Murphy Berzish f904b033ad formatting theory_str.h 2017-05-05 19:29:53 -04:00
Murphy Berzish 21c8f4aae0 formatting theory_str.cpp 2017-05-05 19:26:15 -04:00
Nikolaj Bjorner 8eb26e25c2 add new files to cmakelist.txt files
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-05 17:03:03 -04:00
Nikolaj Bjorner a9fbad53a0 Merge pull request #907 from mtrberzi/release-1.0
theory_str for Z3 based on the Z3str2 framework
2017-05-05 16:55:43 -04:00
Murphy Berzish 7ddd43e16d first-class re.range support in theory_str 2017-05-05 15:29:58 -04:00
Murphy Berzish 75ba4d5a4d remove unneeded include 2017-05-05 14:54:36 -04:00
Murphy Berzish 8029b6b889 Merge branch 'upstream-master' into develop 2017-05-05 14:44:29 -04:00
Nikolaj Bjorner 7cb0237ab2 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-05 10:59:58 -04:00
Nikolaj Bjorner 7e1fae418a fix #1005, disable expansion of regular expression range to union as it degrades performance significantly
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-05 10:59:47 -04:00
Christoph M. Wintersteiger 79dcf03a42 Enabled C++11 in GCC and Clang 2017-05-05 15:01:10 +01:00
Christoph M. Wintersteiger 00ce3f8172 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-05 14:22:49 +01:00
Christoph M. Wintersteiger 0ebce66c57 Fixed bug with .NET keyfile path containing spaces. Fixes #1003. 2017-05-05 14:22:40 +01:00
Nikolaj Bjorner 9499fa62ac Merge pull request #1004 from delcypher/cmake_doxygen_fixes
[CMake] Doxygen fixes
2017-05-04 12:08:10 -07:00
Dan Liew 1db07f1189 [CMake] Remove BYPRODUCTS declaration for api_docs target.
This breaks the `clean` rule when using Ninja as the CMake
generator. Unfortunately this means `clean` doesn't try to
remove the generated documentation anymore when using Ninja.
2017-05-04 15:29:47 +01:00
Dan Liew 6261a5c27b Fix bug in mk_api_doc.py where the Z3 python package path would be
checked when building the Z3 python package documentation was disabled.
2017-05-04 15:28:20 +01:00
Murphy Berzish c569925676 Merge branch 'upstream-master' into develop 2017-05-03 20:12:11 -04:00
Nikolaj Bjorner a9d6ef68f0 Merge pull request #1002 from mtrberzi/obj_pair_set
add iterator accessors to obj_pair_set
2017-05-03 16:18:05 -07:00
Murphy Berzish c2b5e8cfda fix overlap detection internalization 2017-05-03 17:46:06 -04:00
Murphy Berzish ab4fbe40b6 cleanup 2017-05-03 17:45:56 -04:00
Murphy Berzish 41a242fab1 Merge branch 'upstream-master' into develop
Conflicts:
	src/smt/params/smt_params.h
	src/smt/params/smt_params_helper.pyg
	src/smt/smt_case_split_queue.cpp
	src/smt/smt_context.h
	src/smt/smt_setup.cpp
	src/smt/smt_setup.h
2017-05-03 17:03:13 -04:00
Murphy Berzish ede6d7bb2b add iterator accessors to obj_pair_set 2017-05-03 14:55:22 -04:00
Nikolaj Bjorner 1177be6391 add common utility to set up seq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 20:52:39 -07:00
Nikolaj Bjorner 52dfdedb9b Merge pull request #1000 from mtrberzi/theory_str-smt-setup
smt_setup for strings/sequences
2017-05-02 20:44:23 -07:00
Nikolaj Bjorner cc7a176c89 update to retain original behavior
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 19:32:03 -07:00
Nikolaj Bjorner eeb79e1c3c update to retain original behavior
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 19:30:54 -07:00
Nikolaj Bjorner 561a4331a8 add back use of all variables for tracking
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 16:36:05 -07:00
Nikolaj Bjorner cec6ced457 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-02 15:57:41 -07:00
Nikolaj Bjorner 21cda27f5e fix quadratic behavior of extract_assumptions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 15:57:31 -07:00
Nikolaj Bjorner 5b0286001b Merge pull request #999 from mtrberzi/theory-aware-branching
Theory-aware branching heuristic
2017-05-02 15:32:37 -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 ed0b2be618 fix bug in tracking levels of variables: levels are not cleared, only truth assignment
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-02 14:10:07 -07:00
Murphy Berzish a418f0c30b fix spacing 2017-05-02 15:52:35 -04:00
Murphy Berzish e6d527c5d5 remove trace code from theory_arith 2017-05-02 15:39:15 -04:00
Murphy Berzish 15cb2d7dba cleanup 2017-05-02 14:08:48 -04:00