diff options
author | Andres Noetzli <andres.noetzli@gmail.com> | 2020-04-28 13:10:16 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-28 15:10:16 -0500 |
commit | ad0b69e6a6242c2c7a2d060ff70ddd78861ca50a (patch) | |
tree | 6c3d9f9b68e245c40a66d0004364e9e61cd391ab /src/theory/strings | |
parent | beb4b2d81b47879004e09a4f626b9e4e189e8536 (diff) |
Register lower bound for str.to_int (#4408)
This commit changes the term registration for str.to_int terms. Before, we were not sending out any lemmas when registering str.to_int terms. Now, we send a simple lemma that asserts that the value is greater or equal to negative one.
Diffstat (limited to 'src/theory/strings')
-rw-r--r-- | src/theory/strings/term_registry.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/theory/strings/term_registry.cpp b/src/theory/strings/term_registry.cpp index 4f1e41ebb..3d898b40b 100644 --- a/src/theory/strings/term_registry.cpp +++ b/src/theory/strings/term_registry.cpp @@ -225,6 +225,10 @@ void TermRegistry::registerTerm(Node n, int effort) nm->mkNode(GEQ, n, nm->mkConst(Rational(-1))), nm->mkNode(LEQ, n, len)); } + else if (n.getKind() == STRING_STOI) + { + regTermLem = nm->mkNode(GEQ, n, nm->mkConst(Rational(-1))); + } if (!regTermLem.isNull()) { Trace("strings-lemma") << "Strings::Lemma REG-TERM : " << regTermLem |