summaryrefslogtreecommitdiff
path: root/src/theory/strings/skolem_cache.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2018-10-16 12:25:20 -0500
committerGitHub <noreply@github.com>2018-10-16 12:25:20 -0500
commitca6f1b0350b18ce3e134701f68f7e02813c3fb5f (patch)
tree0f58df1f9dbad64027b1f45d7e588655817b037d /src/theory/strings/skolem_cache.cpp
parent55c7c653812e8d9ee68739b38e1bacb67a44d64d (diff)
Improve strings reductions including skolem caching for contains (#2641)
Diffstat (limited to 'src/theory/strings/skolem_cache.cpp')
-rw-r--r--src/theory/strings/skolem_cache.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/theory/strings/skolem_cache.cpp b/src/theory/strings/skolem_cache.cpp
index 4a78a11ff..2b0cc8a1b 100644
--- a/src/theory/strings/skolem_cache.cpp
+++ b/src/theory/strings/skolem_cache.cpp
@@ -14,6 +14,8 @@
#include "theory/strings/skolem_cache.h"
+#include "theory/rewriter.h"
+
namespace CVC4 {
namespace theory {
namespace strings {
@@ -22,6 +24,8 @@ SkolemCache::SkolemCache() {}
Node SkolemCache::mkSkolemCached(Node a, Node b, SkolemId id, const char* c)
{
+ a = a.isNull() ? a : Rewriter::rewrite(a);
+ b = b.isNull() ? b : Rewriter::rewrite(b);
std::map<SkolemId, Node>::iterator it = d_skolemCache[a][b].find(id);
if (it == d_skolemCache[a][b].end())
{
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback