diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-10-18 18:01:24 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-18 18:01:24 -0500 |
commit | 738676c39badd9a03db0feaa00bb4bd467f0600a (patch) | |
tree | f7a40da5af750815d8a6832c1f6e9c0b4b5b714a /src/theory/builtin | |
parent | d4a23ab31a6f811dc4a9c3f24acb9a325fcb6d5a (diff) |
(proof-new) Implementation of trust substitution (#5276)
Trust substitution is a data structure that is used throughout preprocessing for proofs.
This adds its implementation.
Diffstat (limited to 'src/theory/builtin')
-rw-r--r-- | src/theory/builtin/proof_checker.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/theory/builtin/proof_checker.cpp b/src/theory/builtin/proof_checker.cpp index 6fc4671ee..e59f48fff 100644 --- a/src/theory/builtin/proof_checker.cpp +++ b/src/theory/builtin/proof_checker.cpp @@ -76,6 +76,7 @@ void BuiltinProofRuleChecker::registerTo(ProofChecker* pc) pc->registerTrustedChecker(PfRule::WITNESS_AXIOM, this, 3); pc->registerTrustedChecker(PfRule::TRUST_REWRITE, this, 1); pc->registerTrustedChecker(PfRule::TRUST_SUBS, this, 1); + pc->registerTrustedChecker(PfRule::TRUST_SUBS_MAP, this, 1); } Node BuiltinProofRuleChecker::applySubstitutionRewrite( @@ -397,7 +398,8 @@ Node BuiltinProofRuleChecker::checkInternal(PfRule id, else if (id == PfRule::PREPROCESS || id == PfRule::THEORY_PREPROCESS || id == PfRule::WITNESS_AXIOM || id == PfRule::THEORY_LEMMA || id == PfRule::PREPROCESS_LEMMA || id == PfRule::THEORY_REWRITE - || id == PfRule::TRUST_REWRITE || id == PfRule::TRUST_SUBS) + || id == PfRule::TRUST_REWRITE || id == PfRule::TRUST_SUBS + || id == PfRule::TRUST_SUBS_MAP) { // "trusted" rules Assert(children.empty()); |