3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-16 09:26:39 +00:00
Commit graph

409 commits

Author SHA1 Message Date
Nikolaj Bjorner
30b0d5ba13 Merge branch 'master' of https://github.com/z3prover/z3 2017-07-24 10:49:54 -07:00
Nikolaj Bjorner
08524a2d90 cleanup for warning message
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-01 11:47:17 -07:00
Nikolaj Bjorner
a28a8304b7 Dev (#56)
* introduce int_solver.h

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* add int_solver class

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* track which var is an integer

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add queries for integrality of vars

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* resurrect lp_tst in its own director lp

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add file

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add_constraint has got a body

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* fix add_constraint and substitute_terms_in_linear_expression

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* after merge with Z3Prover

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* adding stub check_int_feasibility()

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* Dev (#50)

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* small fix in lar_solver.cpp

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* adding some content to the new check_int_feasibility()

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* Dev (#51)

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding more nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* nlsat integration

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding constraints

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing initialization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* test

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* Dev (#53)

* change in a comment

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* Disabled debug output

* removing FOCI2 interface from interp

* remove foci reference from cmakelist.txt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding more nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* nlsat integration

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding constraints

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing initialization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* debugging nra

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* updates to nra_solver integration to call it directly from theory_lra instead of over lar_solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* n/a

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* integrate nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* tidy

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* preserve is_int flag

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* remove a debug printout

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* Dev (#54)

* change in a comment

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* Disabled debug output

* removing FOCI2 interface from interp

* remove foci reference from cmakelist.txt

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* initial skeletons for nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding more nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* nlsat integration

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding constraints

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add missing initialization

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* adding nra

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* debugging nra

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* updates to nra_solver integration to call it directly from theory_lra instead of over lar_solver

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* n/a

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* integrate nlsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* tidy

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* use integer test from lra solver, updated it to work on term variables

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix equality check in assume-eq

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fix model_is_int_feasible

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* untested gcd_test()

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* call fill_explanation_from_fixed_columns()

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add the call to pivot_fixed_vars_from_basis() to int_solver.cpp::check()

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* port more of theory_arith_int.h

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* use statistics of lar_solver by theory_lra.cpp

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* port more code to int_solver.cpp

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add an assert

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* more int porting

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* fix a bug in pivot_fixed_vars_from_basis

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* small change

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* implement find_inf_int_base_column()

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* catch unregistered vars in add_var_bound

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add a file

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* compile for vs2012

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* fix asserts in add_var_bound

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* fix the lp_solver init when workig on an mps file

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* towards int_solver::check()

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* change in int_solver::check() signature

Signed-off-by: Lev Nachmanson <levnach@microsoft.com>

* add handlers for lia moves

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* spacing

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-28 13:12:12 -07:00
Nikolaj Bjorner
244cbc2638 ensure that auxiliary PB booleans are recognized during rewriting. Fixes segementation fault #1113, but does not address performance issues with quantifiers and optimization combinations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-26 10:04:50 -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
Christoph M. Wintersteiger
596652ed36 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-05-31 18:35:52 +01:00
Christoph M. Wintersteiger
a7d5bb7b36 Tabs 2017-05-31 12:18:00 +01:00
Nikolaj Bjorner
edb164587f get rid of a simplifier dependency
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 10:12:32 -07:00
Nikolaj Bjorner
79a8e9aab0 fix build break #1029
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-18 12:09:51 -07:00
Nikolaj Bjorner
ceec81de0b simplify code, issue #1028
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-16 08:32:08 -07:00
Nikolaj Bjorner
7fab670719 fix regression, issue #1028
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-16 08:21:32 -07:00
Nikolaj Bjorner
d1cfc53495 fix for #1015
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-10 19:40:00 -07:00
Murphy Berzish
8029b6b889 Merge branch 'upstream-master' into develop 2017-05-05 14:44:29 -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
Murphy Berzish
ab4fbe40b6 cleanup 2017-05-03 17:45:56 -04:00
Murphy Berzish
d2ae94935e Merge branch 'upstream-master' into develop
Conflicts:
	src/ast/rewriter/seq_rewriter.cpp
	src/ast/seq_decl_plugin.h
2017-04-28 13:43:14 -04:00
Murphy Berzish
46ac718790 theory_str frontend changes 2017-04-26 17:24:05 -04:00
Murphy Berzish
06cd07e3c2 Merge branch 'theory-assumptions' into develop
Conflicts:
	src/smt/smt_context.cpp
	src/smt/smt_context.h
	src/smt/smt_theory.h
2017-04-22 13:31:43 -04:00
Nikolaj Bjorner
66e61b8a31 issues #963 #912 2017-04-17 03:06:38 -07:00
Nikolaj Bjorner
48638c6f1e fix for #975, add mask to ensure character encoding is unique within range of bits used for encoding
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-15 09:34:13 +07:00
Christoph M. Wintersteiger
b67c1c5501 Fixed valgrind warning. Fixes #972 2017-04-10 16:28:41 +01:00
Christoph M. Wintersteiger
27a1758857 Added rewriter.ignore_patterns_on_ground_qbody option to disable simplification of quantifiers that have their universals appear only in patterns, but otherwise have a ground body. 2017-04-07 21:19:20 +01:00
Murphy Berzish
a8935e99bc Merge branch 'upstream-master' into develop 2017-04-04 16:47:30 -04:00
Nikolaj Bjorner
582880346e add index option to 'eval' command for box objectives. Issue #955
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-31 09:22:56 -07:00
Christoph M. Wintersteiger
d10dec2218 Removed unused variable 2017-03-24 14:31:06 +00:00
Murphy Berzish
82d472a227 Merge remote-tracking branch 'upstream/master' into develop 2017-03-23 13:35:58 -04:00
Nikolaj Bjorner
e342b87921 Merge pull request #942 from mtrberzi/str-extract-semantics
alternate str.extract semantics in seq_rewriter
2017-03-21 10:48:06 -07:00
Murphy Berzish
6804c88b66 make seq.extract rewrite type-generic 2017-03-21 12:54:06 -04:00
Nikolaj Bjorner
ca4ae171ea remove unsound simplification in prefix #949
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-21 07:40:35 -06:00
Murphy Berzish
8021d63539 remove legacy str_decl_plugin and str_rewriter classes; these have been unified with sequence-compatible equivalents 2017-03-15 15:25:48 -04:00
Nikolaj Bjorner
05c267b8d8 make seq.at operations generic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-14 15:37:47 -07:00
Murphy Berzish
9659f08322 Merge branch 'str-extract-semantics' into develop 2017-03-14 14:14:53 -04:00
Murphy Berzish
34717a7b6e str.extract semantics fix 2017-03-14 14:14:46 -04:00
Murphy Berzish
94d5f242b8 Merge branch 'str-at-semantics' into develop 2017-03-13 14:40:40 -04:00
Murphy Berzish
5c9d7538a0 add alternate str.at semantics check in seq_rewriter
this rewrites to empty string if the index is negative or beyond the length of the string,
which is consistent with CVC4's semantics for this term
2017-03-13 14:39:12 -04:00
Nikolaj Bjorner
338193548b fixing build break, adding fixedpoint object to C++ API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-10 22:52:55 +01:00
Murphy Berzish
c198bc5863 fix re.range rewrite for theory_str 2017-03-10 13:13:45 -05:00
Nikolaj Bjorner
6f68355fbc Merge branch 'master' of https://github.com/Z3Prover/z3 2017-03-08 21:33:43 -08:00
Murphy Berzish
577cb19745 experimental rewrite of bitvector unit sequences to string constants 2017-03-06 13:58:03 -05:00
Murphy Berzish
ab71dea82d theory_str refactoring 2017-02-28 17:47:55 -05:00
Murphy Berzish
9ac0d098ac Merge remote-tracking branch 'upstream/master' into release-1.0 2017-02-28 12:45:04 -05:00
Murphy Berzish
725352234d refactoring theory_str 2017-02-27 13:22:56 -05:00
Nikolaj Bjorner
996c0f0666 fix type on exception message
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-25 16:14:50 -08:00
Murphy Berzish
179b0f7630 clean up todos theory_str 2017-02-21 19:52:27 -05:00
Murphy Berzish
235ea79043 Merge branch 'upstream-master' into release-1.0
Conflicts:
	src/cmd_context/check_logic.cpp
	src/cmd_context/cmd_context.cpp
	src/cmd_context/cmd_context.h
	src/smt/params/smt_params_helper.pyg
	src/smt/smt_context.cpp
2017-02-18 15:04:44 -05:00
Nikolaj Bjorner
b0dd3f3238 add recursive function graphs to model, adapt rewriter to bypass branches whose evaluation is redundant
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-16 13:58:12 -08:00
Murphy Berzish
a879b24011 add str.prefixof, str.suffixof in theory_str 2017-01-27 16:26:30 -05:00
Murphy Berzish
50e2273dbd substr bugfix 2017-01-20 17:39:32 -05:00
Nikolaj Bjorner
24eae3f6e0 fix crash with unary xor #870
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-01-15 12:06:56 -08:00
Nikolaj Bjorner
4bcf1bf2f6 fix debug build, unused variable warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-21 10:44:49 -08:00