3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-15 00:46:38 +00:00
Commit graph

166 commits

Author SHA1 Message Date
Nikolaj Bjorner
1dca6402fb move model and proof converters to self-contained module 2022-11-03 05:23:01 -07:00
Bruce Mitchener
5d0dea05aa
Remove empty leaf destructors. (#6211) 2022-07-30 10:07:03 +01:00
Nikolaj Bjorner
fc77345bec breaking change. Enforce append semantics everywhere for parameter updates #5744
Replace semantics doesn't work with assumptions made elsewhere in code.
The remedy is to apply append (override) semantics for parameter changes.
2021-12-30 19:11:14 -08:00
Nikolaj Bjorner
9f2b18cac5 add tactic name
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 13:37:57 -08:00
Nikolaj Bjorner
4a6083836a call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
Nikolaj Bjorner
0ce1c34d81 fix #5065 - regression solving str.from_int equations now that it isn't injective any longer
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-03-02 12:59:48 -08:00
Nikolaj Bjorner
4455f6caf8 move to get_sort as method, add opt_lns pass, disable xor simplification unless configured, fix perf bug in model converter update trail 2021-02-02 03:58:19 -08:00
Nikolaj Bjorner
d0e20e44ff booyah
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Nikolaj Bjorner
6ca039c855 fix #3919
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-11 12:31:38 -07:00
Nikolaj Bjorner
eacde16b3e fix #3199
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 23:55:44 -07:00
Nikolaj Bjorner
51e459d02b fix #3294
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-14 10:46:03 -07:00
Nikolaj Bjorner
cc26d49060 preparations for dealing with #2596
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-12 17:44:52 -07:00
Nikolaj Bjorner
b02c698284 align variable names with dimacs input
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-08 16:52:10 -08:00
Nikolaj Bjorner
cf4bf7b591 more consistent use of parallel mode when enabled, takes care of example test from #1898 that didn't trigger parallel mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-02 18:44:53 -05:00
Nikolaj Bjorner
d00ffdda82 strengthen filter for specialized tactic conditions, add flag to disable hnf to lp_params
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-07-15 22:35:47 -07:00
Nikolaj Bjorner
f525f43e43 merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-30 09:30:43 -07:00
Christoph M. Wintersteiger
e13f3d92af Updated CMakelists.txt 2018-04-24 15:01:05 +01:00
Christoph M. Wintersteiger
a1d870f19f Added tactic for QF_FPLRA 2018-04-24 12:43:11 +01:00
Christoph M. Wintersteiger
b373bf4252 Bugfixes for fpa2bv_converter. Fixes #1564. 2018-04-08 21:51:27 +01:00
Nikolaj Bjorner
c513f3ca09 merge with master
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-25 14:57:01 -07:00
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
2f218b0bdc remove also cores as arguments to tactics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-19 12:18:50 -08:00
Nikolaj Bjorner
4bbece6616 re-organize proof and model converters to be associated with goals instead of external
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-18 16:33:54 -08:00
Nikolaj Bjorner
df6b1a707e remove proof_converter from tactic application, removing nlsat_tactic
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-17 23:32:29 -08:00
Christoph M. Wintersteiger
ff42c44f37 Debug traces 2017-09-15 11:48:25 +01:00
Christoph M. Wintersteiger
d82afcc48c Whitespace 2017-09-15 11:37:32 +01: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
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
fe10f2d244 address #835
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-10 07:51:16 +01:00
Nikolaj Bjorner
4cae91b096 spacing, unit test
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-10-17 08:07:23 -04:00
Christoph M. Wintersteiger
009af4455d Refactored and fixed model conversion for fpa2bv conversion of unspecified values via theory_fpa. 2016-10-15 18:35:39 +02:00
Christoph M. Wintersteiger
bc257211d6 Whitespace 2016-10-15 18:35:39 +02:00
Christoph M. Wintersteiger
bd187e0989 Bugfix for fp.min/fp.max in fpa2bv converter; hide BV UFs from FP models.
Fixes #642
2016-06-09 17:51:31 +01:00
Christoph M. Wintersteiger
617e941015 fp2bv refactoring 2016-05-23 18:10:17 +01:00
Christoph M. Wintersteiger
d4bc8ebb70 FP to BV translation of UFs refactored. 2016-05-22 18:16:57 +01:00
Christoph M. Wintersteiger
fe3f8466b6 Partial support for fpa2bv translation in complex types. 2016-05-21 18:08:48 +01:00
Christoph M. Wintersteiger
9a10d2dcee bugfix for fpa2bv model converter 2016-05-21 12:19:03 +01:00
Christoph M. Wintersteiger
2bbca192e3 member init order 2016-05-20 20:16:45 +01:00
Christoph M. Wintersteiger
4ed2b8a0f9 Bugfix for unspecified FP model values. 2016-05-20 20:15:08 +01:00
Christoph M. Wintersteiger
1cc8146aba Bugfixes for FP UFs and arrays. 2016-05-20 19:53:57 +01:00
Christoph M. Wintersteiger
df81ab72f5 Bug and performance fixes for FP UFs. 2016-05-17 16:35:45 +01:00
Christoph M. Wintersteiger
1724811e1b qffp tactic cleaned up to be in line with the default behavior of other tactics. 2016-03-30 15:23:46 +01:00
Christoph M. Wintersteiger
cc04fdbd70 Added eager ackermannization to QF_FP, so that small numbers of unspecified operators are eliminated upfront. 2016-03-17 17:52:26 +00:00
Christoph M. Wintersteiger
cdc8e1303a Bugfix for fp.to_*_unspecified.
Fixes #507
2016-03-16 16:16:29 +00:00
Christoph M. Wintersteiger
99d7a47f82 Bugfixes for unspecified results from fp.to_* (models are still incomplete).
Relates to #507
2016-03-15 21:45:54 +00:00
Christoph M. Wintersteiger
9dfc2bc61e Fixed memory leaks in fpa2bv converter.
Fixes #480
2016-03-05 16:47:08 +00:00
Christoph M. Wintersteiger
fedc6d4754 Fixed memory leak in fpa2bv tactic. 2016-03-05 12:54:36 +00:00
Mikolas Janota
c2edf2c5bf Merge remote-tracking branch 'upstream/master' into lackr 2016-01-25 13:04:46 +00:00