Assignment Index Reducer causes divergence
In AssignmentIndexReducer.cs
line 89-241 (2d9acd0ffcfaa08aa580057eba9748b4c798dd14) there is a do-while
-loop:
bool changed = false;
do {
// ...
changed = true;
// ...
} while (changed);
I checked all assignments to changed
in that loop:
- line 130:
changed = true;
- line 196:
changed |= assgnsToAdd.Any();
a disjunction withtrue
is alwaystrue
- line 223:
changed |= assgnsToAdd.Any();
a disjunction withtrue
is alwaystrue
Thus changed
is never set to false
again. Furthermore there are no break
-statements breaking that loop.
This leads to divergence in the step Optimizing automata...
in only some of my models.
Two commits before (e2d1824dc041c50be3a94f50306ed9c99671f7da) everything still worked fine. I assume that we never entered that loop because I could not find any changes concerning the behaviour of that loop in the last two commits.