diff options
author | Tim King <taking@cs.nyu.edu> | 2013-05-06 15:00:34 -0400 |
---|---|---|
committer | Tim King <taking@cs.nyu.edu> | 2013-05-06 15:00:34 -0400 |
commit | 5b0b97587e3640567ecd864171b309f39d829358 (patch) | |
tree | 769cdb285693bc48bb82300dc5972033db9ed7f2 /src/decision | |
parent | d96271f4abcb92c67461080ed33a8aa742c2a0f4 (diff) |
Disables justification stop only for LRA if the problem contains no ites. This is a bandaid for constraints-tempo-width family of benchmarks.
Diffstat (limited to 'src/decision')
-rw-r--r-- | src/decision/decision_engine.cpp | 7 | ||||
-rw-r--r-- | src/decision/decision_engine.h | 7 |
2 files changed, 12 insertions, 2 deletions
diff --git a/src/decision/decision_engine.cpp b/src/decision/decision_engine.cpp index 687515ff0..f634a28d9 100644 --- a/src/decision/decision_engine.cpp +++ b/src/decision/decision_engine.cpp @@ -82,6 +82,13 @@ void DecisionEngine::enableStrategy(DecisionStrategy* ds) d_enabledStrategies.push_back(ds); } +void DecisionEngine::clearStrategies(){ + for(unsigned i = 0; i < d_enabledStrategies.size(); ++i){ + delete d_enabledStrategies[i]; + } + d_enabledStrategies.clear(); + d_needIteSkolemMap.clear(); +} bool DecisionEngine::isRelevant(SatVariable var) { diff --git a/src/decision/decision_engine.h b/src/decision/decision_engine.h index bc071f7f6..f28b13774 100644 --- a/src/decision/decision_engine.h +++ b/src/decision/decision_engine.h @@ -96,6 +96,10 @@ public: /* enables decision stragies based on options */ void init(); + /* clears all of the strategies */ + void clearStrategies(); + + /** * This is called by SmtEngine, at shutdown time, just before * destruction. It is important because there are destruction @@ -106,8 +110,7 @@ public: d_engineState = 2; Trace("decision") << "Shutting down decision engine" << std::endl; - for(unsigned i = 0; i < d_enabledStrategies.size(); ++i) - delete d_enabledStrategies[i]; + clearStrategies(); } // Interface for External World to use our services |