summaryrefslogtreecommitdiff
path: root/src/theory/strings/term_registry.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/strings/term_registry.cpp')
-rw-r--r--src/theory/strings/term_registry.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/theory/strings/term_registry.cpp b/src/theory/strings/term_registry.cpp
index 3e6f66b73..080349f73 100644
--- a/src/theory/strings/term_registry.cpp
+++ b/src/theory/strings/term_registry.cpp
@@ -52,7 +52,11 @@ TermRegistry::TermRegistry(SolverState& s,
d_proxyVar(s.getUserContext()),
d_proxyVarToLength(s.getUserContext()),
d_lengthLemmaTermsCache(s.getUserContext()),
- d_epg(nullptr)
+ d_epg(pnm ? new EagerProofGenerator(
+ pnm,
+ s.getUserContext(),
+ "strings::TermRegistry::EagerProofGenerator")
+ : nullptr)
{
NodeManager* nm = NodeManager::currentNM();
d_zero = nm->mkConst(Rational(0));
@@ -282,7 +286,7 @@ void TermRegistry::registerTerm(Node n, int effort)
if (d_epg != nullptr)
{
regTermLem = d_epg->mkTrustNode(
- eagerRedLemma, PfRule::STRING_EAGER_REDUCTION, {n});
+ eagerRedLemma, PfRule::STRING_EAGER_REDUCTION, {}, {n});
}
else
{
@@ -384,7 +388,7 @@ TrustNode TermRegistry::getRegisterTermLemma(Node n)
// it is a simple rewrite to justify this
if (d_epg != nullptr)
{
- return d_epg->mkTrustNode(ret, PfRule::MACRO_SR_PRED_INTRO, {ret});
+ return d_epg->mkTrustNode(ret, PfRule::MACRO_SR_PRED_INTRO, {}, {ret});
}
return TrustNode::mkTrustLemma(ret, nullptr);
}
@@ -508,7 +512,7 @@ TrustNode TermRegistry::getRegisterTermAtomicLemma(
if (d_epg != nullptr)
{
- return d_epg->mkTrustNode(lenLemma, PfRule::STRING_LENGTH_POS, {n});
+ return d_epg->mkTrustNode(lenLemma, PfRule::STRING_LENGTH_POS, {}, {n});
}
return TrustNode::mkTrustLemma(lenLemma, nullptr);
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback