3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-07 03:31:23 +00:00

import more from csp

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2019-02-11 13:09:28 -08:00
parent 02c85dd6de
commit 22783a4bcb
5 changed files with 21 additions and 17 deletions

View file

@ -213,8 +213,8 @@ namespace sat {
m_status.push_back(st);
m_proof.push_back(&c);
if (st == status::deleted) {
del_watch(c, c[0]);
del_watch(c, c[1]);
if (n > 0) del_watch(c, c[0]);
if (n > 1) del_watch(c, c[1]);
return;
}
unsigned num_watch = 0;
@ -338,8 +338,9 @@ namespace sat {
for (unsigned i = num_units; i < m_units.size(); ++i) {
m_assignment[m_units[i].var()] = l_undef;
}
m_units.resize(num_units);
m_units.shrink(num_units);
bool ok = m_inconsistent;
IF_VERBOSE(9, verbose_stream() << "is-drup " << m_inconsistent << "\n");
m_inconsistent = false;
return ok;
@ -583,6 +584,7 @@ namespace sat {
}
}
void drat::add(literal l, bool learned) {
TRACE("sat", tout << "add: " << l << " " << (learned?"l":"t") << "\n";);
declare(l);
status st = get_status(learned);
if (m_out) dump(1, &l, st);
@ -590,6 +592,7 @@ namespace sat {
if (m_check) append(l, st);
}
void drat::add(literal l1, literal l2, bool learned) {
TRACE("sat", tout << "add: " << l1 << " " << l2 << " " << (learned?"l":"t") << "\n";);
declare(l1);
declare(l2);
literal ls[2] = {l1, l2};