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

fix gc to not remove ternary clauses that are on assignment trail. This addresses issue with drat proofs that don't pass drat-trim due to deletion during gc, but use in conflicts

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2019-02-22 11:14:20 +01:00
parent 598fc810b5
commit 4c799c144a
11 changed files with 201 additions and 71 deletions

View file

@ -38,7 +38,6 @@ namespace sat {
memcpy(m_lits, lits, sizeof(literal) * sz);
mark_strengthened();
SASSERT(check_approx());
SASSERT(sz > 1);
}
var_approx_set clause::approx(unsigned num, literal const * lits) {
@ -83,6 +82,7 @@ namespace sat {
i++;
for (; i < m_size; i++)
m_lits[i-1] = m_lits[i];
m_lits[m_size-1] = l;
m_size--;
mark_strengthened();
}