3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-11 19:53:34 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-03-10 11:41:41 -07:00
parent 9e41e88392
commit a09ed766f5

View file

@ -3176,7 +3176,7 @@ proof * ast_manager::mk_unit_resolution(unsigned num_proofs, proof * const * pro
// typically: num_proofs == cls_sz || (num_proofs == cls_sz + 1 && is_false(new_fact))
// but formula could have repeated literals that are merged in the clausal representation.
//
unsigned num_matches = 0;
unsigned num_matches = 0, num_occ = 0;
for (unsigned i = 0; i < cls_sz; i++) {
expr * lit = cls->get_arg(i);
unsigned j = 1;
@ -3189,9 +3189,10 @@ proof * ast_manager::mk_unit_resolution(unsigned num_proofs, proof * const * pro
if (j == num_proofs) {
CTRACE("unit_bug1", new_fact != lit, tout << mk_ll_pp(new_fact, *this) << "\n" << mk_ll_pp(lit, *this) << "\n";);
SASSERT(new_fact == lit);
++num_occ;
}
}
SASSERT(num_matches == cls_sz || num_matches == cls_sz - 1);
SASSERT(num_matches == cls_sz || num_matches == cls_sz - num_occ);
SASSERT(num_matches != cls_sz || is_false(new_fact));
}
#endif