summaryrefslogtreecommitdiff
path: root/src/theory/arith/simplex.h
diff options
context:
space:
mode:
authorTim King <taking@cs.nyu.edu>2012-06-14 19:29:25 +0000
committerTim King <taking@cs.nyu.edu>2012-06-14 19:29:25 +0000
commit2581001b96a64e1d11d826cf554d378ac522bbe2 (patch)
tree438024c782ce3a92aa44559772a6c4378332f958 /src/theory/arith/simplex.h
parentda1e7aaacab8dd4e9b80b752f362d190c1472543 (diff)
Fixed arithmetic consistency issue. The simplex conflict variable had to be reenqueued so that the queue was a superset of the failing assertions. This adds a super expensive debug routine unenqueuedVariablesAreConsistent() that catches this bug. This is enabled when -d arith::consistency is turned on. make check passes with this flag enabled.
Diffstat (limited to 'src/theory/arith/simplex.h')
-rw-r--r--src/theory/arith/simplex.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/theory/arith/simplex.h b/src/theory/arith/simplex.h
index d260ff9b4..a1c69548c 100644
--- a/src/theory/arith/simplex.h
+++ b/src/theory/arith/simplex.h
@@ -224,6 +224,12 @@ public:
d_queue.clear();
}
+
+ bool debugIsInCollectionQueue(ArithVar var) const{
+ Assert(d_queue.inCollectionMode());
+ return d_queue.collectionModeContains(var);
+ }
+
private:
/** Reports a conflict to on the output channel. */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback