Nikolaj Bjorner
|
f8a3e428ff
|
wip
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-29 19:30:14 -08:00 |
|
Nikolaj Bjorner
|
96341d7f0a
|
wip try_add_mul_bound2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-29 18:31:39 -08:00 |
|
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
|
b52379fe88
|
update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-27 20:20:51 -08: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 |
|
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 |
|
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
|
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
|
ed6f7ee9ff
|
adding addition overflow bounds propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-22 12:10:24 -08:00 |
|
Nikolaj Bjorner
|
0a75585073
|
revamp parity propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-20 17:45:33 -08:00 |
|
Nikolaj Bjorner
|
ca855fbad3
|
redoing parity lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-20 15:46:25 -08:00 |
|
Nikolaj Bjorner
|
a8d401864b
|
review
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-20 12:46:15 -08:00 |
|
Nikolaj Bjorner
|
30bbb5399f
|
add stub
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-18 22:02:42 -08:00 |
|
Nikolaj Bjorner
|
1c884c8d72
|
allow multiple lemmas during processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-18 19:03:28 -08:00 |
|
Nikolaj Bjorner
|
8c775f55a1
|
adding stub for non-overflow lemma (disabled as not seen to be of use)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-18 12:26:30 -08:00 |
|
Nikolaj Bjorner
|
3c035daaa6
|
fix missing parity propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-17 19:08:40 -08:00 |
|
Nikolaj Bjorner
|
b581cbf062
|
add lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-17 18:25:21 -08:00 |
|
Nikolaj Bjorner
|
a5f12e9d57
|
add parity constraint for disequality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-12 19:40:19 -08:00 |
|
Nikolaj Bjorner
|
5a27ae6b53
|
disable tangent lemma, which appears to be counter-productive
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-11 12:56:21 -08:00 |
|
Nikolaj Bjorner
|
d092523733
|
bugfixes to try_factor_equality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-10 10:51:21 -08:00 |
|
Nikolaj Bjorner
|
c27bd0d650
|
added try_factor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-09 14:58:37 -08:00 |
|
Nikolaj Bjorner
|
a6b49d8b4e
|
provide access to saturation for selected constraints
|
2022-12-08 19:17:35 -08:00 |
|
Nikolaj Bjorner
|
33902c7c9e
|
fix parity propagation code, add tail-spin unit tests. The unit tests diverge because conflict resolution removes conflicting literals from the conflict clause before the decision variable gets processed. We have to change how conflict resolution is processed for such conflict clauses
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-08 09:57:38 -08:00 |
|
Jakob Rath
|
a81e05e660
|
We shouldn't assume that v is assigned
Happens if it is a viable conflict for v
|
2022-12-08 16:19:11 +01:00 |
|
Nikolaj Bjorner
|
acbd60799d
|
add placeholder for factor equality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-07 20:12:19 -08:00 |
|
Nikolaj Bjorner
|
437f826e8b
|
sketch parity generalization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-07 20:04:58 -08:00 |
|
Jakob Rath
|
55d691e16e
|
enable
|
2022-12-07 18:45:00 +01:00 |
|
Jakob Rath
|
45e94ae7dd
|
insert_eval
|
2022-12-07 18:41:42 +01:00 |
|
Jakob Rath
|
05a1f4d096
|
Skip try_parity for x==y and y==x
|
2022-12-07 16:09:10 +01:00 |
|
Jakob Rath
|
85715eb164
|
Update use of insert_eval and lemma scores to support propagation
|
2022-12-07 16:08:24 +01:00 |
|
Nikolaj Bjorner
|
754cb540d0
|
disable new code paths for commit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
|
2022-12-07 02:23:43 -08:00 |
|