Nikolaj Bjorner
|
ed76da1458
|
Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat
|
2022-12-29 16:55:56 -08:00 |
|
Nikolaj Bjorner
|
10589d59ba
|
wip based on notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-29 16:55:46 -08:00 |
|
Clemens Eisenhofer
|
6f78c33558
|
Generalized variable elimination
|
2022-12-29 22:36:04 +01:00 |
|
Nikolaj Bjorner
|
ab9a9d2308
|
wip - more general ranges for add_mul_bound
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-28 14:09:51 -08:00 |
|
Clemens Eisenhofer
|
658877365c
|
Moved "easy part" of variable elimination to saturation.cpp
|
2022-12-28 15:07:03 +01:00 |
|
Nikolaj Bjorner
|
b4f5225ab3
|
outline
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-27 21:40:31 -08:00 |
|
Nikolaj Bjorner
|
6f8b3a997e
|
add max forbidden based on constant intervals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-27 20:49:17 -08:00 |
|
Nikolaj Bjorner
|
45e772b223
|
Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat
|
2022-12-27 20:20:59 -08:00 |
|
Nikolaj Bjorner
|
b52379fe88
|
update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-27 20:20:51 -08:00 |
|
Clemens Eisenhofer
|
28e9014401
|
Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat
|
2022-12-27 08:48:04 +01:00 |
|
Clemens Eisenhofer
|
4b8577eaa2
|
Reverted unintended changes
|
2022-12-27 08:47:27 +01:00 |
|
Clemens Eisenhofer
|
39a4bb025b
|
Propagate assignment if all bits are assigned and use better justification if any found
|
2022-12-27 08:44:55 +01:00 |
|
Nikolaj Bjorner
|
67b9ecbd97
|
missing disequality parity constraint
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-25 16:13:26 -08:00 |
|
Nikolaj Bjorner
|
4c6499f28b
|
updated notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-25 15:28:34 -08:00 |
|
Nikolaj Bjorner
|
be5b6f2839
|
add analysis
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-25 15:14:40 -08:00 |
|
Nikolaj Bjorner
|
403a126642
|
remove try_factor_equality1
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-25 11:37:55 -08:00 |
|
Clemens Eisenhofer
|
52eefb6e85
|
Some more commenting
|
2022-12-25 12:51:13 +01:00 |
|
Clemens Eisenhofer
|
74ec28201e
|
Merge remote-tracking branch 'Z3Prover/polysat' into polysat
|
2022-12-25 12:41:39 +01:00 |
|
Clemens Eisenhofer
|
674e309fa3
|
... and backtracking for bits
|
2022-12-25 12:23:49 +01:00 |
|
Nikolaj Bjorner
|
49a7f8446d
|
disable match_non_max and match_non_zero
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-24 15:19:37 -08:00 |
|
Nikolaj Bjorner
|
e978b81c7a
|
add review comment to bug location
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-24 12:40:47 -08:00 |
|
Nikolaj Bjorner
|
48cd05c725
|
introduce try_factor_equality2, disabled as it exposes new bugs. Old bug on bench15.smt2 exposed in debug mode
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-24 12:05:54 -08:00 |
|
Clemens Eisenhofer
|
173fb9c2bd
|
Bit-Propagation for most operations (Backtracking missing)
|
2022-12-24 16:37:53 +01:00 |
|
Nikolaj Bjorner
|
4e0604bc22
|
add hooks for multiplication overflow
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 15:48:03 -08:00 |
|
Nikolaj Bjorner
|
d18a2427a4
|
notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 14:57:56 -08:00 |
|
Nikolaj Bjorner
|
50cbe2659a
|
extract multiple bounds for upper/lower bound
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 14:52:41 -08:00 |
|
Nikolaj Bjorner
|
9275930f50
|
fix bug in add-overflow propagation, move to use viable to mind for bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 13:38:51 -08:00 |
|
Nikolaj Bjorner
|
9fefa0040f
|
added updated bounds propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 12:47:17 -08:00 |
|
Nikolaj Bjorner
|
6f8fb39bc9
|
added updated bounds propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-23 12:29:47 -08:00 |
|
Jakob Rath
|
fda93c97f5
|
Try bounds propagation for the example case
|
2022-12-23 18:15:40 +01:00 |
|
Jakob Rath
|
993996c8a5
|
Negate premise in lemma; fixes (or at least hides) the segfault
|
2022-12-23 17:18:10 +01:00 |
|
Jakob Rath
|
19e44e4f57
|
update tests
|
2022-12-23 11:44:10 +01:00 |
|
Jakob Rath
|
68b74ca6a7
|
parity debugging
|
2022-12-23 11:42:45 +01:00 |
|
Nikolaj Bjorner
|
1434c1117c
|
wip - initial stab at bounds propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-22 21:49:33 -08:00 |
|
Nikolaj Bjorner
|
ce5cbefc56
|
fix missing parity propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-22 17:54:40 -08:00 |
|
Nikolaj Bjorner
|
86589c2553
|
Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat
|
2022-12-22 12:10:31 -08:00 |
|
Nikolaj Bjorner
|
ed6f7ee9ff
|
adding addition overflow bounds propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-22 12:10:24 -08:00 |
|
Jakob Rath
|
f025d0ad63
|
Disable merging of p<q and p=q in lemmas for now (cf. test_band5)
|
2022-12-22 19:25:50 +01:00 |
|
Jakob Rath
|
fa0a481fc8
|
Fix verbose logs
|
2022-12-22 19:25:31 +01:00 |
|
Jakob Rath
|
0cfc0af7ee
|
no need to alloc sets
|
2022-12-22 18:55:18 +01:00 |
|
Jakob Rath
|
29a547e0b4
|
forbidden_intervals::match_max
|
2022-12-22 18:28:18 +01:00 |
|
Jakob Rath
|
8096e82101
|
remove unnecessary check
|
2022-12-22 18:22:10 +01:00 |
|
Jakob Rath
|
b42b027a40
|
Add stub for match_max
|
2022-12-22 17:47:33 +01:00 |
|
Jakob Rath
|
516eb55442
|
forbidden_intervals::match_non_max
|
2022-12-22 17:39:16 +01:00 |
|
Jakob Rath
|
3739372776
|
remove commented code
|
2022-12-22 17:38:17 +01:00 |
|
Jakob Rath
|
9207bb5d1e
|
Add test
|
2022-12-22 16:37:32 +01:00 |
|
Jakob Rath
|
e57bcdfeab
|
Strengthen forbidden_intervals::match_non_zero
|
2022-12-22 16:30:23 +01:00 |
|
Jakob Rath
|
21ea05b31c
|
Weaken evaluation for new constraints in viable lemma
|
2022-12-22 16:24:27 +01:00 |
|
Jakob Rath
|
be20c0d54e
|
Less allocation during lookup, remove unused argument
|
2022-12-22 15:09:18 +01:00 |
|
Jakob Rath
|
b5af2164f4
|
Add simplify_clause::try_remove_equations
|
2022-12-22 14:53:42 +01:00 |
|