diff --git a/prism/src/prism/Model.java b/prism/src/prism/Model.java index 98b0fb00..aa38e161 100644 --- a/prism/src/prism/Model.java +++ b/prism/src/prism/Model.java @@ -78,6 +78,25 @@ public interface Model */ Set getLabels(); + /** + * Add a label with corresponding state set, ensuring a unique, non-existing label. + * The label will be either "X" or "X_i" where X is the content of the {@code prefix} argument + * and i is a non-negative integer. + *
+ * Optionally, a set of defined label names can be passed so that those labels + * can be avoided. This can be obtained from the model checker via {@code getDefinedLabelNames()}. + *
+ * Note that a stored label takes precedence over the on-the-fly calculation + * of an ExpressionLabel, cf. {@link explicit.StateModelChecker#checkExpressionLabel} + *
[ STORES: labelDD, deref on later call to clear() ] + * + * @param prefix the prefix for the unique label + * @param labelDD the JDDNode with the state set for the label + * @param definedLabelNames set of names (optional, may be {@code null}) to check for existing labels + * @return the generated unique label + */ + public String addUniqueLabelDD(String prefix, JDDNode labelDD, Set definedLabelNames); + String globalToLocal(long x); int globalToLocal(long x, int l); State convertBddToState(JDDNode dd); diff --git a/prism/src/prism/ProbModel.java b/prism/src/prism/ProbModel.java index 7843fb1e..6ba33322 100644 --- a/prism/src/prism/ProbModel.java +++ b/prism/src/prism/ProbModel.java @@ -481,23 +481,7 @@ public class ProbModel implements Model if (old != null) JDD.Deref(old); } - /** - * Add a label with corresponding state set, ensuring a unique, non-existing label. - * The label will be either "X" or "X_i" where X is the content of the {@code prefix} argument - * and i is a non-negative integer. - *
- * Optionally, a set of defined label names can be passed so that those labels - * can be avoided. This can be obtained from the model checker via {@code getDefinedLabelNames()}. - *
- * Note that a stored label takes precedence over the on-the-fly calculation - * of an ExpressionLabel, cf. {@link explicit.StateModelChecker#checkExpressionLabel} - *
[ STORES: labelDD, deref on later call to clear() ] - * - * @param prefix the prefix for the unique label - * @param labelDD the JDDNode with the state set for the label - * @param definedLabelNames set of names (optional, may be {@code null}) to check for existing labels - * @return the generated unique label - */ + @Override public String addUniqueLabelDD(String prefix, JDDNode labelDD, Set definedLabelNames) { String label;