3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-05 15:33:59 +00:00
Commit graph

1411 commits

Author SHA1 Message Date
Nikolaj Bjorner
5e2f7f7177 fixes top lookahead simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 20:22:31 -07:00
Dan Liew
d00892c9a6 [CMake] Fix dependencies for generating mem_initializer.cpp.
Previously CMake was not aware of which headers files the generation
of `mem_initializer.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declare memory initializers/finalizers change.
* New headers are added that declare memory initializers/finalizer.

Now the `z3_add_component()` CMake function has been modifed so that
it now takes an optional `MEMORY_INIT_FINALIZER_HEADERS` argument
which allows the headers that declare memory initializers/finalizers
to be explicitly listed.

With this information CMake will now regenerate `mem_initializer.cpp`
correctly.

This required the `mk_mem_initializer_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:56:53 +01:00
Dan Liew
6f48a145aa [CMake] Fix dependencies for generating gparams_register_modules.cpp.
Previously CMake was not aware of which headers files the generation
of `gparams_register_modules.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declared module description/parameters change.
* New headers are added that declare module description/parameters.
* `.pyg` files that generate header files that declare module
  description/parameters change

Now the `z3_add_component()` CMake function has been modifed so that

* All header files that are generated from `.pyg` files are added as
dependencies and are scanned from module description/parameter
declarations. This implicit dependency of `gparams_register_modules.cpp`
depending on other generated header files seems unnecessary complex. We
should revisit this design decision once the Python/Makefile build
system is deprecated.

* The function now takes an optional `EXTRA_REGISTER_MODULE_HEADERS`
argument which allows the headers that declare module
description/paramters to be explicitly listed.

With this information CMake will now regenerate `gparams_register_modules.cpp`
correctly.

This required the `mk_gparams_register_modules_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:56:46 +01:00
Arie Gurfinkel
372e8b3c49 expose iterator api of obj_hashtable 2017-06-20 21:07:38 -04:00
Arie Gurfinkel
f3019a3de9 api to accumulate stopwatches 2017-06-20 21:07:38 -04: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
19d4b0a97a resolve conflicts
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-02 10:38:37 -07:00
Nikolaj Bjorner
3ce82ea8ce merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-02 10:37:22 -07: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
e0a86ccc1a add lrb/chb and experiment with them
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-28 10:48:31 -07:00
Nikolaj Bjorner
c28f26c17d merge and update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-25 14:17:19 -07:00
Nikolaj Bjorner
e306287d7b 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>
2017-05-25 14:04:48 -07:00
Nikolaj Bjorner
d2b2aedef3 Merge branch 'dev' of https://github.com/nikolajbjorner/z3 2017-05-25 08:54:00 -07:00
Lev Nachmanson
73e919c002 test
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-24 17:31:17 -07:00
Nikolaj Bjorner
b18dc7d052 adding nra
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 17:24:36 -07:00
Nikolaj Bjorner
4726d32e2f 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>
2017-05-24 16:32:14 -07:00
Nikolaj Bjorner
7a809fe4f0 adding nra solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 14:56:59 -07:00
Nikolaj Bjorner
80bb084611 add missing initialization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 14:47:09 -07:00
Nikolaj Bjorner
d45c56da3f adding nra solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 14:44:16 -07:00
Nikolaj Bjorner
fc53c5b638 adding nra solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 14:41:02 -07:00
Lev Nachmanson
09530bb6bc adding some content to the new check_int_feasibility()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-24 10:12:42 -07:00
Nikolaj Bjorner
dcc6284557 adding constraints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-24 08:57:10 -07:00
Nikolaj Bjorner
b9ca8b435f nlsat integration
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 20:45:58 -07:00
Nikolaj Bjorner
e231f4bc87 adding more nlsat
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 18:50:18 -07:00
Lev Nachmanson
93a3c486b0 small fix in lar_solver.cpp
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-23 18:32:08 -07:00
Nikolaj Bjorner
8ecd8a2a52 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>
2017-05-23 18:07:58 -07:00
Nikolaj Bjorner
db54cab8b2 initial skeletons for nra solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 16:26:46 -07:00
Nikolaj Bjorner
f1ca1de408 initial skeletons for nra solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 16:12:46 -07:00
Lev Nachmanson
1f425824ff adding stub check_int_feasibility()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-23 15:46:53 -07:00
Nikolaj Bjorner
23ff580a67 get rid of timeb dependencies, pull request #1040
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 12:16:43 -07:00
Nikolaj Bjorner
2834fea9b3 fix x64 warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-23 08:58:21 -07:00
Nikolaj Bjorner
f698efa403 Merge branch 'master' of https://github.com/z3prover/z3 into opt 2017-05-22 12:59:36 -07:00
Nikolaj Bjorner
f90ae40480 Merge branch 'master' of https://github.com/NikolajBjorner/z3 into opt 2017-05-22 12:53:19 -07:00
Nikolaj Bjorner
71eb7e81b5 bug fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-22 12:52:53 -07:00
Lev Nachmanson
1b62592015 change in a comment
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-18 13:44:00 -07:00
Lev Nachmanson
21bddd94bf after merge with Z3Prover
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-18 13:28:32 -07:00
Lev Nachmanson
942f8f8c49 merge
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-18 13:18:16 -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
Lev Nachmanson
b92f0acae3 fix add_constraint and substitute_terms_in_linear_expression
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-18 10:56:50 -07:00
Lev Nachmanson
e9d9354885 add_constraint has got a body
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-17 19:00:33 -07:00
Lev Nachmanson
9a58eb63cb resurrect lp_tst in its own director lp
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-17 11:01:04 -07:00
Nikolaj Bjorner
4069e76ab0 remove unused column function field, #1021
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-16 21:27:43 -07:00
Lev Nachmanson
d5e06303ef add queries for integrality of vars
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-16 17:54:09 -07:00
Lev Nachmanson
7b433bee2b track which var is an integer
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-05-16 17:36:32 -07:00
Lev Nachmanson
06e1151ca0 add int_solver class
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-16 12:01:16 -07:00
Lev Nachmanson
4eec8cbadd introduce int_solver.h
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-05-15 15:32:31 -07:00
Nikolaj Bjorner
3290a933b5 remove spurious include file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-14 14:09:42 -07:00
Nikolaj Bjorner
a0efdc21c3 add missing locks around mpz operations that access object allocator. Use internal skolem constant for theory assumption to hide it from models
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-14 14:04:00 -07:00
Lev Nachmanson
07f2fd43bb Merge remote-tracking branch 'upstream/master' 2017-05-11 17:49:33 -07:00