summaryrefslogtreecommitdiff
path: root/src/theory/arith/linear_equality.h
diff options
context:
space:
mode:
authorTim King <taking@cs.nyu.edu>2013-05-03 20:53:25 -0400
committerTim King <taking@cs.nyu.edu>2013-05-03 20:53:25 -0400
commit5a20ba9f1f843fe066bbc8268f511a71902b88cb (patch)
tree222810c4451bb0c2385a4e499480fc99f342a313 /src/theory/arith/linear_equality.h
parent9a490befefedfd40b7abab5080e84fb7c0540f86 (diff)
Adding a smarter technique for pivoting in solutions for glpk.
Diffstat (limited to 'src/theory/arith/linear_equality.h')
-rw-r--r--src/theory/arith/linear_equality.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/theory/arith/linear_equality.h b/src/theory/arith/linear_equality.h
index 607ee6244..293a0ddad 100644
--- a/src/theory/arith/linear_equality.h
+++ b/src/theory/arith/linear_equality.h
@@ -243,11 +243,6 @@ public:
/** Specialization of update if the module is not tracking yet (for Simplex). */
void updateTracked(ArithVar x_i, const DeltaRational& v);
- /**
- * Updates every non-basic to reflect the assignment in many.
- * For use with ApproximateSimplex.
- */
- void updateMany(const DenseMap<DeltaRational>& many);
/**
* Updates the value of a basic variable x_i to v,
@@ -259,7 +254,14 @@ public:
ArithVariables& getVariables() const{ return d_variables; }
Tableau& getTableau() const{ return d_tableau; }
+ /**
+ * Updates every non-basic to reflect the assignment in many.
+ * For use with ApproximateSimplex.
+ */
+ void updateMany(const DenseMap<DeltaRational>& many);
void forceNewBasis(const DenseSet& newBasis);
+ void applySolution(const DenseSet& newBasis, const DenseMap<DeltaRational>& newValues);
+
/**
* Returns a pointer to the first Tableau entry on the row ridx that does not
@@ -689,6 +691,7 @@ private:
IntStat d_weakeningAttempts, d_weakeningSuccesses, d_weakenings;
TimerStat d_weakenTime;
+ TimerStat d_forceTime;
Statistics();
~Statistics();
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback