summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/expr_miner.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2018-11-28 11:06:32 -0600
committerGitHub <noreply@github.com>2018-11-28 11:06:32 -0600
commite194e29c76f30ab9f0b42d20af699f132ef82fe4 (patch)
tree4423c9c8b63b3c0c16ef0948308bb8ebe3574e12 /src/theory/quantifiers/expr_miner.cpp
parent4698209a407a18ec667a20983328a03d42095e40 (diff)
Generalize sygus stream solution filtering to logical strength (#2697)
Diffstat (limited to 'src/theory/quantifiers/expr_miner.cpp')
-rw-r--r--src/theory/quantifiers/expr_miner.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/theory/quantifiers/expr_miner.cpp b/src/theory/quantifiers/expr_miner.cpp
index 16e59c119..b65d1c522 100644
--- a/src/theory/quantifiers/expr_miner.cpp
+++ b/src/theory/quantifiers/expr_miner.cpp
@@ -113,6 +113,29 @@ void ExprMiner::initializeChecker(std::unique_ptr<SmtEngine>& checker,
}
}
+Result ExprMiner::doCheck(Node query)
+{
+ Node queryr = Rewriter::rewrite(query);
+ if (queryr.isConst())
+ {
+ if (!queryr.getConst<bool>())
+ {
+ return Result(Result::UNSAT);
+ }
+ else
+ {
+ return Result(Result::SAT);
+ }
+ }
+ NodeManager* nm = NodeManager::currentNM();
+ bool needExport = false;
+ ExprManagerMapCollection varMap;
+ ExprManager em(nm->getOptions());
+ std::unique_ptr<SmtEngine> smte;
+ initializeChecker(smte, em, varMap, queryr, needExport);
+ return smte->checkSat();
+}
+
} // namespace quantifiers
} // namespace theory
} // namespace CVC4
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback