diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2021-06-21 21:24:40 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-22 02:24:40 +0000 |
commit | c7116b06892b5ff21fb04a3996880bfe48e44053 (patch) | |
tree | 4ad855ab5d4514bb66eb38441ab0f388308cdb48 /src/theory/strings | |
parent | 4f8927b6e56d55d8b69d525e57f407ff69bc1acd (diff) |
Set up fine grained equality notifications (#6734)
This adds fields to equality engine setup information which will be used to hook up theories to the central equality engine.
This PR does not impact any behavior.
This is in preparation for the central equality engine.
Diffstat (limited to 'src/theory/strings')
-rw-r--r-- | src/theory/strings/term_registry.cpp | 3 | ||||
-rw-r--r-- | src/theory/strings/theory_strings.cpp | 3 |
2 files changed, 5 insertions, 1 deletions
diff --git a/src/theory/strings/term_registry.cpp b/src/theory/strings/term_registry.cpp index aac9e9313..8c5805b37 100644 --- a/src/theory/strings/term_registry.cpp +++ b/src/theory/strings/term_registry.cpp @@ -249,7 +249,8 @@ void TermRegistry::preRegisterTerm(TNode n) // Concatenation terms do not need to be considered here because // their arguments have string type and do not introduce any shared // terms. - if (n.hasOperator() && ee->isFunctionKind(k) && k != STRING_CONCAT) + if (n.hasOperator() && ee->isFunctionKind(k) + && kindToTheoryId(k) == THEORY_STRINGS && k != STRING_CONCAT) { d_functionsTerms.push_back(n); } diff --git a/src/theory/strings/theory_strings.cpp b/src/theory/strings/theory_strings.cpp index f4daed85d..f0763e153 100644 --- a/src/theory/strings/theory_strings.cpp +++ b/src/theory/strings/theory_strings.cpp @@ -103,6 +103,9 @@ bool TheoryStrings::needsEqualityEngine(EeSetupInfo& esi) { esi.d_notify = &d_notify; esi.d_name = "theory::strings::ee"; + esi.d_notifyNewClass = true; + esi.d_notifyMerge = true; + esi.d_notifyDisequal = true; return true; } |