From 2d2cc9577403deaa49e9b55968bcbe924decdf06 Mon Sep 17 00:00:00 2001 From: TimQu Date: Tue, 29 Aug 2017 10:01:07 +0200 Subject: [PATCH] fixed issue #12 raised by Joachim Klein --- src/storm/utility/graph.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/storm/utility/graph.cpp b/src/storm/utility/graph.cpp index 13065000a..c341cdc22 100644 --- a/src/storm/utility/graph.cpp +++ b/src/storm/utility/graph.cpp @@ -165,7 +165,7 @@ namespace storm { } candidateStates = storm::utility::graph::getReachableStates(transitionMatrix, choiceTargets, candidateStates, storm::storage::BitVector(candidateStates.size(), false)); - // At this point we know that every candidate state can reach a choice at least once without leaving the set of candidate states. + // At this point we know that every candidate state can reach a state with a choice without leaving the set of candidate states. // We now compute the states that can reach a choice at least twice, three times, four times, ... until a fixpoint is reached. while (!candidateStates.empty()) { // Update the states with a choice that stays within the set of candidates @@ -193,11 +193,12 @@ namespace storm { // Update the candidates storm::storage::BitVector newCandidates = storm::utility::graph::performProb1E(transitionMatrix, transitionMatrix.getRowGroupIndices(), backwardTransitions, candidateStates, statesWithChoice); - // Check if conferged + // Check if converged if (newCandidates == candidateStates) { assert(!candidateStates.empty()); return true; } + candidateStates = std::move(newCandidates); } return false; }