Jakob Rath
a37536e0ae
clarify unsat_core
2023-02-06 17:52:52 +01:00
Jakob Rath
579275a17d
cleanup
2023-02-03 16:33:02 +01:00
Jakob Rath
0d56edb65c
Fix missing boolean propagation after boolean conflict
...
Usually in SAT solving, the conflict clause has at least two false literals at the max level (otherwise, the last literal would have been propagated at an earlier level).
But here we are adding clauses on demand; so after backtracking we may have the case that the conflict clause has exactly one undefined literal that must be propagated explicitly.
2023-02-01 15:02:56 +01:00
Jakob Rath
576e0b70b2
stub for conflict::find_deps
2023-02-01 10:53:49 +01:00
Jakob Rath
1bb68a4fc1
track dependency of base-level conflict
2023-02-01 10:47:26 +01:00
Jakob Rath
3b3636b30e
Remove conflict::set
2022-12-16 14:25:41 +01:00
Jakob Rath
06e6f27614
refactor
2022-12-16 14:22:50 +01:00
Jakob Rath
afde0e993c
Add bitblasting fallback to viable::query
...
(integration between conflict/viable is still messy)
2022-12-16 13:02:54 +01:00
Jakob Rath
5ad961029d
Rename revert_decision -> revert_pvar, and enable it.
...
Also rename resolve_with_assignment to resolve_evaluated
2022-12-08 16:19:11 +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
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
Jakob Rath
4aa04fa475
Lemma names
2022-11-28 19:13:38 +01:00
Jakob Rath
2787a22007
Backtrack/backjump based on accumulated lemmas
2022-11-23 12:49:36 +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
01af25ca02
Remove backjump state from conflict
2022-11-14 14:33:19 +01:00
Jakob Rath
7662427d92
Split constraint_manager into separate file
2022-11-07 13:33:48 +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
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
8333664433
Simplify handling of side lemmas in conflict
2022-10-07 16:19:41 +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
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
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
d473c23e5b
bailout for saturation lemmas
2022-07-01 11:51:52 +02:00
Jakob Rath
0fb8c72f50
print more information
2022-06-29 14:26:25 +02:00
Jakob Rath
6bf897aad8
backtrack_fi
2022-04-25 17:39:07 +02:00
Jakob Rath
88a17ef33e
print more
2022-04-13 11:42:41 +02:00
Jakob Rath
be488f75ab
Add some fi info
2022-04-13 09:34:59 +02:00
Jakob Rath
9fa5096776
conflict logging
2022-04-12 16:06:20 +02:00
Jakob Rath
63031548cb
Store only literals in the conflict state
2022-04-11 15:00:06 +02:00
Nikolaj Bjorner
c48f14e537
updated conflict state
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-01 11:47:33 -08:00
Nikolaj Bjorner
486cc632d0
notes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-31 09:16:48 -08:00
Nikolaj Bjorner
697b561c7a
update comments
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-30 17:34:00 -08:00
Nikolaj Bjorner
b488a1fadd
WIP revamp conflict state
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-29 16:17:58 -08:00
Nikolaj Bjorner
0677eb1c05
fixing up missing dependencies during resolution
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-27 16:58:16 -08:00
Jakob Rath
c4c9c84aeb
Treat eval'd literals as propagations (not as decisions)
2022-01-21 15:56:16 +01:00
Nikolaj Bjorner
83efb1413a
na
2021-12-11 08:41:04 -08:00
Nikolaj Bjorner
d86570ce75
prepare for new viable
2021-11-21 06:18:35 +01:00
Nikolaj Bjorner
57c40e480b
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-08 05:08:57 -08:00