Nikolaj Bjorner
6dbfdf3e9c
Merge branch 'master' of https://github.com/z3prover/z3 into opt
2017-07-27 17:03:04 -07:00
Nikolaj Bjorner
49f88d9d90
fix uninitialized warning
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 12:52:10 -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
229fd3dc3e
[CMake] Fix dependencies for generating install_tactic.cpp
.
...
Previously CMake was not aware of which headers files the generation
of `install_tactic.cpp` depended on. Consequently this could result
in broken incremental builds if
* Existing headers that declared tactics/probes changed.
* New tactics/probes were added to new header files.
Now the `z3_add_component()` CMake function has been modifed to take an
optional `TACTIC_HEADERS` argument which allows the headers that declare
tactics/probes to be explicitly listed. The necessary component
declarations have been modified to declare their tactic/probe header
files.
With this information CMake will now regenerate `install_tactic.cpp`
correctly.
This required the `mk_install_tactic_cpp_internal()` function to be
changed to take a list of header files rather than a list of component
source directories. The two consumers (CMake and Python/Makefile build
systems) of this function have been modified to work with this change.
This partially fixes #1030 .
2017-06-21 23:03:48 +01: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
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
3989d238c0
fix bugs exposed in #677 . to_int(x) has the semantics that to_int(x) <= x, and to_int(x) is the largest integer satisfying this inequality. The encoding in purify_arith had it the other way x <= to_int(x) contrary to how to_int(x) is handled elsewhere. Another bug in theory_arith for mixed-integer linear case was also exposed. Fractional bounds on expressions of the form to_int(x), and more generally on integer rows were not rounded prior to internalization
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-13 20:32:18 -07:00
Nikolaj Bjorner
5b497b6249
reduce set of mainly verbose warnings raised by -Wmaybe-uninitialized and unused variable warnings from release mode builds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-22 20:25:47 -07:00
Nikolaj Bjorner
96e157e201
fix warnings for unused variables
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-17 13:54:22 -07:00
Nikolaj Bjorner
680c28d083
remove nnf conversion which breaks NRA property
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-20 16:34:04 -07:00
Nikolaj Bjorner
73e29c6ee6
fix regression warning on invalid case split strategy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-20 10:20:43 -07:00
Nikolaj Bjorner
92b5aac12a
adjusting new tactics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-20 10:13:23 -07:00
Dan Liew
971fd59fbb
Fix gcc build broken by f175f864ec
.
...
C++ enums (unless they are class enums) don't define their own
namespace.
2016-03-20 10:18:59 +00:00
Nikolaj Bjorner
20bbdfe31a
moving remaining qsat functionality over
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-19 15:35:26 -07:00
Nikolaj Bjorner
c4472ce717
include more qsat features
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-19 12:29:23 -07:00
Nikolaj Bjorner
f175f864ec
merge useful utilities from qsat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-19 12:01:44 -07:00
Nikolaj Bjorner
54ac71cada
ensure limit children are safe for race conditions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 10:23:56 -08:00
Nikolaj Bjorner
2a051719d8
cleanup deprecated critical sections, fix cancellation for par_or_else tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-12 09:43:00 -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
981f8226fe
moving to resource managed cancellation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 13:36:47 -08:00
Nikolaj Bjorner
035f2bb0da
disable unsound simplification of root objects, and incorrect evaluation of negative even roots
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-09 08:41:59 -08:00
Nikolaj Bjorner
d9b6623400
include rlimit in nlsat, include dedicated error message, for issue #216
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-29 09:16:46 -07: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
Christoph M. Wintersteiger
359c7e4da9
Removed unnecessary variables and added initialization to others to silence warnings.
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 14:47:26 +00:00
Leonardo de Moura
42898f3276
Fix bug reported by Florian <corzilius@cs.rwth-aachen.de>
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-06-21 10:31:11 -07:00
Leonardo de Moura
70baa3c8c9
Add nlsat.factor option. This is a workaround for the slow factorization procedure.
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-01-02 21:18:02 -08:00
Leonardo de Moura
a934c6813a
Fixed bug reported by Yan Peng from UBC
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-12 13:04:54 -08:00
Leonardo de Moura
fa53b1eb92
added module descriptions
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-02 13:15:56 -08:00
Leonardo de Moura
4f9442864a
auto generation of parameter helper
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-30 15:31:40 -08:00
Leonardo de Moura
cf28cbab0a
saved params work
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-29 17:19:12 -08:00
Leonardo de Moura
a274cac2a0
bindings --> api; and moved nlsat/sat/subpaving tactics
2012-10-31 13:25:36 -07:00
Leonardo de Moura
f57d4b1b19
reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-25 11:28:03 -07:00
Leonardo de Moura
69ce24a6ce
checkpoint
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-24 11:11:07 -07:00
Leonardo de Moura
9e299b88c4
reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-23 21:53:34 -07:00
Leonardo de Moura
9a84cba6c9
Reorganizing the code. Moved nlsat to its own directory.
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-20 15:48:18 -07:00