summaryrefslogtreecommitdiff
path: root/src/theory/theory_engine.cpp
diff options
context:
space:
mode:
authorClark Barrett <barrett@cs.nyu.edu>2010-07-07 21:55:11 +0000
committerClark Barrett <barrett@cs.nyu.edu>2010-07-07 21:55:11 +0000
commit5b4b7727433f06c1788647b08e7da1ee1cc37bc9 (patch)
tree065c5cf1f4257bf6e406336f0c57367055ffddf9 /src/theory/theory_engine.cpp
parent97eb2d77fddb9c690cc2ebc2caff98d62467b671 (diff)
Shared term manager tested and working
It is currently tracking all asserted equalities for simplicity. Might want to check if this is a performance hit
Diffstat (limited to 'src/theory/theory_engine.cpp')
-rw-r--r--src/theory/theory_engine.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/theory/theory_engine.cpp b/src/theory/theory_engine.cpp
index d16d80090..4fae94254 100644
--- a/src/theory/theory_engine.cpp
+++ b/src/theory/theory_engine.cpp
@@ -46,6 +46,14 @@ void TheoryEngine::EngineOutputChannel::newFact(TNode fact) {
if (fact.getKind() == kind::NOT) {
// No need to register negations - only atoms
fact = fact[0];
+// FIXME: In future, might want to track disequalities in shared term manager
+// if (fact.getKind() == kind::EQUAL) {
+// d_engine->getSharedTermManager()->addDiseq(fact);
+// }
+ }
+ else if (fact.getKind() == kind::EQUAL) {
+ // Automatically track all asserted equalities in the shared term manager
+ d_engine->getSharedTermManager()->addEq(fact);
}
if(! fact.getAttribute(RegisteredAttr())) {
std::list<TNode> toReg;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback