3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00
Commit graph

245 commits

Author SHA1 Message Date
Christoph M. Wintersteiger
3e960eadd2 (Re-)added option to disable lemma deletion in the smt_context. 2017-08-23 12:14:19 +01:00
Nikolaj Bjorner
2b82fd5d0c updated include directives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Arie Gurfinkel
ba6594b241 extra smt params used by spacer 2017-07-31 17:01:47 -04: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
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
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
6f2cd4817b ensure arith.reflect has default true
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 14:09:45 -07:00
Nikolaj Bjorner
af4346f16a expose arith reflection, get rid of long m_manager attribute in asserted fromulas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 10:04:29 -07: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
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
Murphy Berzish
92755b0185 smt_setup framework, all hooks to theory_str are redirected to theory_seq 2017-05-02 17:16:35 -04:00
Murphy Berzish
15cb2d7dba cleanup 2017-05-02 14:08:48 -04:00
Murphy Berzish
a8d069ba46 refactor: add asserts, use case split strategy param 2017-05-02 13:06:08 -04:00
Murphy Berzish
6cd1f877b8 params for theory aware branching 2017-05-02 10:39:32 -04:00
Murphy Berzish
f655e1976e add params for theory case split 2017-05-01 10:18:38 -04:00
Murphy Berzish
6fececaad9 fix str/seq parameter config 2017-04-24 21:47:31 -04:00
Murphy Berzish
3fe49137d0 fix trace typos 2017-04-24 19:25:35 -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
Christoph M. Wintersteiger
71da36f85c Added core.extend_nonlocal_patterns parameter to improve unsat cores. 2017-04-18 15:13:11 +01:00
Murphy Berzish
a7b21dc5d5 refactor: aligned external/internal names for str.strong_arrangements option 2017-02-23 16:00:05 -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
Murphy Berzish
09ac5645e4 parameterize theory-aware activity of overlap 2017-01-22 23:21:20 -05:00
Christoph M. Wintersteiger
adf8072eaa Added option to limit the distance of unsat core extension through patterns. 2017-01-21 12:28:37 +00:00
Murphy Berzish
e459617c39 experimental finite model finding WIP, first successful run 2017-01-16 18:04:03 -05:00
Murphy Berzish
3459c1993e experimental theory-aware branching code 2017-01-10 15:38:33 -05:00
Christoph M. Wintersteiger
384468bc99 Added option to extend unsat cores with literals that (potentially) provide quantifier instances. 2017-01-10 20:22:20 +00:00
Murphy Berzish
2dc9b486d3 theory_str binary search heuristic WIP 2016-12-22 19:17:42 -05:00
Murphy Berzish
94762d276d add string constant cache to theory_str and associated param 2016-12-18 18:47:38 -05:00
Murphy Berzish
dd8cd8199b theory_str refcount debug messages and beginning theory case split 2016-12-16 14:37:34 -05:00
Murphy Berzish
27a2c20c1c add more parameters for theory_str 2016-12-13 19:38:40 -05:00
Murphy Berzish
bced5828f7 theory_str parameters 2016-12-13 17:20:58 -05:00
Murphy Berzish
f5bc17b864 theory_str params module, WIP 2016-12-13 16:12:57 -05:00
Nikolaj Bjorner
ea601dd403 fix and coallesce clique functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-19 03:55:48 -08:00
Nikolaj Bjorner
e9db934f1a improving perf of mutex finding, revert semantics of 0 timeout to no-timeout. Issue #791
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-17 04:26:17 +02:00
Fabian Wolff
6eaab00e83 Fix spelling errors 2016-07-09 11:46:43 +02:00
Nikolaj Bjorner
98a34ca51f Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-23 21:39:34 -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
Christoph M. Wintersteiger
8bde7b8a4c Added facilities for dumping smt_params for debugging purposes 2016-06-23 19:31:00 +01:00
Nikolaj Bjorner
67397bf71e enable logic parameter update to configure SMTLIB logic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-01 09:48:24 -08:00
Nikolaj Bjorner
7f51ecab37 enable logic parameter update to configure SMTLIB logic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-01 09:26:14 -08:00
Nikolaj Bjorner
908f09a9df update logic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-01 08:46:43 -08:00
Nuno Lopes
d642d5fe4c API: add smt.logic parameter to enable setting the logic through the API
currently only Z3_solver_set_params() is supported
logic has to be set before solver first usage or before solver reset
2016-02-25 09:47:51 +00:00
Nikolaj Bjorner
a6e1c70eab fix documentation/default bug. #445
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-02-10 15:02:22 +00:00
Dan Liew
ea900db337 Explicitly state what the units of the timeout parameter for the "smt"
module are.
2016-02-10 11:35:15 +00:00
Nikolaj Bjorner
315dc80eb0 toggle default for bv2int decision procedure support to avoid confusing users. Issue #301
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-10 15:09:52 -05:00
Christoph M. Wintersteiger
6749c19ab1 Merge branch 'static_analysis' of https://github.com/daniel-j-h/z3
# Conflicts:
#	src/ast/ast.h
#	src/interp/iz3foci.cpp
#	src/muz/duality/duality_dl_interface.cpp
#	src/util/hwf.h
2015-10-19 15:14:45 +01:00
Nikolaj Bjorner
9b3e242990 adding rlimit resource limit facility to provide platform and architecture independent method for canceling activities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-28 13:37:59 -07:00
Christoph M. Wintersteiger
05d9e188f8 Reactivated smt.max_conflicts option.
Partially fixes #216.
2015-09-17 14:08:04 +01:00
Nikolaj Bjorner
db24cb8087 add core validation option to directly validate cores using the context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-08-10 10:56:07 +02: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