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
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
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
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
Christoph M. Wintersteiger
27a1758857
Added rewriter.ignore_patterns_on_ground_qbody option to disable simplification of quantifiers that have their universals appear only in patterns, but otherwise have a ground body.
2017-04-07 21:19:20 +01:00
Nikolaj Bjorner
70bb92d016
remove nested booleans during pre-processing. issue #837
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 05:16:31 +01:00
Nikolaj Bjorner
ff46a925a2
bail out on failure to properly project. issue #837
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 04:25:05 +01:00
Nikolaj Bjorner
20790c46ee
bail out on failure to properly project
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 04:23:07 +01:00
Nikolaj Bjorner
fe10f2d244
address #835
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 07:51:16 +01:00
Nikolaj Bjorner
b66d457b19
move arithmetical mbp functionality to model_based_opt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-26 16:12:14 -07:00
Nikolaj Bjorner
7fc294d329
move arithmetical mbp functionality to model_based_opt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-26 14:30:35 -07:00
Nikolaj Bjorner
017165c474
fix bug with model completion and remove spurious std::cout
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 09:02:12 -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
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
9c099d6b1b
fix mb maximization logic, so far not accessible
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-20 16:39:03 -07:00
Nikolaj Bjorner
c7ff05cc78
enable core minimization with qsat in case it turns out to be useful
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-12 15:58:12 -07:00
Nikolaj Bjorner
9f5a117443
move mus to solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-10 16:24:14 -07:00
Nikolaj Bjorner
c20b391cf7
reduce warnings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-23 14:32:51 -07:00
Nikolaj Bjorner
c725fe7698
tune lra optimization
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-22 17:03:29 -07:00
Nikolaj Bjorner
339cd6e537
mbo
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-20 13:45:50 -07:00
Nikolaj Bjorner
1aa3fdab8a
remove min/max, use qmax; disable cancellation during model evaluation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-19 13:04:20 -07:00
Nikolaj Bjorner
40f8e16273
removing warnings for unused variables, #579
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-17 14:00:30 -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
a8fca8f77e
remove unused private fields
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-15 20:28:46 -07:00
Nikolaj Bjorner
42726171b5
add limit checks in Grobner. Issue #599
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-15 11:34:48 -07:00
Nikolaj Bjorner
5b31f54501
max/min
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-05 14:11:13 -07:00
Nikolaj Bjorner
044e08a114
adding unit tests for qe_arith/mbo
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-04 11:17:09 -07:00
Nikolaj Bjorner
e29adbf304
fix issues #581 : nested timeouts canceled each-other
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-30 11:18:34 -07:00
Nikolaj Bjorner
2428bf18f1
add model correction
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-29 19:08:10 -07:00
Nikolaj Bjorner
c75fd02c95
qsat-opt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-28 21:31:16 -07:00
Nikolaj Bjorner
68c7d64d00
adding model-based opt facility
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-27 11:18:20 -07:00
Nikolaj Bjorner
a1aa166ef5
adding local optimization to qsat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-26 17:15:24 -07:00
Nikolaj Bjorner
c3f4124a9f
trace down recent exposed regression in goal2sat, incorporate Scott's suggestion on making vector<std::string inaccessible
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-18 14:50:10 -07:00
Nikolaj Bjorner
cc6f72aba7
fix handing of ite conditions that have to be included in projection, thanks to bug report by Zak
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-10 01:48:35 +02:00
Arie Gurfinkel
4e7b6b6586
proposed fix to compare
2016-03-23 19:20:57 -04:00
Arie Gurfinkel
ee125b4fe3
extend model with the value of a fresh variable
2016-03-23 19:07:50 -04:00
Nikolaj Bjorner
ec681d7565
some of Arie's fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-23 10:19:16 -07:00
Nikolaj Bjorner
fd6fe87c5d
enable qe-lite for UFNIA benchmarks
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-22 15:41:21 -07:00
Nikolaj Bjorner
72ec6dc8e1
remove debug code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-21 16:58:48 -07:00
Nikolaj Bjorner
5e737641b7
remove qe-lite pass in quant_tatics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-21 16:57:30 -07:00
Nikolaj Bjorner
3dc2028925
adding min/max
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-21 09:20:57 -07:00
Nikolaj Bjorner
1a5449c3d4
enable new NRA solver for nra benchmarks
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-20 12:35:29 -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
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
d614fedde2
more merges with qsat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-19 12:41:41 -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
8c538fd3f0
setting partial equivalence priority lower so that it doesn't intefere with inlining (partial fix to the fact that inlining will remove such implicit relations). Using short-circuit negation in qe to avoid redundant double negations in intermediary results
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-02-21 10:31:13 -08:00