diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-03-26 08:37:13 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-26 08:37:13 -0500 |
commit | 9523b4248da9764fa14f078659b42085a7fe2654 (patch) | |
tree | fd7e67b9c307b7dd20dd3e43e18049bbc7047034 /src/theory/strings/base_solver.cpp | |
parent | e7edc09b227af1f58573cf5a636a91674dc2d936 (diff) |
Generalize more string-specific functions (#4152)
Towards theory of sequences.
Note this PR also changes design in core/base solver. Previously I had estimated that we should have separate instances per type for these solvers, but I think it is better to have these classes handle all string-like types simultaneously. This means they should not have a d_type field.
Diffstat (limited to 'src/theory/strings/base_solver.cpp')
-rw-r--r-- | src/theory/strings/base_solver.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/theory/strings/base_solver.cpp b/src/theory/strings/base_solver.cpp index 128893cf0..af0e7cc37 100644 --- a/src/theory/strings/base_solver.cpp +++ b/src/theory/strings/base_solver.cpp @@ -35,7 +35,6 @@ BaseSolver::BaseSolver(context::Context* c, d_emptyString = NodeManager::currentNM()->mkConst(::CVC4::String("")); d_false = NodeManager::currentNM()->mkConst(false); d_cardSize = utils::getAlphabetCardinality(); - d_type = NodeManager::currentNM()->stringType(); } BaseSolver::~BaseSolver() {} @@ -254,7 +253,7 @@ void BaseSolver::checkConstantEquivalenceClasses(TermIndex* ti, if (!n.isNull()) { // construct the constant - Node c = utils::mkNConcat(vecc, d_type); + Node c = utils::mkNConcat(vecc, n.getType()); if (!d_state.areEqual(n, c)) { if (Trace.isOn("strings-debug")) |