Nikolaj Bjorner
fd49a0c89c
added facility to persist model transformations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-02 00:05:52 -05:00
Nikolaj Bjorner
caaf0ba33c
model-add/del
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-01 22:32:22 -05:00
Nikolaj Bjorner
3de8c193ea
implementing model updates
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-30 16:11:51 -05:00
Nikolaj Bjorner
c9f540b066
additional array functions exposed over API, ping #1223
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-19 11:08:48 -07:00
Nikolaj Bjorner
7f590b5419
gift for Nuno
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-17 10:27:58 -07:00
Nikolaj Bjorner
448cf8c31d
fix scope accounting for dom simplifier
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-17 10:14:26 -07:00
Nikolaj Bjorner
c1b243a8e3
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-07 19:24:30 +01:00
Nikolaj Bjorner
755ca46df6
adding bv_bounds tactic dominator style
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-06 12:15:41 +01:00
Nikolaj Bjorner
cb548404bc
bail out dominators after log number of steps
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-06 12:08:37 +01:00
Nikolaj Bjorner
6df628edc7
pin elements in expr2depth
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-06 11:45:29 +01:00
Nikolaj Bjorner
651587ce01
merge with master branch
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-19 09:39:22 -07:00
Nikolaj Bjorner
2955b0c2ef
removing more dependencies
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-26 03:05:34 -07:00
Nuno Lopes
000796c25c
micro-optimization in tactics' cleanup(): avoid dealloc+alloc traffic
2017-08-14 20:12:00 +01:00
Nikolaj Bjorner
2b82fd5d0c
updated include directives
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Nikolaj Bjorner
b19f94ae5b
make include paths uniformly use path relative to src. #534
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Nikolaj Bjorner
b482dbd589
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 17:02:27 -07: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
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
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
d3320f8b81
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-14 21:48:19 -07:00
Nikolaj Bjorner
8ac43c981a
use less memory #1078
2017-06-14 21:41:24 -07: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
7d245be4e1
enable exposing internal solver state on interrupted solvers
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-30 17:33:27 -07: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
899843b7cd
fix unhandled finite domain sort rewrite case. Issue #918
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-26 17:20:54 -08:00
Nikolaj Bjorner
8d18fd075e
remove sources for unused variable warnings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-21 09:54:45 -08:00
Nikolaj Bjorner
3778048eb4
add bounded-int and pb2bv solvers to fd_solver, use sorting networks for pb2bv rewriter when applicable, hoist to pb2bv_rewriter module and remove it from the pb2bv_tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-23 20:31:59 -07:00
Nikolaj Bjorner
881e82e3fa
remove legacy interface to dt2bv tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-18 23:04:17 -04:00
Nikolaj Bjorner
d060359f01
add fd solver for finite domain queries
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-18 22:34:34 -04:00
Nikolaj Bjorner
9e4450228e
adding unit test for enumeration types
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-17 14:52:37 -04:00
Nikolaj Bjorner
e3f0aff318
address ubuntu warning and add shortcuts for maxsat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-03 16:22:13 -07:00
Mikolas Janota
ec47a1df50
Adding bv preprocessing techniques.
2016-09-16 19:44:37 +01:00
Nikolaj Bjorner
d4539b8887
fix dt2bv transformation to only work with constants, issue #725
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-30 11:42:14 +08:00
Nikolaj Bjorner
5f5ef8b38d
adding support for distinct for dt2bv, re-entry harness for ~Context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-27 09:02:56 -07:00
Nikolaj Bjorner
a85c5f0fac
add handling of recognizers to enumeration types
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-24 17:29:17 -07:00
Nikolaj Bjorner
6bf446dfc2
add tactic to eliminate enumeration sorts in favor of bit-vectors
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-23 14:13:40 -07:00
Nikolaj Bjorner
083939ab0e
add tactic to eliminate enumeration sorts in favor of bit-vectors
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-23 14:11:21 -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
Christoph M. Wintersteiger
f8795f3522
Added term ITEs to bvarray2uf rewriter.
2016-05-09 14:16:51 +01:00
Christoph M. Wintersteiger
0597b579b1
Bugfixes for bvarray2uf conversion.
2016-04-07 19:10:31 +01: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
70f13ced33
make proto-model evaluation use model_evaluator instead of legacy evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-05 10:14:15 -08:00
Nuno Lopes
62e46aacd9
bv_bounds: make may_simplify more precise to skip exprs with just 1 bound expr
...
speedups up to 3x in selected benchmarks
2016-03-01 11:31:08 +00:00
Nikolaj Bjorner
4a15d756d7
uint64_t -> uint64 for cross platform
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-02-29 22:16:03 -08:00
Nuno Lopes
43202572ee
bv_bounds: switch from rational to uint64
...
this limits the analysis to 64-bit BVs, but gives a speedup of up to one order of magnitude
2016-02-29 17:23:54 +00:00
Nuno Lopes
c1eb1cc3f2
bv_bounds: improve perf of push/pop
2016-02-28 20:07:39 +00:00
Nuno Lopes
e7a360ca08
ctx_simplify: remove virtual push() method
2016-02-28 17:57:40 +00:00
Nuno Lopes
51687b2be7
bv_bounds: ensure (bvule x maxuint) is simplified to true
2016-02-28 10:56:48 +00:00
Nuno Lopes
97d6098d00
bv_bounds: make may_simplify() more aggressive for the common case of a single comparison
...
fix expr_has_bounds to handle cases like (bvadd (ite c t e) ...)
2016-02-25 19:41:01 +00:00