mirror of
https://github.com/Z3Prover/z3
synced 2025-04-15 13:28:47 +00:00
Merge branch 'opt' of https://github.com/NikolajBjorner/z3 into opt
This commit is contained in:
commit
0b45828ff1
|
@ -2294,8 +2294,8 @@ namespace sat {
|
||||||
// literal is no longer watched.
|
// literal is no longer watched.
|
||||||
return l_undef;
|
return l_undef;
|
||||||
}
|
}
|
||||||
SASSERT(index <= bound);
|
VERIFY(index <= bound);
|
||||||
SASSERT(c[index] == alit);
|
VERIFY(c[index] == alit);
|
||||||
|
|
||||||
// find a literal to swap with:
|
// find a literal to swap with:
|
||||||
for (unsigned i = bound + 1; i < sz; ++i) {
|
for (unsigned i = bound + 1; i < sz; ++i) {
|
||||||
|
|
|
@ -181,8 +181,9 @@ namespace sat {
|
||||||
for (bool_var v : to_elim) {
|
for (bool_var v : to_elim) {
|
||||||
literal l(v, false);
|
literal l(v, false);
|
||||||
literal r = roots[v];
|
literal r = roots[v];
|
||||||
SASSERT(v != r.var());
|
SASSERT(v != r.var());
|
||||||
if (m_solver.is_external(v) || !m_solver.set_root(l, r)) {
|
if (m_solver.is_external(v)) {
|
||||||
|
m_solver.set_root(l, r);
|
||||||
// cannot really eliminate v, since we have to notify extension of future assignments
|
// cannot really eliminate v, since we have to notify extension of future assignments
|
||||||
m_solver.mk_bin_clause(~l, r, false);
|
m_solver.mk_bin_clause(~l, r, false);
|
||||||
m_solver.mk_bin_clause(l, ~r, false);
|
m_solver.mk_bin_clause(l, ~r, false);
|
||||||
|
|
Loading…
Reference in a new issue