From 99bdf07b49989b051fc951ef83bef4b96242232e Mon Sep 17 00:00:00 2001 From: Dave Parker Date: Fri, 5 Dec 2014 09:53:10 +0000 Subject: [PATCH] Fix in SubNondetModel: getSuccessorsIterator should return a set (i.e. no duplicates). git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@9381 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- prism/src/explicit/SubNondetModel.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/prism/src/explicit/SubNondetModel.java b/prism/src/explicit/SubNondetModel.java index be084a78..570c48c8 100644 --- a/prism/src/explicit/SubNondetModel.java +++ b/prism/src/explicit/SubNondetModel.java @@ -31,6 +31,7 @@ import java.io.File; import java.util.ArrayList; import java.util.BitSet; import java.util.HashMap; +import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; @@ -195,17 +196,17 @@ public class SubNondetModel implements NondetModel public Iterator getSuccessorsIterator(int s) { s = translateState(s); - List succ = new ArrayList(); + HashSet succs = new HashSet(); for (int i = 0; i < model.getNumChoices(s); i++) { if (actions.get(s).get(i)) { Iterator it = model.getSuccessorsIterator(s, i); while (it.hasNext()) { int j = it.next(); - succ.add(inverseTranslateState(j)); + succs.add(inverseTranslateState(j)); } } } - return succ.iterator(); + return succs.iterator(); } @Override