|
|
|
@ -67,7 +67,7 @@ public abstract class ModelExplicit implements Model |
|
|
|
protected Values constantValues; |
|
|
|
/** (Optionally) some labels (atomic propositions) associated with the model, |
|
|
|
* represented as a String->BitSet mapping from their names to the states that satisfy them. */ |
|
|
|
protected Map<String,BitSet> labels = new TreeMap<String, BitSet>(); |
|
|
|
protected Map<String, BitSet> labels = new TreeMap<String, BitSet>(); |
|
|
|
|
|
|
|
// Mutators |
|
|
|
|
|
|
|
@ -315,11 +315,17 @@ public abstract class ModelExplicit implements Model |
|
|
|
@Override |
|
|
|
public void exportToDotFile(PrismLog out) |
|
|
|
{ |
|
|
|
exportToDotFile(out, null); |
|
|
|
exportToDotFile(out, null, false); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void exportToDotFile(PrismLog out, BitSet mark) |
|
|
|
{ |
|
|
|
exportToDotFile(out, mark, false); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void exportToDotFile(PrismLog out, BitSet mark, boolean showStates) |
|
|
|
{ |
|
|
|
int i; |
|
|
|
// Header |
|
|
|
@ -331,6 +337,15 @@ public abstract class ModelExplicit implements Model |
|
|
|
// Transitions for state i |
|
|
|
exportTransitionsToDotFile(i, out); |
|
|
|
} |
|
|
|
// Append state info (if required) |
|
|
|
if (showStates) { |
|
|
|
List<State> states = getStatesList(); |
|
|
|
if (states != null) { |
|
|
|
for (i = 0; i < numStates; i++) { |
|
|
|
out.print(i + " [label=\"" + i + "\\n" + states.get(i) + "\"]\n"); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
// Footer |
|
|
|
out.print("}\n"); |
|
|
|
} |
|
|
|
|