summaryrefslogtreecommitdiff
path: root/src/theory/strings/inference_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/strings/inference_manager.cpp')
-rw-r--r--src/theory/strings/inference_manager.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/theory/strings/inference_manager.cpp b/src/theory/strings/inference_manager.cpp
index 088bc4a16..d19ce538d 100644
--- a/src/theory/strings/inference_manager.cpp
+++ b/src/theory/strings/inference_manager.cpp
@@ -50,7 +50,6 @@ InferenceManager::InferenceManager(TheoryStrings& p,
NodeManager* nm = NodeManager::currentNM();
d_zero = nm->mkConst(Rational(0));
d_one = nm->mkConst(Rational(1));
- d_emptyString = nm->mkConst(::CVC4::String(""));
d_true = nm->mkConst(true);
d_false = nm->mkConst(false);
}
@@ -453,7 +452,8 @@ Node InferenceManager::getRegisterTermAtomicLemma(
if (s == LENGTH_GEQ_ONE)
{
- Node neq_empty = n.eqNode(d_emptyString).negate();
+ Node emp = Word::mkEmptyWord(n.getType());
+ Node neq_empty = n.eqNode(emp).negate();
Node len_n_gt_z = nm->mkNode(GT, n_len, d_zero);
Node len_geq_one = nm->mkNode(AND, neq_empty, len_n_gt_z);
Trace("strings-lemma") << "Strings::Lemma SK-GEQ-ONE : " << len_geq_one
@@ -472,10 +472,11 @@ Node InferenceManager::getRegisterTermAtomicLemma(
}
Assert(s == LENGTH_SPLIT);
+ Node emp = Word::mkEmptyWord(n.getType());
std::vector<Node> lems;
// split whether the string is empty
Node n_len_eq_z = n_len.eqNode(d_zero);
- Node n_len_eq_z_2 = n.eqNode(d_emptyString);
+ Node n_len_eq_z_2 = n.eqNode(emp);
Node case_empty = nm->mkNode(AND, n_len_eq_z, n_len_eq_z_2);
case_empty = Rewriter::rewrite(case_empty);
Node case_nempty = nm->mkNode(GT, n_len, d_zero);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback