3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00
Commit graph

7706 commits

Author SHA1 Message Date
Nikolaj Bjorner
27ad1813b7 Merge pull request #1126 from delcypher/travis_ci_initial_implementation
[TravisCI] Implement TravisCI build and testing infrastructure for Linux
2017-07-01 11:17:47 -07:00
Dan Liew
8310fed528 [TravisCI] Implement TravisCI build and testing infrastructure for Linux
The Linux builds rely on Docker (using Ubuntu 16.04LTS and Ubuntu
14.04LTS) to build and test Z3 so that builds are easily reproducible.

A build status button has been added to `README.md` so that it is
easy to see the current build status.

More documentation can be found in `contrib/ci/README.md`.

This implementation currently tests 13 different configurations. If
build times become too long we can remove some of them.

Although it would be nice to test macOS builds that requires
significantly more work so I have left this as future work.
2017-07-01 11:51:30 +01:00
Nikolaj Bjorner
be4b0ffe69 fix unsoundness bug instroduced when fixing #1125
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-30 19:36:38 -07:00
Nikolaj Bjorner
c44c8284bd use worklist algorithm to avoid stack overflow #1125
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-30 18:10:36 -07:00
Nikolaj Bjorner
9b631f982b n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-30 17:48:04 -07:00
Nikolaj Bjorner
bcf0ee7709 n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-29 18:53:58 -07:00
Nikolaj Bjorner
7580644d15 n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-29 08:11:27 -07:00
Nikolaj Bjorner
085c18a92a add pb to local search
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-28 20:29:13 -07:00
Nikolaj Bjorner
5c83dfee06 n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-28 18:04:08 -07:00
Nikolaj Bjorner
e176c4ba9a rename to ba_solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-28 17:54:16 -07:00
Nikolaj Bjorner
6fad478a18 reorg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-28 17:46:29 -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
Christoph M. Wintersteiger
1f29cebd4d Fixed backwards compatibility problem in maxsat example 2017-06-28 14:44:41 +00:00
Christoph M. Wintersteiger
1a59123819 Fixed x86/x64 issues in theory_str 2017-06-28 12:49:10 +01:00
Nikolaj Bjorner
6f4c873b29 debugging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-27 13:18:20 -07:00
Nikolaj Bjorner
ac519f5656 Merge pull request #1119 from levnach/master
fix run of lp_solver for mps files
2017-06-27 11:49:14 -07:00
Lev Nachmanson
4d0fda81df fix run of lp_solver for mps files
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-06-27 11:45:29 -07:00
Nikolaj Bjorner
94416bea52 fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-27 09:07:55 -07:00
Nikolaj Bjorner
475b5c70c8 Merge pull request #1117 from levnach/master
fix maybe non initialized warning
2017-06-26 17:13:14 -07:00
Lev Nachmanson
dfe15adf7e fix maybe non initialized warning
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-06-26 16:32:44 -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
Nikolaj Bjorner
7db1847f51 fix bitrot in maxsat example reference management #1116
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-26 09:36:53 -07:00
Nikolaj Bjorner
404db5759a Merge pull request #1115 from delcypher/cmake_maxsat_example
[CMake] Teach CMake to build the `maxsat` example
2017-06-26 08:19:51 -07:00
Christoph M. Wintersteiger
fe781132b3 Merge pull request #1114 from delcypher/python_api_example_fixes
Fix Python API examples
2017-06-26 13:03:56 +01:00
Dan Liew
4d6cbd3788 [CMake] Teach CMake to build the maxsat example as an external
project. The project can be built by building the new `c_maxsat_example`
target.
2017-06-26 11:58:51 +01:00
Dan Liew
896aae5606 Fix Python API examples so they work with Python 3 as well as Python 2. 2017-06-26 11:31:08 +01:00
Dan Liew
849eb389e6 [CMake] Add missing python example files.
We have to flatten the hierarchy when copying across so that all
Python examples have the `z3` directory in their directory.
2017-06-26 11:30:59 +01:00
Nikolaj Bjorner
66f0de6785 added in-processing features to card/pb
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-25 16:26:47 -07:00
Nikolaj Bjorner
bfd1bbc136 Merge pull request #1111 from delcypher/fix_cxx_api_exceptions_gcc_4_8
Unbreak Z3 C++ API exception support for GCC < 5.0.
2017-06-25 16:10:23 -07:00
Dan Liew
42e0f8f9ce Unbreak Z3 C++ API exception support for GCC < 5.0. This was broken
by 0b1d564509 .

