diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-01-30 12:18:27 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-30 12:18:27 -0600 |
commit | 04f95f314db1c9fd8ac1ef475cab90c1709e6e47 (patch) | |
tree | e2732b2d1cb5db59e0f7690d5f77a3435cc7759a /src/smt | |
parent | f118ce702d191a5250569611da530dbf67337fb1 (diff) |
Weaken assertion for models with approximations (#3667)
Diffstat (limited to 'src/smt')
-rw-r--r-- | src/smt/smt_engine.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/smt/smt_engine.cpp b/src/smt/smt_engine.cpp index 910855505..d10678bf6 100644 --- a/src/smt/smt_engine.cpp +++ b/src/smt/smt_engine.cpp @@ -4278,10 +4278,10 @@ Expr SmtEngine::getValue(const Expr& ex) const || resultNode.getType().isSubtypeOf(expectedType)) << "Run with -t smt for details."; - // Ensure it's a constant, or a lambda (for uninterpreted functions), or - // a choice (for approximate values). - Assert(resultNode.getKind() == kind::LAMBDA - || resultNode.getKind() == kind::CHOICE || resultNode.isConst()); + // Ensure it's a constant, or a lambda (for uninterpreted functions). This + // assertion only holds for models that do not have approximate values. + Assert(m->hasApproximations() || resultNode.getKind() == kind::LAMBDA + || resultNode.isConst()); if(options::abstractValues() && resultNode.getType().isArray()) { resultNode = d_private->mkAbstractValue(resultNode); |