summaryrefslogtreecommitdiff
path: root/src/theory/theory_engine.cpp
diff options
context:
space:
mode:
authorClark Barrett <barrett@cs.nyu.edu>2012-05-15 19:24:09 +0000
committerClark Barrett <barrett@cs.nyu.edu>2012-05-15 19:24:09 +0000
commit26a6e8585d75cf6128016064e8cd2d19e7ee9a49 (patch)
tree1fc19423f6a40d90015f934de78aa8d00da8f290 /src/theory/theory_engine.cpp
parent488ae3f42d9d3e06978e11a42d1d47e76072f797 (diff)
Fixed several bugs in shared terms database
Diffstat (limited to 'src/theory/theory_engine.cpp')
-rw-r--r--src/theory/theory_engine.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/theory/theory_engine.cpp b/src/theory/theory_engine.cpp
index a8af6de1d..5a8a75aab 100644
--- a/src/theory/theory_engine.cpp
+++ b/src/theory/theory_engine.cpp
@@ -689,6 +689,10 @@ void TheoryEngine::assertFact(TNode node)
}
d_sharedTerms.markNotified(term, theories);
}
+ if (d_propagatedSharedLiterals.size() > 0) {
+ Debug("theory") << "TheoryEngine::assertFact: distributing shared literals from new shared terms" << std::endl;
+ outputSharedLiterals();
+ }
}
if (atom.getKind() == kind::EQUAL &&
@@ -704,7 +708,7 @@ void TheoryEngine::assertFact(TNode node)
d_sharedLiteralsIn[node] = THEORY_LAST;
d_sharedTerms.processSharedLiteral(node, node);
if (d_propagatedSharedLiterals.size() > 0) {
- Debug("theory") << "TheoryEngine::assertFact: distributing shared literals" << std::endl;
+ Debug("theory") << "TheoryEngine::assertFact: distributing shared literals from new assertion" << std::endl;
outputSharedLiterals();
}
// TODO: have processSharedLiteral propagate disequalities?
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback