diff options
author | Dejan Jovanović <dejan.jovanovic@gmail.com> | 2012-10-03 17:59:33 +0000 |
---|---|---|
committer | Dejan Jovanović <dejan.jovanovic@gmail.com> | 2012-10-03 17:59:33 +0000 |
commit | f0547f8a6fe9cecefde8b1d0c3dc8fcf50219c6b (patch) | |
tree | a2afaaa295c8964408dd7c53127df61527e00d90 /src/prop/prop_engine.cpp | |
parent | b8a010d260c90efa5433a71dd317a03f051c2592 (diff) |
adding ::getBooleanVariables to the PropEngine
you can get the Boolean variables in the TheoryEngine now by using d_propEngine->getBooleanVariables
Diffstat (limited to 'src/prop/prop_engine.cpp')
-rw-r--r-- | src/prop/prop_engine.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/prop/prop_engine.cpp b/src/prop/prop_engine.cpp index f115aa6d0..fe25caf29 100644 --- a/src/prop/prop_engine.cpp +++ b/src/prop/prop_engine.cpp @@ -65,11 +65,11 @@ public: } }; -PropEngine::PropEngine(TheoryEngine* te, DecisionEngine *de, Context* context) : +PropEngine::PropEngine(TheoryEngine* te, DecisionEngine *de, Context* satContext, Context* userContext) : d_inCheckSat(false), d_theoryEngine(te), d_decisionEngine(de), - d_context(context), + d_context(satContext), d_satSolver(NULL), d_cnfStream(NULL), d_satTimer(*this), @@ -82,6 +82,7 @@ PropEngine::PropEngine(TheoryEngine* te, DecisionEngine *de, Context* context) : theory::TheoryRegistrar* registrar = new theory::TheoryRegistrar(d_theoryEngine); d_cnfStream = new CVC4::prop::TseitinCnfStream (d_satSolver, registrar, + userContext, // fullLitToNode Map = options::threads() > 1 || options::decisionMode() == decision::DECISION_STRATEGY_RELEVANCY); @@ -246,6 +247,10 @@ bool PropEngine::hasValue(TNode node, bool& value) const { } } +void PropEngine::getBooleanVariables(std::vector<TNode>& outputVariables) const { + d_cnfStream->getBooleanVariables(outputVariables); +} + void PropEngine::ensureLiteral(TNode n) { d_cnfStream->ensureLiteral(n); } |