Bruce Mitchener
76eb7b9ede
Use nullptr.
2018-02-12 14:05:55 +07:00
Bruce Mitchener
b7d1753843
Use override rather than virtual.
2018-02-09 21:19:27 +07:00
Nikolaj Bjorner
397cdfc608
avoid crash on nl
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-12-15 06:38:56 -08:00
Nikolaj Bjorner
e4b595d490
add solver pool abstraction for Spacer
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-28 16:10:20 -07:00
Nikolaj Bjorner
cab4e4b461
add feature to display benchmark in format seen by SAT solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-21 18:32:46 -05:00
Nikolaj Bjorner
5db349f6fa
raise an exception if trying proof generation for the SAT solver. Stackoverflow question https://stackoverflow.com/questions/45885321/check-function-while-qf-fd-logic-is-set-throws-accessviolationexception
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-27 23:52:27 -07:00
Nikolaj Bjorner
97e263299d
add logic 'SAT' as an alternative name to QF_FD some solverFor(SAT) works too. #1152
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-15 01:35:28 -07:00
Nikolaj Bjorner
f99048f3e7
rewrite to address some cases like #1203 , updates to division handling in NRA
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-12 13:24:54 -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
08524a2d90
cleanup for warning message
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-01 11:47:17 -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
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
d14f2af5ae
deal with subtraction that manages to sneak in. Issue #996
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-01 15:22:06 -07:00
Nikolaj Bjorner
67513a2cf5
fix detection of bounds under conjunctions. Issue #971
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-04-11 07:40:09 +08:00
Nikolaj Bjorner
40177f7bac
bypass combined solver when logic is set to QF_FD
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-01 08:05:04 -08:00
Nikolaj Bjorner
4d8d705b3f
bypass combined solver when logic is set to QF_BV or QF_FD
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-02-01 08:02:24 -08:00
Christoph M. Wintersteiger
b1f7c6ac97
eliminated unnecessary variable
2016-11-04 22:08:49 +00:00
Nikolaj Bjorner
ff75f88c4f
fix memory abuse in internalization in inc-sat-solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-31 22:25:58 +01:00
Nikolaj Bjorner
2475f3bff5
ensure that variables passed to consequence finding have bound constraints, if applicable. Even if those variables do not occur in the constraints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-28 07:41:27 -07:00
Christoph M. Wintersteiger
f1412d3f32
Bugfix for bouned_int2bv_solver
2016-10-28 14:23:01 +01:00
Christoph M. Wintersteiger
02e1bae9cb
whitespace
2016-10-28 14:22:27 +01:00
Nikolaj Bjorner
ca309341c3
fixing cancellation code paths for inc_sat_solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 22:07:46 -07:00
Nikolaj Bjorner
24fc19ed58
speed up consequence finding by avoiding local search whenver assumption level is reached during the initial phase
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-27 08:15:39 -07:00
Nikolaj Bjorner
461e88e34c
additional robustness check for incremental sat solver core when it recieves interpreted constants, added PB equality to interface and special handling of equalities to adddress performance gap documented in #755
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-25 20:32:13 -07:00
Nikolaj Bjorner
b82b53dc34
add handling of pseudo-boolean inequalities that use if-expressions over Booleans and arihmetic instead of built-in PB predicates
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-24 17:41:52 -07: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
d060359f01
add fd solver for finite domain queries
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-18 22:34:34 -04:00
Douglas B. Staple
725b1c56e5
Export default tactic for use via the SMT-LIB 2 interface.
2016-05-26 09:55:08 -03:00
Nikolaj Bjorner
87396bd648
fix issue #212 - don't use SAT solver core when division semantics is disabled
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-05 11:03:35 -07:00
Nikolaj Bjorner
cc5d719d9e
enable incremental bit-vector solving
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-09-01 09:48:35 -07:00
Nikolaj Bjorner
4bc044c982
update header guards to be C++ style. Fixes issue #9
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07:00
Nikolaj Bjorner
f3f85b5e0f
disable qf-ufnra tactic from default for testing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-23 14:05:49 +02:00
Nikolaj Bjorner
3a9f8276fe
hide new behavior until tested
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-21 02:25:02 -07:00
Nikolaj Bjorner
949c21ca08
enable incremental sat for QF_BV
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-21 02:23:56 -07:00
Christoph M. Wintersteiger
f2f6fc1994
Added QF_BVFP logic alias for QF_FPBV
2015-05-29 13:58:23 +01:00
Christoph M. Wintersteiger
98975e5187
Reordered the default qflia probe to be checked before the more permissive qfauflia.
2015-05-27 14:47:24 +01:00
Nikolaj Bjorner
839e3fbb7c
add ddnf tests, add facility to solve QF_NRA + QF_UF(and other theories) in joint solver to allow broader use of QF_NRA core
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-09 19:40:34 -07:00
Nikolaj Bjorner
52619b9dbb
pull unstable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07:00
Christoph M. Wintersteiger
e5c5c801c7
fixed botched merge
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-21 14:40:18 +00:00
Christoph M. Wintersteiger
d56d63e3e8
Merge branch 'fpa-api' of https://git01.codeplex.com/z3 into unstable
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
Conflicts:
src/tactic/portfolio/default_tactic.cpp
2015-01-21 14:25:31 +00:00
Christoph M. Wintersteiger
0746ede537
BV SLS: Final adjustments
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-20 15:59:25 +00:00
Christoph M. Wintersteiger
61ba7f5e09
Merge branch 'bvsls' of https://git01.codeplex.com/z3 into unstable
...
Conflicts:
src/tactic/portfolio/default_tactic.cpp
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-20 15:15:31 +00:00
Christoph M. Wintersteiger
d20c7bc9ee
Added is_qfaufbv_probe and is_qfauflia_probe.
...
Potential performance disruption for some users:
Changed default_tactic to call the respective tactics,
where previously they would have run the default 'smt'
tactic.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-19 18:19:43 +00:00
Christoph M. Wintersteiger
d4ecc3c1be
Disabled BV-SLS as default tactic in anticipation for integration
...
with the unstable branch.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-12 15:59:20 +00:00
Christoph M. Wintersteiger
5e5758bb25
More float -> fpa renaming
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 13:37:18 +00:00
Christoph M. Wintersteiger
208994e2dc
Renamed the default tactics form QF_FPA and QF_FPABV to QF_FP and QF_FPBV, in anticipation of the logic name QF_FPA to mean floats+arrays.
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-12-31 15:33:50 +00:00
Christoph M. Wintersteiger
96ab83d944
removed unnecessary changes for bvsls
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2014-03-26 13:08:13 +00:00
Andreas Froehlich
853ce522cc
plenty of new stuff
2014-03-09 15:42:51 +00:00
Andreas Froehlich
25378f7989
some extensions/modifications. versions added.
2014-02-18 14:01:47 +00:00
Andreas Froehlich
87c6fc66d6
sls tactic default
2014-02-11 17:44:59 +00:00