summaryrefslogtreecommitdiff
path: root/src/prop/sat_solver.h
diff options
context:
space:
mode:
authorLiana Hadarean <lianahady@gmail.com>2016-05-24 22:30:41 -0700
committerLiana Hadarean <lianahady@gmail.com>2016-05-24 22:30:48 -0700
commit2591fc4f57030b31c2c49d5c2dae9e96d3ce3afa (patch)
tree0296cb4f8194aef27813ef5251e88f475c9a6ffb /src/prop/sat_solver.h
parentbeaf8b212dfadb47328942c23a7649ab44a014cb (diff)
Merged cryptominisat from experimental branch.
Diffstat (limited to 'src/prop/sat_solver.h')
-rw-r--r--src/prop/sat_solver.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/prop/sat_solver.h b/src/prop/sat_solver.h
index 92696ae25..81fb94242 100644
--- a/src/prop/sat_solver.h
+++ b/src/prop/sat_solver.h
@@ -49,6 +49,12 @@ public:
virtual ClauseId addClause(SatClause& clause,
bool removable) = 0;
+ /** Return true if the solver supports native xor resoning */
+ virtual bool nativeXor() { return false; }
+
+ /** Add a clause corresponding to rhs = l1 xor .. xor ln */
+ virtual ClauseId addXorClause(SatClause& clause, bool rhs, bool removable) = 0;
+
/**
* Create a new boolean variable in the solver.
* @param isTheoryAtom is this a theory atom that needs to be asserted to theory
@@ -84,7 +90,8 @@ public:
/** Check if the solver is in an inconsistent state */
virtual bool ok() const = 0;
-
+
+ virtual void setProofLog( BitVectorProof * bvp ) {}
};/* class SatSolver */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback