3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-03 03:15:41 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2021-07-02 03:33:51 -07:00
parent 788de7d614
commit 9e69e1614e
3 changed files with 5 additions and 3 deletions

View file

@ -91,6 +91,7 @@ namespace polysat {
clause_ref conflict_explainer::by_polynomial_superposition() {
LOG_H3("units-size: " << m_conflict.units().size() << " conflict-clauses " << m_conflict.clauses().size());
constraint* c1 = nullptr, *c2 = nullptr;
if (m_conflict.units().size() == 2 && m_conflict.clauses().size() == 0) {
c1 = m_conflict.units()[0];
c2 = m_conflict.units()[1];
@ -111,6 +112,8 @@ namespace polysat {
if (lit.sign())
continue;
constraint* c = m_solver.m_constraints.lookup(lit.var());
c->assign(true);
// this clause is really a unit.
LOG("unit clause: " << *c);
if (c->is_eq() && c->is_positive()) {
c1 = c;
@ -127,7 +130,6 @@ namespace polysat {
break;
}
}
std::cout << c1 << " " << c2 << "\n";
#endif
}
if (!c1 || !c2 || c1 == c2)