mirror of
https://github.com/Z3Prover/z3
synced 2025-07-31 08:23:17 +00:00
When adding clauses, prioritize bool-propagation over evaluation
See test_band1 and clause: v2 == v0 & v1 --> v2 <= 0
This commit is contained in:
parent
587e77648a
commit
917e1b6a4c
2 changed files with 29 additions and 2 deletions
|
@ -185,6 +185,7 @@ namespace polysat {
|
|||
}
|
||||
|
||||
void conflict::init(signed_constraint c) {
|
||||
LOG("Conflict: constraint " << lit_pp(s, c));
|
||||
SASSERT(empty());
|
||||
m_level = s.m_level;
|
||||
m_narrow_queue.push_back(c.blit()); // if the conflict is only due to a missed propagation of c
|
||||
|
@ -217,6 +218,7 @@ namespace polysat {
|
|||
}
|
||||
|
||||
void conflict::init(clause const& cl) {
|
||||
LOG("Conflict: clause " << cl);
|
||||
SASSERT(empty());
|
||||
m_level = s.m_level;
|
||||
for (auto lit : cl) {
|
||||
|
@ -229,6 +231,7 @@ namespace polysat {
|
|||
}
|
||||
|
||||
void conflict::init(pvar v, bool by_viable_fallback) {
|
||||
LOG("Conflict: viable v" << v);
|
||||
SASSERT(empty());
|
||||
m_level = s.m_level;
|
||||
if (by_viable_fallback) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue