3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-05 02:40:24 +00:00

add validation to aig_simplifier, start BIG-based masking

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-01-11 20:47:38 -08:00
parent 41a00707e1
commit e0a41a18c3
14 changed files with 741 additions and 167 deletions

View file

@ -399,7 +399,7 @@ namespace sat {
}
m_units.shrink(num_units);
bool ok = m_inconsistent;
IF_VERBOSE(9, verbose_stream() << "is-drup " << m_inconsistent << "\n");
// IF_VERBOSE(9, verbose_stream() << "is-drup " << m_inconsistent << "\n");
m_inconsistent = false;
return ok;
@ -465,7 +465,9 @@ namespace sat {
if (!is_drup(n, c) && !is_drat(n, c)) {
literal_vector lits(n, c);
std::cout << "Verification of " << lits << " failed\n";
s.display(std::cout);
// s.display(std::cout);
std::string line;
std::getline(std::cin, line);
SASSERT(false);
exit(0);
UNREACHABLE();
@ -756,7 +758,6 @@ namespace sat {
}
#endif
++m_num_del;
//SASSERT(!(c.size() == 2 && c[0] == literal(13923, false) && c[1] == literal(14020, true)));
if (m_out) dump(c.size(), c.begin(), status::deleted);
if (m_bout) bdump(c.size(), c.begin(), status::deleted);
if (m_check) {
@ -764,6 +765,16 @@ namespace sat {
append(*c1, status::deleted);
}
}
void drat::del(literal_vector const& c) {
++m_num_del;
if (m_out) dump(c.size(), c.begin(), status::deleted);
if (m_bout) bdump(c.size(), c.begin(), status::deleted);
if (m_check) {
clause* c1 = m_alloc.mk_clause(c.size(), c.begin(), true);
append(*c1, status::deleted);
}
}
void drat::check_model(model const& m) {
}