diff --git a/prism/src/explicit/AccumulationProduct.java b/prism/src/explicit/AccumulationProduct.java index 6c0f2b9a..112ef195 100644 --- a/prism/src/explicit/AccumulationProduct.java +++ b/prism/src/explicit/AccumulationProduct.java @@ -133,14 +133,17 @@ public abstract class AccumulationProduct extends Pro newGoodTracks.clear(trackNr); } else if (oldTrack == null) { newTrack = null; + } else if (oldGoodTracks.get(trackNr)) { + newTrack = null; } else { assert oldTrack != null; newTrack = updateTrack(modelFromStateId, oldTrack, accexp, weights, mc); } // check whether the track is good - if(!newGoodTracks.get(trackNr)) { - newGoodTracks.set(trackNr, isGoodTrack(newTrack, accexp, mc)); + if(oldGoodTracks.get(trackNr) || isGoodTrack(newTrack,accexp,mc)) { + newGoodTracks.set(trackNr); + newTrack = null; } newTracks.add(newTrack);