Jakob Rath
01af25ca02
Remove backjump state from conflict
2022-11-14 14:33:19 +01:00
Nikolaj Bjorner
3d2bf13577
streamline statistics, fix bug in updating goals
2022-11-13 20:30:00 -08:00
Nikolaj Bjorner
ce6cfeaa68
fix bug in euf-completion relating to missed normalization
2022-11-13 18:01:17 -08:00
Nikolaj Bjorner
3fa81d6527
bug fixes to elim-uncnstr2 tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-13 13:25:19 -08:00
Nikolaj Bjorner
38cde14e08
wip missing updates
2022-11-13 12:10:43 -08:00
Nikolaj Bjorner
196788a091
bug fix for equality solving
2022-11-13 12:09:56 -08:00
Nikolaj Bjorner
ce76e3138d
streamlining expr-inverter code
2022-11-13 11:48:32 -08:00
Nikolaj Bjorner
3d570aaa0a
add missing process_eq
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-12 18:43:57 -08:00
Nikolaj Bjorner
0b83732b82
missing override specifier
2022-11-12 18:35:41 -08:00
Nikolaj Bjorner
343603f643
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-12 18:34:04 -08:00
Nikolaj Bjorner
e33e66212c
propagate values should not flatten and/or
...
also, elim_uncstr should only be disabled on recursive functions
2022-11-12 18:03:47 -08:00
Nikolaj Bjorner
f4e17ecc65
add logging and diagnostics
2022-11-12 18:03:47 -08:00
Nikolaj Bjorner
9d09064ad0
add comments to elim_unconstrained and remove unused function
2022-11-12 18:01:38 -08:00
Nikolaj Bjorner
efbe0a6554
wip - updated version of elim_uncstr_tactic
...
- remove reduce_invertible. It is subsumed by reduce_uncstr(2)
- introduce a simplifier for reduce_unconstrained. It uses reference counting to deal with inefficiency bug of legacy reduce_uncstr. It decomposes theory plugins into expr_inverter.
reduce_invertible is a tactic used in most built-in scenarios. It is useful for removing subterms that can be eliminated using "cheap" quantifier elimination. Specifically variables that occur only once can be removed in many cases by computing an expression that represents the effect computing a value for the eliminated occurrence.
The theory plugins for variable elimination are very partial and should be augmented by extensions, esp. for the case of bit-vectors where the invertibility conditions are thoroughly documented by Niemetz and Preiner.
2022-11-12 17:56:45 -08:00
Jakob Rath
406696f0a3
Remove unused code
2022-11-11 10:25:49 +01:00
Nikolaj Bjorner
689af3b4df
add comments to elim_unconstr_tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-10 16:42:09 -08:00
Jakob Rath
fc773ef19e
Remove old file
2022-11-10 14:42:55 +01:00
Jakob Rath
d3f70c0fb8
Rename: explain -> superposition
2022-11-10 14:42:13 +01:00
Nikolaj Bjorner
27f8b8d13a
inline definition in header file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-09 09:55:05 -08:00
Nikolaj Bjorner
a98502b62f
weaken assertion, remove dependency on hash_compare in unittest for hashtables
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-09 09:28:49 -08:00
Nikolaj Bjorner
15be80c954
remove dependency on hash_compare
2022-11-09 09:06:34 -08:00
Jakob Rath
4b146a61ff
minor
2022-11-09 17:00:27 +01:00
Jakob Rath
abc4cc5295
Simplify boolean propagation level
2022-11-09 16:59:51 +01:00
Jakob Rath
27d65df70b
Use correct level for pvar propagations (v := val)
2022-11-09 16:58:34 +01:00
Jakob Rath
c08866dcec
Disable simplify_clause::try_recognize_bailout for now
2022-11-09 14:30:33 +01:00
Jakob Rath
596a53c14b
Fix axioms
2022-11-09 12:03:27 +01:00
Nikolaj Bjorner
8da13ae24a
add statistics to verbose output of asserted formulas
2022-11-08 18:37:30 -08:00
Nikolaj Bjorner
9a656772b4
fix #6446
2022-11-08 18:37:16 -08:00
Nikolaj Bjorner
4d86d73942
disable also tests for Windows x86, does not work with CI pipeline
2022-11-08 17:15:59 -08:00
Nikolaj Bjorner
ff68df3451
update output of z3 doc
2022-11-08 16:10:50 -08:00
Nikolaj Bjorner
254f7b97ef
cleanup state to clear model trail during calls.
2022-11-08 15:56:10 -08:00
Nikolaj Bjorner
823cd23ecc
building x64 windows tests during ci is too slow, skipping tests
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-08 15:37:56 -08:00
Nikolaj Bjorner
3faca52c40
re-enable new solve_eqs with bug fixes
2022-11-08 14:17:17 -08:00
Nikolaj Bjorner
9ef78fcfa7
revert new solve-eqs
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-08 13:57:58 -08:00
Nikolaj Bjorner
3a37cfca30
switch to solve_eqs2 tactic
2022-11-08 12:23:36 -08:00
Nikolaj Bjorner
f769e2f1f6
have bool rewriter use flat_and_or, and integrate hoist rewriter
2022-11-08 12:21:50 -08:00
Nikolaj Bjorner
238ea0a264
add shorthands for concatentation
2022-11-08 12:21:25 -08:00
Nikolaj Bjorner
3a4b8e2334
add rewrite rules to bv-rewriter
2022-11-08 12:20:51 -08:00
Nikolaj Bjorner
a34701471f
clean up hoist rewriter
2022-11-08 12:20:25 -08:00
Nikolaj Bjorner
ab36f86843
add handler for reporting statistics
2022-11-08 12:19:48 -08:00
Nikolaj Bjorner
8afec86fe8
add option for flat_and_or
2022-11-08 12:19:27 -08:00
Nikolaj Bjorner
10fb71cf93
better error description for configuring restart
2022-11-08 12:18:45 -08:00
Jakob Rath
89a2700e5f
Print table of unit test results
2022-11-08 17:17:02 +01:00
Jakob Rath
05ddac5ddc
Allow disabling log messages
2022-11-08 17:15:56 +01:00
Jakob Rath
1d805807e9
Allow setting a default debug action
...
Helps avoiding user interaction when running a batch of unit tests.
2022-11-08 17:13:36 +01:00
Jakob Rath
eaf38abf17
Normalize to 0 < 0 instead of 1 <= 0
2022-11-07 15:32:34 +01:00
Jakob Rath
e7c77a22ab
Dedup quot_rem and lshr too
2022-11-07 15:25:05 +01:00
Jakob Rath
2953b1c093
Dedup op constraints
2022-11-07 15:02:48 +01:00
Jakob Rath
89acd96a89
All constraints have bvars now
2022-11-07 14:14:36 +01:00
Jakob Rath
586ffdf402
Remove unnecessary argument
2022-11-07 14:04:28 +01:00