summaryrefslogtreecommitdiff
path: root/src/smt
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2020-12-09 12:44:03 -0600
committerGitHub <noreply@github.com>2020-12-09 12:44:03 -0600
commitb1f4694c582a315feccb4c0c7e1a683583ff29e8 (patch)
tree9f18c1564867206a4abbd1bb51dcb190359cd5c7 /src/smt
parent59cd96a33b8f32405be2a20fc8230efc33b8dcdc (diff)
Make decision engine independent of AssertionsPipeline (#5626)
This PR makes decision engine independent of AssertionsPipeline, which consequently allows some of the key PropEngine interfaces to be consolidated. It also modifies PropEngine to take TrustNode for assertLemma, which is the first step for making PropEngine manage proofs from TheoryEngine. This is in preparation for modifying the interplay between PropEngine, TheoryEngine, TheoryPreprocessor, and new proposed SAT relevancy heuristic. There are no intended behavior changes in this PR. Marking "major" since this impacts several current directions (including proof-new integration, lazy theory preprocessing, SAT relevancy).
Diffstat (limited to 'src/smt')
-rw-r--r--src/smt/smt_solver.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/smt/smt_solver.cpp b/src/smt/smt_solver.cpp
index 26a2ff3e1..c18dfe8ac 100644
--- a/src/smt/smt_solver.cpp
+++ b/src/smt/smt_solver.cpp
@@ -224,14 +224,11 @@ void SmtSolver::processAssertions(Assertions& as)
// process the assertions with the preprocessor
bool noConflict = d_pp.process(as);
- // notify theory engine new preprocessed assertions
- d_theoryEngine->notifyPreprocessedAssertions(ap.ref());
-
// Push the formula to decision engine
if (noConflict)
{
- Chat() << "pushing to decision engine..." << endl;
- d_propEngine->addAssertionsToDecisionEngine(ap);
+ Chat() << "notifying theory engine and decision engine..." << std::endl;
+ d_propEngine->notifyPreprocessedAssertions(ap);
}
// end: INVARIANT to maintain: no reordering of assertions or
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback