summaryrefslogtreecommitdiff
path: root/src/theory/bv/bv_solver.h
diff options
context:
space:
mode:
authorMathias Preiner <mathias.preiner@gmail.com>2020-09-22 15:40:48 -0700
committerGitHub <noreply@github.com>2020-09-22 17:40:48 -0500
commit30e6dc83aed15ef002087e55cf228f0735c63f40 (patch)
tree76547d252a34cc2b56015957e2d5f9740b1002b2 /src/theory/bv/bv_solver.h
parente4a29a6033ecc7ba5ec266f37e8f151f09ead020 (diff)
Add simple BV solver (#5065)
This PR adds a simple BV solver that sends bit-blasting lemmas to the internal MiniSat.
Diffstat (limited to 'src/theory/bv/bv_solver.h')
-rw-r--r--src/theory/bv/bv_solver.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/theory/bv/bv_solver.h b/src/theory/bv/bv_solver.h
index 36444afbe..6e251fc2d 100644
--- a/src/theory/bv/bv_solver.h
+++ b/src/theory/bv/bv_solver.h
@@ -68,7 +68,7 @@ class BVSolver
*/
virtual void notifyFact(TNode atom, bool pol, TNode fact, bool isInternal) {}
- virtual bool needsCheckLastEffort() = 0;
+ virtual bool needsCheckLastEffort() { return false; }
virtual void propagate(Theory::Effort e){};
@@ -103,7 +103,12 @@ class BVSolver
/** Called by abstraction preprocessing pass. */
virtual bool applyAbstraction(const std::vector<Node>& assertions,
- std::vector<Node>& new_assertions) = 0;
+ std::vector<Node>& new_assertions)
+ {
+ new_assertions.insert(
+ new_assertions.end(), assertions.begin(), assertions.end());
+ return false;
+ };
protected:
TheoryState& d_state;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback