diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-12-01 02:57:59 +0000 |
---|---|---|
committer | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-12-01 02:57:59 +0000 |
commit | 959f5e77f96b406a498c3b67ce22d25e39d7bd2d (patch) | |
tree | e3cb4518ff5156de8286f9351a827bf40636804e /src/theory/theory_engine.cpp | |
parent | b66fc3eac2717e8a887f1d4603c15cbcb7460e98 (diff) |
drastic simplification of quantifiers code regarding equality queries, instantiation strategies moved from instantiators to central instantiation engine, removed instantiator objects, simplified rewrite rules candidate generator to use central equality engine, efficient e-matching now uses central equality engine
Diffstat (limited to 'src/theory/theory_engine.cpp')
-rw-r--r-- | src/theory/theory_engine.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/theory/theory_engine.cpp b/src/theory/theory_engine.cpp index ce3ccebf3..c0aa58647 100644 --- a/src/theory/theory_engine.cpp +++ b/src/theory/theory_engine.cpp @@ -53,6 +53,7 @@ using namespace CVC4::theory; void TheoryEngine::finishInit() { if (d_logicInfo.isQuantified()) { + d_quantEngine->finishInit(); Assert(d_masterEqualityEngine == 0); d_masterEqualityEngine = new eq::EqualityEngine(d_masterEENotify,getSatContext(), "theory::master"); @@ -70,6 +71,9 @@ void TheoryEngine::eqNotifyNewClass(TNode t){ void TheoryEngine::eqNotifyPreMerge(TNode t1, TNode t2){ //TODO: add notification to efficient E-matching + if (d_logicInfo.isQuantified()) { + d_quantEngine->getEfficientEMatcher()->merge( t1, t2 ); + } } void TheoryEngine::eqNotifyPostMerge(TNode t1, TNode t2){ |