diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2018-05-23 15:44:50 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-23 15:44:50 -0500 |
commit | a96fbfe33c05bea0b94d5387dda65c2ae343f66b (patch) | |
tree | a3b1e28dc45f05ef218331217ed072e842d6dfd3 /src/smt/smt_engine.cpp | |
parent | 4c2138a14c4abba2431bc8ba51359d3a565baf05 (diff) |
Add notions of evaluated kinds in TheoryModel (#1947)
Diffstat (limited to 'src/smt/smt_engine.cpp')
-rw-r--r-- | src/smt/smt_engine.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp index 114527334..9d4462210 100644 --- a/src/smt/smt_engine.cpp +++ b/src/smt/smt_engine.cpp @@ -1313,6 +1313,11 @@ void SmtEngine::setDefaults() { { options::cbqiMidpoint.set(true); } + // do not assign function values (optimization) + if (!options::assignFunctionValues.wasSetByUser()) + { + options::assignFunctionValues.set(false); + } } else { @@ -5189,6 +5194,13 @@ Model* SmtEngine::getModel() { Dump("benchmark") << GetModelCommand(); } + if (!options::assignFunctionValues()) + { + const char* msg = + "Cannot get the model when --assign-function-values is false."; + throw RecoverableModalException(msg); + } + if(d_status.isNull() || d_status.asSatisfiabilityResult() == Result::UNSAT || d_problemExtended) { |