PfRule::PREPROCESS_LEMMA);
// ---------- from d_lazyProof -------------- from theory preprocess
// lemma lemma = lemmap
- // ------------------------------------------ MACRO_SR_PRED_TRANSFORM
+ // ------------------------------------------ EQ_RESOLVE
// lemmap
std::vector<Node> pfChildren;
pfChildren.push_back(lemma);
pfChildren.push_back(tplemma.getProven());
- std::vector<Node> pfArgs;
- pfArgs.push_back(lemmap);
- d_lazyProof->addStep(
- lemmap, PfRule::MACRO_SR_PRED_TRANSFORM, pfChildren, pfArgs);
+ d_lazyProof->addStep(lemmap, PfRule::EQ_RESOLVE, pfChildren, {});
}
}
tlemma = TrustNode::mkTrustLemma(lemmap, d_lazyProof.get());
{
// ------------------------- explained ---------- from theory
// fullConflict => conflict ~conflict
- // --------------------------------------------
- // MACRO_SR_PRED_TRANSFORM ~fullConflict
+ // ------------------------------------------ MACRO_SR_PRED_TRANSFORM
+ // ~fullConflict
children.push_back(conflict.notNode());
args.push_back(mkMethodId(MethodId::SB_LITERAL));
d_lazyProof->addStep(
Trace("te-proof-exp") << "...trivial" << std::endl;
continue;
}
- // ------------- Via theory
- // tExp => tConc tExp
- // ---------------------------------MACRO_SR_PRED_TRANSFORM
+ // ------------- Via theory
+ // tExp tExp => tConc
+ // ---------------------------------MODUS_PONENS
// tConc
if (trn.getGenerator() != nullptr)
{
lcp->addStep(proven, PfRule::THEORY_LEMMA, {}, {proven, tidn});
}
std::vector<Node> pfChildren;
- pfChildren.push_back(proven);
pfChildren.push_back(trn.getNode());
- std::vector<Node> pfArgs;
- pfArgs.push_back(tConc);
- pfArgs.push_back(mkMethodId(MethodId::SB_FORMULA));
- lcp->addStep(tConc, PfRule::MACRO_SR_PRED_TRANSFORM, pfChildren, pfArgs);
+ pfChildren.push_back(proven);
+ lcp->addStep(tConc, PfRule::MODUS_PONENS, pfChildren, {});
}
// store in the proof generator
TrustNode trn = d_tepg->mkTrustExplain(conclusion, expNode, lcp);
#include "theory/interrupted.h"
#include "theory/rewriter.h"
#include "theory/sort_inference.h"
-#include "theory/substitutions.h"
#include "theory/term_registration_visitor.h"
#include "theory/theory.h"
#include "theory/theory_preprocessor.h"
#include "theory/trust_node.h"
+#include "theory/trust_substitutions.h"
#include "theory/uf/equality_engine.h"
#include "theory/valuation.h"
#include "util/hash.h"