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
Nikolaj Bjorner
b0247d8201
add exception handling for rewriter exceptions
2022-11-24 22:20:25 +07:00
Nikolaj Bjorner
1815812889
fix typo in name of tactic
2022-11-24 22:05:30 +07:00
Nikolaj Bjorner
a64c7c5d19
add incremental version of value propagate
2022-11-24 21:52:55 +07:00
Jakob Rath
1b1e310919
fix release build
2022-11-24 14:02:47 +01:00
Nikolaj Bjorner
decb3d3907
stashed header file
2022-11-24 19:51:26 +07:00
Nikolaj Bjorner
3479129582
remove unused structs
2022-11-24 19:47:26 +07:00
Nikolaj Bjorner
caf204ab95
hoist macro-replacer as shared utility, update eliminate-predicates and model reconstruction
2022-11-24 19:45:51 +07:00
Nikolaj Bjorner
5fe2ff84e9
change functionality to not track ite terms for congruence closure
2022-11-24 19:45:16 +07:00