Collaboration diagram for Decision Engine:
Author: Clark Barrett. More...
|
|
Implemented in CVCL::DecisionEngineCaching, CVCL::DecisionEngineDFS, and CVCL::DecisionEngineMBTF. Referenced by CVCL::DecisionEngine::findSplitterRec(). |
|
Definition at line 40 of file decision_engine.cpp. References CVCL::DecisionEngine::d_splitters, and IF_DEBUG(). |
|
Definition at line 69 of file decision_engine.h. |
|
Finds a splitter inside a non const expression. The expression passed in must not be a boolean constant, otherwise a DebugAssert will occur.
Implemented in CVCL::DecisionEngineCaching, CVCL::DecisionEngineDFS, and CVCL::DecisionEngineMBTF. Referenced by CVCL::SearchSimple::checkValidRec(), and CVCL::SearchEngineFast::findSplitter(). |
|
Push context and record the splitter. Function: DecisionEngine::pushDecision Author: Clark Barrett Created: Sun Jul 13 22:55:16 2003
Definition at line 136 of file decision_engine.cpp. References CVCL::TheoryCore::addFact(), CVCL::SearchImplBase::addLiteralFact(), CVCL::DecisionEngine::d_core, CVCL::DecisionEngine::d_se, CVCL::DecisionEngine::d_splitterCount, CVCL::DecisionEngine::d_splitters, CVCL::TheoryCore::getCM(), CVCL::Theorem::getExpr(), CVCL::Expr::isAbsLiteral(), CVCL::Expr::negate(), CVCL::SearchImplBase::newIntAssumption(), CVCL::ContextManager::push(), CVCL::CDList< T >::push_back(), and CVCL::TRACE. Referenced by CVCL::SearchSimple::checkValidRec(), and CVCL::SearchEngineFast::split(). |
|
Pop last decision (and context).
Definition at line 158 of file decision_engine.cpp. References CVCL::DecisionEngine::d_core, CVCL::TheoryCore::getCM(), and CVCL::ContextManager::pop(). Referenced by CVCL::SearchSimple::checkValidRec(). |
|
Pop to given scope.
Definition at line 164 of file decision_engine.cpp. References CVCL::DecisionEngine::d_core, CVCL::TheoryCore::getCM(), and CVCL::ContextManager::popto(). Referenced by CVCL::SearchEngineFast::fixConflict(), and CVCL::SearchEngineFast::traceConflict(). |
|
Return the last known splitter.
Definition at line 170 of file decision_engine.cpp. References CVCL::CDList< T >::back(), and CVCL::DecisionEngine::d_splitters. |
|
Search should call this when it derives 'false'.
Implemented in CVCL::DecisionEngineCaching, CVCL::DecisionEngineDFS, and CVCL::DecisionEngineMBTF. Referenced by CVCL::SearchEngineFast::checkSAT(), and CVCL::SearchSimple::checkValidRec(). |
|
Pointer to core theory.
Definition at line 49 of file decision_engine.h. Referenced by CVCL::DecisionEngineMBTF::findSplitter(), CVCL::DecisionEngineCaching::findSplitter(), CVCL::DecisionEngine::findSplitterRec(), CVCL::DecisionEngineMBTF::goalSatisfied(), CVCL::DecisionEngineCaching::goalSatisfied(), CVCL::DecisionEngine::popDecision(), CVCL::DecisionEngine::popTo(), and CVCL::DecisionEngine::pushDecision(). |
|
Pointer to search engine.
Definition at line 50 of file decision_engine.h. Referenced by CVCL::DecisionEngine::findSplitterRec(), and CVCL::DecisionEngine::pushDecision(). |
|
List of currently active splitters.
Definition at line 53 of file decision_engine.h. Referenced by CVCL::DecisionEngine::DecisionEngine(), CVCL::DecisionEngineMBTF::goalSatisfied(), CVCL::DecisionEngineCaching::goalSatisfied(), CVCL::DecisionEngine::lastSplitter(), and CVCL::DecisionEngine::pushDecision(). |
|
Total number of splitters.
Definition at line 56 of file decision_engine.h. Referenced by CVCL::DecisionEngine::pushDecision(). |
|
Definition at line 58 of file decision_engine.h. Referenced by CVCL::DecisionEngine::findSplitterRec(), CVCL::DecisionEngineMBTF::goalSatisfied(), and CVCL::DecisionEngineCaching::goalSatisfied(). |
|
Visited cache for findSplitterRec traversal. Must be emptied in every findSplitter() call. Definition at line 62 of file decision_engine.h. Referenced by CVCL::DecisionEngineMBTF::findSplitter(), CVCL::DecisionEngineDFS::findSplitter(), CVCL::DecisionEngineCaching::findSplitter(), and CVCL::DecisionEngine::findSplitterRec(). |