diff options
author | Morgan Deters <mdeters@cs.nyu.edu> | 2013-02-01 18:00:12 -0500 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2013-02-07 18:06:11 -0500 |
commit | d6a6ab61dbe64848b78b9ab8d07d95fc58b64e72 (patch) | |
tree | db3cb085ddd0c2aad7e8ee32cb5d0c4a428183c6 /src/smt/smt_engine.cpp | |
parent | 822d66189bac649d1f04208f8f4f80e292403d40 (diff) |
Significant work on bug #491 (not yet closed).
Diffstat (limited to 'src/smt/smt_engine.cpp')
-rw-r--r-- | src/smt/smt_engine.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp index 1d98ce115..09fed4f9f 100644 --- a/src/smt/smt_engine.cpp +++ b/src/smt/smt_engine.cpp @@ -2908,6 +2908,7 @@ void SmtEngine::checkModel(bool hardFailure) { hash_map<Node, Node, NodeHashFunction> cache; n = d_private->expandDefinitions(n, cache); } + Notice() << "SmtEngine::checkModel(): -- expands to " << n << endl; // Apply our model value substitutions. n = substitutions.apply(n); @@ -2929,6 +2930,12 @@ void SmtEngine::checkModel(bool hardFailure) { continue; } + // As a last-ditch effort, ask model to simplify it. + // Presently, this is only an issue for quantifiers, which can have a value + // but don't show up in our substitution map above. + n = m->getValue(n); + Notice() << "SmtEngine::checkModel(): -- model-substitutes to " << n << endl; + // The result should be == true. if(n != NodeManager::currentNM()->mkConst(true)) { Notice() << "SmtEngine::checkModel(): *** PROBLEM: EXPECTED `TRUE' ***" |