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

7701 commits

Author SHA1 Message Date
Nikolaj Bjorner
5e8a4b98d4 Merge pull request #1099 from levnach/master
add a template instantination
2017-06-22 10:35:28 -07:00
Lev Nachmanson
2a5f1d6e93 add a template instantination
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-06-22 10:32:35 -07:00
Nikolaj Bjorner
9ebe980b44 cleaning up lookahead
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-22 07:42:44 -07:00
Christoph M. Wintersteiger
0008aefe40 Merge pull request #1096 from delcypher/cmake_fix_macos_rpath_warning
[CMake] Fix CMake warning about CMP0042 on macOS
2017-06-22 12:30:48 +01:00
Dan Liew
ed038c2a10 [CMake] Fix CMake warning about CMP0042 on macOS 2017-06-22 09:42:22 +01:00
Nikolaj Bjorner
5e2f7f7177 fixes top lookahead simplification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 20:22:31 -07:00
Nikolaj Bjorner
77ffa9f32f Merge pull request #1095 from agurfinkel/mev_fix
model_evaluator fix
2017-06-21 20:17:44 -07:00
Arie Gurfinkel
972ab6298c (mev) only reduce function interpretation 2017-06-21 22:59:52 -04:00
Nikolaj Bjorner
2d49119d2a add note to Context documentation about scoped uses of contexts #1077 2017-06-21 18:56:16 -07:00
Arie Gurfinkel
493a3a6312 (mev) call expand_value only at the end
There is no need to expand array values throughout evaluation.
They are expanded during array equality checking (if requested), and
can be expanded at the very end of evaluation (if needed).
2017-06-21 20:58:10 -04:00
Arie Gurfinkel
d5ca902bf6 (mev) bug fix in expanding array equalities
The stores were processed in the wrong order so that

  (store (store a x y) x u)

was reduced to

  (store a x y)

instead of

  (store a x u)
2017-06-21 20:58:10 -04:00
Arie Gurfinkel
e62e563e2d (mev) renamed variable to clarify that it is unused 2017-06-21 20:58:10 -04:00
Nikolaj Bjorner
1fee5fd94e Merge pull request #1094 from delcypher/cmake_fix_generated_cpp_deps
[WIP][CMake] Fix broken regeneration of some .cpp files
2017-06-21 17:47:41 -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
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
Nikolaj Bjorner
5f93b9a081 add N-ary clause reward heuristic based on discussions with Heule
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 10:30:30 -07:00
Nikolaj Bjorner
b516f22549 refine test for non-fd to be more inclusive while addressing #1092
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 08:01:03 -07:00
Nikolaj Bjorner
a3ee785923 disable dt2bv for quantified variables as enum2bv does not handle them. #1092
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 07:29:21 -07:00
Nikolaj Bjorner
a9990e3a0b Merge pull request #1091 from agurfinkel/dl
preserve rule names during dl transforms
2017-06-20 21:31:21 -05:00
Arie Gurfinkel
af28057980 preserve dl rule names during xforms 2017-06-20 22:23:55 -04:00
Arie Gurfinkel
50f794c4f5 api for accessing dl_rule name 2017-06-20 22:23:55 -04:00
Arie Gurfinkel
7840f6cead typo in a comment 2017-06-20 22:23:55 -04:00
Nikolaj Bjorner
4791d84722 Merge pull request #1090 from agurfinkel/qelite
small improvements to qe_lite
2017-06-20 21:06:11 -05:00
Arie Gurfinkel
ef62621f50 make qe_lite prefer simpler definitions 2017-06-20 21:51:08 -04:00
Arie Gurfinkel
9f73359a86 improve comments 2017-06-20 21:50:35 -04:00
Arie Gurfinkel
ac6ca4d334 factored out is_variable_proc to a header file 2017-06-20 21:34:49 -04:00
Nikolaj Bjorner
42e7d29df3 Merge pull request #1089 from agurfinkel/fixes
Fixes
2017-06-20 18:28:01 -07:00
Arie Gurfinkel
625874e66f remove debug code 2017-06-20 21:07:38 -04: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
Arie Gurfinkel
6eced8836d expose iterators in expr_map 2017-06-20 21:07:38 -04:00
Arie Gurfinkel
e9100854b9 ensure that variable names are properly quoted 2017-06-20 21:07:38 -04:00
Arie Gurfinkel
69a3e984aa add is_hypothesis() method 2017-06-20 21:07:38 -04:00
Nikolaj Bjorner
e48e7ef7be fix assertion, start addressing #1087 by using size_t 2017-06-20 14:38:58 -07:00
Nikolaj Bjorner
0ef14acf2e fix build break
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-20 14:25:56 -07:00
Nikolaj Bjorner
0fa6274a65 Fix bug #1079, integrality testing seems to have been wrong
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-20 14:18:43 -07:00
Christoph M. Wintersteiger
78e8e8b893 Kick CI 2017-06-20 18:06:18 +01:00
Christoph M. Wintersteiger
237e6dcd3f Kick CI 2017-06-20 17:21:24 +01:00
Christoph M. Wintersteiger
ee2fc41626 Kick CI 2017-06-20 15:17:49 +01:00
Christoph M. Wintersteiger
a0b25147d9 Fix for the fix for #1062. 2017-06-20 14:48:03 +01:00
Christoph M. Wintersteiger
e9258731e4 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-06-20 14:39:26 +01:00
Christoph M. Wintersteiger
ab21caf55f Reverted fix for quoted echo strings when smtlib2_compliant=false. Kindly reported by Armael Gueneau. Fixes #1062. 2017-06-20 14:39:22 +01:00
Christoph M. Wintersteiger
054e139c0d Whitespace 2017-06-20 14:37:26 +01:00
Christoph M. Wintersteiger
7b97688302 Whitespace, typo. 2017-06-20 14:36:40 +01:00
Nikolaj Bjorner
c6fbe38f78 disable anti-exploration by default
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-19 23:56:50 -05:00
Nikolaj Bjorner
907899debe Merge branch 'master' of https://github.com/z3prover/z3 2017-06-19 18:24:45 -05:00
Nikolaj Bjorner
f375016a11 disable tweak to seq until there are cycles to test further
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-19 18:23:27 -05:00
Nikolaj Bjorner
894c60bdf9 fix bug in qe-lite reported in #1086: bookkeeping of unconstrained variables only works for quantifier-free formulas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-19 18:22:30 -05:00
Christoph M. Wintersteiger
b27a4a3593 Merge pull request #1084 from dennis714/master
small typo
2017-06-19 12:00:17 +01:00