3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-08 08:51:55 +00:00
This commit is contained in:
Nikolaj Bjorner 2017-12-01 08:24:51 -08:00
commit a9f32cd382
4 changed files with 5 additions and 3 deletions

View file

@ -96,7 +96,7 @@ namespace sat {
// apply substitution
for (i = 0; i < sz; i++) {
c[i] = norm(roots, c[i]);
VERIFY(c[i] == norm(roots, c[i]));
VERIFY(c[i] == norm(roots, c[i]));
VERIFY(!m_solver.was_eliminated(c[i].var()));
}
std::sort(c.begin(), c.end());

View file

@ -266,6 +266,7 @@ namespace sat {
void set_external(bool_var v);
void set_non_external(bool_var v);
bool was_eliminated(bool_var v) const { return m_eliminated[v] != 0; }
void set_eliminated(bool_var v, bool f) { m_eliminated[v] = f; }
unsigned scope_lvl() const { return m_scope_lvl; }
unsigned search_lvl() const { return m_search_lvl; }
bool at_search_lvl() const { return m_scope_lvl == m_search_lvl; }

View file

@ -151,6 +151,7 @@ struct goal2sat::imp {
else {
SASSERT(v != sat::null_bool_var);
l = sat::literal(v, sign);
m_solver.set_eliminated(v, false);
}
SASSERT(l != sat::null_literal);
if (root)