summaryrefslogtreecommitdiff
path: root/src/theory/combination_engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/combination_engine.cpp')
-rw-r--r--src/theory/combination_engine.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/theory/combination_engine.cpp b/src/theory/combination_engine.cpp
index 83aae3f54..e1317cf29 100644
--- a/src/theory/combination_engine.cpp
+++ b/src/theory/combination_engine.cpp
@@ -26,12 +26,15 @@ namespace CVC4 {
namespace theory {
CombinationEngine::CombinationEngine(TheoryEngine& te,
- const std::vector<Theory*>& paraTheories)
+ const std::vector<Theory*>& paraTheories,
+ ProofNodeManager* pnm)
: d_te(te),
d_logicInfo(te.getLogicInfo()),
d_paraTheories(paraTheories),
d_eemanager(nullptr),
- d_mmanager(nullptr)
+ d_mmanager(nullptr),
+ d_cmbsPg(pnm ? new EagerProofGenerator(pnm, te.getUserContext())
+ : nullptr)
{
}
@@ -100,15 +103,17 @@ theory::TheoryModel* CombinationEngine::getModel()
return d_mmanager->getModel();
}
+bool CombinationEngine::isProofEnabled() const { return d_cmbsPg != nullptr; }
+
eq::EqualityEngineNotify* CombinationEngine::getModelEqualityEngineNotify()
{
// by default, no notifications from model's equality engine
return nullptr;
}
-void CombinationEngine::sendLemma(TNode node, TheoryId atomsTo)
+void CombinationEngine::sendLemma(TrustNode trn, TheoryId atomsTo)
{
- d_te.lemma(node, RULE_INVALID, false, LemmaProperty::NONE, atomsTo);
+ d_te.lemma(trn.getNode(), RULE_INVALID, false, LemmaProperty::NONE, atomsTo);
}
void CombinationEngine::resetRound()
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback