3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-04 20:50:23 +00:00
Commit graph

156 commits

Author SHA1 Message Date
Nikolaj Bjorner
f2c228f160 update function that propagates bounds on x*y = 0 to be more comprehensive
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-05 01:19:26 -08:00
Nikolaj Bjorner
066b7d2d71 add review comments based on debugging
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-04 03:49:17 -08: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
3d79cddf33 Update saturation inferences 2022-11-28 18:02:18 +01:00
Jakob Rath
5c63a67634 disable for now 2022-11-23 16:59:26 +01:00
Jakob Rath
0e32077321 Use insert_eval for potentially new constraints 2022-11-23 16:54:35 +01:00
Jakob Rath
2787a22007 Backtrack/backjump based on accumulated lemmas 2022-11-23 12:49:36 +01:00
Jakob Rath
85a633a3e0 Update resolve_value 2022-11-22 13:47:31 +01:00
Jakob Rath
f12ae0af12 clause_builder: rename push to insert 2022-11-17 17:37:52 +01:00
Jakob Rath
dbe814d568 Add forbidden interval lemma separately 2022-11-17 15:00:16 +01:00
Jakob Rath
38a43bd087 Remove conflict_kind 2022-11-17 12:25:28 +01:00
Jakob Rath
00e8c53f9a Remove unused code 2022-11-17 12:22:40 +01:00
Jakob Rath
aa59de9056 Track max jump level from side lemmas 2022-11-14 15:43:46 +01:00
Jakob Rath
cd83a6ec69 Remove bailout state from conflict 2022-11-14 15:15:35 +01:00
Jakob Rath
e2804c3db2 Remove bail_vars 2022-11-14 15:02:58 +01:00
Jakob Rath
eec8e8ebe4 Fix name: value propagation -> evaluation (for boolean literals) 2022-11-14 14:58:20 +01:00
Jakob Rath
436881c18c print lemmas 2022-11-14 14:51:54 +01:00
Jakob Rath
01af25ca02 Remove backjump state from conflict 2022-11-14 14:33:19 +01:00
Jakob Rath
406696f0a3 Remove unused code 2022-11-11 10:25:49 +01:00
Jakob Rath
d3f70c0fb8 Rename: explain -> superposition 2022-11-10 14:42:13 +01:00
Jakob Rath
586ffdf402 Remove unnecessary argument 2022-11-07 14:04:28 +01:00
Jakob Rath
29695391de First pass at free variable elimination 2022-10-31 15:22:03 +01:00
Jakob Rath
4cdd3bf77d Add overload for conflict::add_lemma 2022-10-31 15:19:36 +01:00
Jakob Rath
6a03df9017 Track set of variables that occur in conflict constraints 2022-10-31 15:18:48 +01:00
Jakob Rath
eba59356f3 Disable problematic resolve_with_assignment 2022-10-31 15:17:32 +01:00
Nikolaj Bjorner
2d8b7b5ac6 deal with compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-10-13 17:55:47 +02:00
Jakob Rath
4406652c7b Narrow conflicting constraint after backjumping 2022-10-07 18:01:54 +02:00
Jakob Rath
e7c9a99d08 Add note as comment 2022-10-07 16:29:14 +02:00
Jakob Rath
23a747235d Some assertions are now too strict
If possible, we should set the new constraint to l_true;
and revert most of this change later.
Or we adjust the conflict invariant:
- l_true constraints is the default case as before,
- l_undef constraints are new and justified by some side lemma, but
  should be treated by the conflict resolution methods like l_true
  constraints,
- l_false constraints are disallowed in the conflict (as before).
2022-10-07 16:24:14 +02:00
Jakob Rath
8333664433 Simplify handling of side lemmas in conflict 2022-10-07 16:19:41 +02:00
Jakob Rath
8b4a36e3bd Simplify clause_builder 2022-10-07 15:22:49 +02:00
Jakob Rath
dcd6c01a90 revive polynomial superposition (wip) 2022-10-07 10:34:07 +02:00
Jakob Rath
155b746e03 side lemmas 2022-10-07 10:18:29 +02:00
Jakob Rath
9cc9d1fac4 count 2022-10-04 14:08:44 +02:00
Jakob Rath
9b907d709f minor 2022-09-29 18:25:28 +02:00
Jakob Rath
49590e0e01 Conflict from viable_fallback also depends on the current assignment 2022-09-23 16:45:56 +02:00
Jakob Rath
8ed6938cbe remove/update comment 2022-09-23 16:06:14 +02:00
Jakob Rath
a4f0e3a228 Add level to conflict
- reset conflict at correct level when popping user scopes
- functions as flag when handling inconsistent input (e.g., opposite literals)
- now all constraints in the conflict core should have bvalue == l_true
2022-09-23 16:06:14 +02:00
Jakob Rath
86d00b536a move todo notes to cpp file 2022-09-23 15:45:53 +02:00
Nikolaj Bjorner
0888f92efd remove 'change' just return
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-21 08:53:00 -07:00
Jakob Rath
1020f38e1a reconnect saturation 2022-09-21 16:47:16 +02:00
Jakob Rath
6abe0c9be8 set, lemma, minor 2022-09-21 16:29:36 +02:00
Jakob Rath
b43971bb4a Connect conflict2 2022-09-21 12:14:44 +02:00
Jakob Rath
a978604a7e move files (conflict2 -> conflict) 2022-09-20 10:26:38 +02:00
Jakob Rath
acf9976df9 make it compile 2022-08-26 16:28:52 +02:00
Jakob Rath
b9588af07a fix output 2022-08-03 10:01:54 +02:00
Jakob Rath
d65dc82ef0 bailout state: add premises of assignment 2022-07-25 13:49:21 +02:00
Jakob Rath
c31503f67d improve output 2022-07-14 10:47:35 +02:00
Jakob Rath
d473c23e5b bailout for saturation lemmas 2022-07-01 11:51:52 +02:00