summaryrefslogtreecommitdiff
path: root/src/prop/sat_solver.h
diff options
context:
space:
mode:
authorDejan Jovanović <dejan.jovanovic@gmail.com>2012-05-09 21:25:17 +0000
committerDejan Jovanović <dejan.jovanovic@gmail.com>2012-05-09 21:25:17 +0000
commit1ce0650dcf8ce30424b546deb540974cc510c215 (patch)
tree74a9985463234fc9adfed2de209c134ed7da359b /src/prop/sat_solver.h
parent690fb2843d9845e405fee54eb2d8023eebbd5b72 (diff)
* simplifying equality engine interface
* notifications are now through the interface subclass instead of a template * notifications include constants being merged * changed contextNotifyObj::notify to contextNotifyObj::contextNotifyPop so it's more descriptive and doesn't clutter methods when subclassed * sat solver now has explicit methods to make true and false constants * 0-level literals are removed from explanations of propagations
Diffstat (limited to 'src/prop/sat_solver.h')
-rw-r--r--src/prop/sat_solver.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/prop/sat_solver.h b/src/prop/sat_solver.h
index 898709c43..2865f2cb5 100644
--- a/src/prop/sat_solver.h
+++ b/src/prop/sat_solver.h
@@ -46,6 +46,12 @@ public:
/** Create a new boolean variable in the solver. */
virtual SatVariable newVar(bool theoryAtom = false) = 0;
+ /** Create a new (or return an existing) boolean variable representing the constant true */
+ virtual SatVariable trueVar() = 0;
+
+ /** Create a new (or return an existing) boolean variable representing the constant false */
+ virtual SatVariable falseVar() = 0;
+
/** Check the satisfiability of the added clauses */
virtual SatValue solve() = 0;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback