Verified Commit cdd89b09 authored by Tim Gymnich's avatar Tim Gymnich
Browse files

comments

parent 30debb9f
...@@ -134,7 +134,6 @@ bool AffineRelation::merge(Merge_op::Type op, AffineRelation const& other) { ...@@ -134,7 +134,6 @@ bool AffineRelation::merge(Merge_op::Type op, AffineRelation const& other) {
if (other.isBottom) { if (other.isBottom) {
return false; return false;
} else if (isBottom) { } else if (isBottom) {
// FIXME: is this correct?
basis = other.basis; basis = other.basis;
index = other.index; index = other.index;
isBottom = false; isBottom = false;
...@@ -172,6 +171,7 @@ bool AffineRelation::leastUpperBound(AffineRelation const& rhs) { ...@@ -172,6 +171,7 @@ bool AffineRelation::leastUpperBound(AffineRelation const& rhs) {
// MARK: - Assignments // MARK: - Assignments
// xi = a1x1 + ... + anxn + a0
void AffineRelation::affineAssignment(Value const* xi, unordered_map<Value const*,T> relations, T constant) { void AffineRelation::affineAssignment(Value const* xi, unordered_map<Value const*,T> relations, T constant) {
Matrix<T> Wr = Matrix<T>(getNumberOfVariables() + 1); Matrix<T> Wr = Matrix<T>(getNumberOfVariables() + 1);
Wr(index.at(xi),index.at(xi)) = 0; Wr(index.at(xi),index.at(xi)) = 0;
...@@ -191,6 +191,7 @@ void AffineRelation::affineAssignment(Value const* xi, unordered_map<Value const ...@@ -191,6 +191,7 @@ void AffineRelation::affineAssignment(Value const* xi, unordered_map<Value const
} }
} }
// xi = a * xj + b
void AffineRelation::affineAssignment(Value const* xi, T a, Value const* xj, T b) { void AffineRelation::affineAssignment(Value const* xi, T a, Value const* xj, T b) {
if (xj == nullptr) { if (xj == nullptr) {
affineAssignment(xi, {}, b); affineAssignment(xi, {}, b);
...@@ -199,6 +200,7 @@ void AffineRelation::affineAssignment(Value const* xi, T a, Value const* xj, T b ...@@ -199,6 +200,7 @@ void AffineRelation::affineAssignment(Value const* xi, T a, Value const* xj, T b
} }
} }
// xi = ?
void AffineRelation::nonDeterminsticAssignment(Value const* xi) { void AffineRelation::nonDeterminsticAssignment(Value const* xi) {
if (index.count(xi) == 0) return; if (index.count(xi) == 0) return;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment