3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00

track proof hints

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2023-12-27 16:34:00 -08:00
parent ac8efad7e1
commit 47b2113260
3 changed files with 20 additions and 5 deletions

View file

@ -339,7 +339,7 @@ namespace polysat {
for (auto lit : lits)
if (s().value(lit) == l_true)
return false;
s().add_clause(lits.size(), lits.data(), sat::status::th(is_redundant, get_id(), nullptr));
s().add_clause(lits.size(), lits.data(), sat::status::th(is_redundant, get_id(), mk_proof_hint(name)));
return true;
}
@ -393,4 +393,13 @@ namespace polysat {
r = bv.mk_bv_add(r, pdd2expr(p.lo()));
return expr_ref(r, m);
}
expr* solver::polysat_proof::get_hint(euf::solver& s) const {
auto& m = s.get_manager();
return m.mk_app(symbol(name), 0, nullptr, m.mk_proof_sort());
}
solver::polysat_proof* solver::mk_proof_hint(char const* name) {
return new (get_region()) polysat_proof(name);
}
}