@ -72,6 +72,12 @@ public enum ModelType
{
{
return RATE ;
return RATE ;
}
}
@Override
ModelType removeNondeterminism ( )
{
return CTMC ;
}
} ,
} ,
DTMC ( "discrete-time Markov chain" ) {
DTMC ( "discrete-time Markov chain" ) {
@Override
@Override
@ -92,9 +98,19 @@ public enum ModelType
{
{
return NEITHER ;
return NEITHER ;
}
}
@Override
ModelType removeNondeterminism ( )
{
return DTMC ;
}
} ,
} ,
MDP ( "Markov decision process" ) {
MDP ( "Markov decision process" ) {
@Override
ModelType removeNondeterminism ( )
{
return DTMC ;
}
} ,
} ,
PTA ( "probabilistic timed automaton" ) {
PTA ( "probabilistic timed automaton" ) {
@Override
@Override
@ -109,6 +125,12 @@ public enum ModelType
{
{
return true ;
return true ;
}
}
@Override
ModelType removeNondeterminism ( )
{
return DTMC ;
}
} ,
} ,
SMG ( "stochastic multi-player game" ) {
SMG ( "stochastic multi-player game" ) {
@Override
@Override
@ -116,6 +138,12 @@ public enum ModelType
{
{
return true ;
return true ;
}
}
@Override
ModelType removeNondeterminism ( )
{
return DTMC ;
}
} ;
} ;
private static final String PROBABILITY = "Probability" ;
private static final String PROBABILITY = "Probability" ;
@ -194,6 +222,19 @@ public enum ModelType
return PROBABILITY ;
return PROBABILITY ;
}
}
/ * *
* Return the model type that results from removing the nondeterminism
* in this model type .
* < br >
* If there is no nondeterminism ( or the removal of nondeterminism is not supported ) ,
* returns the same model type .
* /
ModelType removeNondeterminism ( )
{
/ / default : same model type
return this ;
}
public static ModelType parseName ( String name )
public static ModelType parseName ( String name )
{
{
try {
try {