diff options
author | Clark Barrett <barrett@cs.nyu.edu> | 2010-07-07 21:55:11 +0000 |
---|---|---|
committer | Clark Barrett <barrett@cs.nyu.edu> | 2010-07-07 21:55:11 +0000 |
commit | 5b4b7727433f06c1788647b08e7da1ee1cc37bc9 (patch) | |
tree | 065c5cf1f4257bf6e406336f0c57367055ffddf9 /src/theory/theory_engine.cpp | |
parent | 97eb2d77fddb9c690cc2ebc2caff98d62467b671 (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.cpp | 8 |
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; |