Older versions of GCC do not define `__cpp_exceptions` which caused
exceptions to not be raised leading to unexpected failures. To fix
this also check the `__EXCEPTIONS` macro which is used by older GCC
versions.

Also `#undef` the `Z3_THROW` macro at the end of the header file
because this is an implementation detail that we don't want to leak
to clients.
2017-06-25 23:03:39 +01:00
Christoph M. Wintersteiger
2fceac04d4 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-06-25 22:19:54 +01:00
Christoph M. Wintersteiger
c395516058 Adjusted rlimit increments in theory_arith to avoid non-termination issues 2017-06-25 22:19:42 +01:00
Christoph M. Wintersteiger
ffbf19d944 Merge branch 'master' of https://github.com/wintersteiger/z3 2017-06-25 20:46:14 +01:00
Christoph M. Wintersteiger
ad7aff2334 Added rlimit increments in theory_arith to avoid non-termination issues via F*. 2017-06-25 20:45:56 +01:00
Nikolaj Bjorner
c3d29e75ef adding in-processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-24 18:27:32 -07:00
Nikolaj Bjorner
33d8b9b798 Merge pull request #1110 from delcypher/cmake_2_8_12_fixes
[CMake] CMake 2.8.12 fixes
2017-06-24 09:45:25 -07:00
Dan Liew
80c0c4f663 [CMake] Fix detection of git description and hash for CMake 2.8.12 2017-06-24 15:15:27 +01:00
Dan Liew
3229bedb36 [CMake] Unbreak the configure step for CMake 2.8.12 2017-06-24 14:41:33 +01:00
Dan Liew
489077a3eb [CMake] Remove use of INSTALL_PREFIX argument to
`configure_package_config_file()`. This argument wasn't available
until CMake 3.1 and we don't appear to be really using it anyway.
2017-06-24 14:16:48 +01:00
Dan Liew
5a8205cb0c [CMake] Unbreak detection of pthreads for CMake versions < 3.4 2017-06-24 14:05:25 +01:00
Dan Liew
ae8a089e25 [CMake] Fix missing sanitization in z3_add_cxx_flag flag() function
which caused CMake 2.8.12 to hit an error when handling the `-std=c++11`
flag.
2017-06-24 13:47:51 +01:00
Nikolaj Bjorner
1631a68981 make the option soup dependencies more user-friendly, #1109
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:57:50 -07:00
Nikolaj Bjorner
1681419052 adding change notes to release notes for a future release
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:50:33 -07:00
Nikolaj Bjorner
9d1852343c add separate get-objectives command #1107
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:34:38 -07:00
Nikolaj Bjorner
fb84ba8c34 updates and fixes to copying and cardinalities
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 14:00:33 -07:00
Nikolaj Bjorner
e3ec7e7d05 Merge branch 'master' of https://github.com/z3prover/z3 2017-06-23 11:34:18 -07:00
Nikolaj Bjorner
cd4bb5beaf another fix for #1101
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 11:34:10 -07:00
Nikolaj Bjorner
42d0d2944c Merge pull request #1105 from agurfinkel/dl_fixes
Minor bug fixes in datalog processing
2017-06-23 08:41:32 -07:00
Christoph M. Wintersteiger
ab355c2ef9 Merge pull request #1104 from agurfinkel/cmake_fix
[CMake] typos in cmake
2017-06-23 15:48:43 +01:00
Arie Gurfinkel
c7fbab0c11 propagate rule names during xform 2017-06-23 09:38:04 -04:00