3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-19 10:52:02 +00:00

fix how don't cares are handled

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-01-13 09:45:21 -08:00
parent ba292346ae
commit 0e096c55a9
6 changed files with 33 additions and 47 deletions

View file

@ -132,7 +132,7 @@ namespace sat {
SASSERT(n.is_and() && n.size() == 0);
reset(cs);
cut c;
c.m_table = (n.sign() ? 0x0 : 0x1);
c.set_table(n.sign() ? 0x0 : 0x1);
push_back(cs, c);
}
@ -212,11 +212,6 @@ namespace sat {
}
}
void aig_cuts::replace(unsigned v, cut const& src, cut const& dst) {
m_cuts[v].replace(m_on_cut_add, m_on_cut_del, src, dst);
touch(v);
}
bool aig_cuts::is_touched(node const& n) {
for (unsigned i = 0; i < n.size(); ++i) {
@ -459,7 +454,7 @@ namespace sat {
m_clause.push_back(lit);
}
literal rr = r;
if (0 == (c.m_table & (1ull << i))) rr.neg();
if (0 == (c.table() & (1ull << i))) rr.neg();
m_clause.push_back(rr);
on_clause(m_clause);
}