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

18700 commits

Author SHA1 Message Date
Jakob Rath
ea9e5a47c7 -1 2022-11-30 15:24:35 +01:00
Nikolaj Bjorner
edb0fc394b rewrite some simplifiers 2022-11-30 23:15:32 +09:00
Jakob Rath
a8ecfd1313 unit test filter 2022-11-30 15:15:26 +01:00
Jakob Rath
7712068034 Remove old code
backjump_and_learn, learn_lemma
2022-11-30 15:14:25 +01:00
Jakob Rath
fdca0cd86f assign_verify: separate lemma production and activation 2022-11-30 15:00:58 +01:00
Jakob Rath
e338d42cff Allow creation of op_constraint lemmas without adding them 2022-11-30 14:57:14 +01:00
Jakob Rath
5069796755 Create clauses without adding them 2022-11-30 14:51:43 +01:00
Jakob Rath
29180e7d0b clause_builder::set_redundant 2022-11-30 14:50:53 +01:00
Jakob Rath
9b10733ebd assignment helpers 2022-11-30 14:50:14 +01:00
Jakob Rath
54a21e764d Remove old code
backjump_lemma, revert_decision, revert_bool_decision
2022-11-30 12:21:39 +01:00
Jakob Rath
b4b94c954b Try to produce an op_constraint lemma before invoking the fallback solver 2022-11-30 12:13:47 +01:00
Jakob Rath
2bc1b3a6dd Better exception recording 2022-11-30 11:50:23 +01:00
Jakob Rath
ceddb97bfd Disable asserts 2022-11-30 11:48:39 +01:00
Jakob Rath
032e7e0337 Remove not_op 2022-11-30 11:47:00 +01:00
Jakob Rath
7febcd47ec Forgot univariate shl 2022-11-30 11:38:16 +01:00
Nikolaj Bjorner
23c53c6820 fix build 2022-11-30 19:36:13 +09:00
Jakob Rath
4026ac9427 For r = p & q: "p = 0 => r = 0" is subsumed by "r <= p" 2022-11-30 11:35:36 +01:00
Nikolaj Bjorner
c1ff3d3192 wip - adding quasi macro detection 2022-11-30 13:46:00 +07:00
Nikolaj Bjorner
7b9dfb8e1e update dependencies for python build 2022-11-30 13:43:40 +07:00
Nikolaj Bjorner
b084821a0c wip - dependent expr simpliifer
- simplify iterator over current indices
- add more simplifiers used by asserted_formulas
- improve diagnostics printing
2022-11-30 13:41:40 +07:00
Nikolaj Bjorner
bec3acd146 consolidate freeze functionality into dependent_expr_state
rename size() to qtail() and introduce shortcuts
ensure tactic goals are not updated if they are in inconsistent state (because indices could be invalidated)
2022-11-30 08:35:29 +07:00
Jakob Rath
e6eea83b67 Missed some univariate constraints 2022-11-29 15:51:34 +01:00
Jakob Rath
5b6e383c88 Pretty-print powers of two 2022-11-29 15:49:58 +01:00
Clemens Eisenhofer
2b7fd152c4 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2022-11-29 14:54:49 +01:00
Nikolaj Bjorner
73a652cf4b some fixes to backtracking restore points in new solver 2022-11-29 16:42:42 +07:00
Nikolaj Bjorner
dd1ca8f6bd move qhead to attribute on the state instead of the simplifier,
- add sat.smt option to enable the new incremental core (it is not ready for mainstream consumption as cloning and other features are not implemented and it hasn't been tested in any detail yet).
- move "name" into attribute on simplifier so it can be reused for diagnostics by the seq-simplifier.
2022-11-29 16:36:02 +07:00
Jakob Rath
630276dbad Re-enable saturation 2022-11-29 10:00:25 +01:00
Jakob Rath
4aa04fa475 Lemma names 2022-11-28 19:13:38 +01:00
Jakob Rath
0c44391b9e Don't call assign_eh for internal constraints 2022-11-28 18:43:19 +01:00
Jakob Rath
c1f9a26f09 disable assertion for now 2022-11-28 18:15:24 +01:00
Jakob Rath
a3767b177c comment 2022-11-28 18:11:51 +01:00
Jakob Rath
c488a766b5 Unit testing fixes 2022-11-28 18:05:25 +01:00
Jakob Rath
3d79cddf33 Update saturation inferences 2022-11-28 18:02:18 +01:00
Jakob Rath
7468b2326c inequality 2022-11-28 18:00:17 +01:00
Jakob Rath
e6c9e13848 Disable copy/move of pdd_manager 2022-11-28 17:41:04 +01:00
Jakob Rath
77b4303b66 Don't jump over base level 2022-11-28 16:14:06 +01:00
Nikolaj Bjorner
ac023935a3 introduce sat-smt-solver
in an iteration of inc-sat-solver introduce sat-smt-solver to allow incremental pre-processing.
The aim is to allow incrementally handling formulas while at the same time retaining the main benefits of global in/pre-processing that change models. Previous incremental solving capabilities have been limited to use pre-processing that does not require model conversion.
2022-11-28 15:06:31 +07:00
Nikolaj Bjorner
82d9e4a4fc update goal2sat interface to use explicit initialization 2022-11-28 15:04:12 +07:00
Nikolaj Bjorner
500626e814 add sat-smt-preprocess module
self-contained pre-processing initialization
2022-11-28 12:13:00 +07:00
Nikolaj Bjorner
85f9c7eefa replace restore_size_trail by more generic restore_vector
other updates:
- change signature of advance_qhead to simplify call sites
- have model reconstruction replay work on a tail of dependent_expr state, while adding formulas to the tail.
2022-11-28 11:45:56 +07:00
Nikolaj Bjorner
6454014119 enable incrementality for model reconstruction 2022-11-25 15:28:38 +07:00
Nikolaj Bjorner
4e9f21c2a1 add rewriter and seq simplifiers 2022-11-25 15:16:14 +07:00
Nikolaj Bjorner
a152f9cfd6 port bit-blaster to simplifiers
inc_sat_solver uses bit-blaster, card2bv and max_bv_sharing.
By turning these into simplifiers it will be possible to remove
dependencies on tactics and goals in inc_sat_simplifier and instead use a modular and general incremental pre-processing infrastructure.
2022-11-25 13:37:16 +07:00
Nikolaj Bjorner
f0570fbc0e remove tactic exception dependency 2022-11-25 11:48:44 +07:00
Nikolaj Bjorner
e95b0bd2cd remove include of tactical 2022-11-25 11:47:38 +07:00
Nikolaj Bjorner
8184e7fe0a keep track of qhead 2022-11-25 11:42:16 +07:00
Nikolaj Bjorner
5af6e1a046 make max_bv_sharing a simplifier 2022-11-25 11:38:41 +07:00
Nikolaj Bjorner
db74e23de1 make card2bv a simplifier 2022-11-25 11:07:31 +07:00
Nikolaj Bjorner
cb789f6ca8 add arithmetical macros
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-24 23:44:35 +07:00
Nikolaj Bjorner
eb812e47be cleanup 2022-11-24 22:46:35 +07:00