STAMINA/PRISM 2.0
Infinite state-space truncator which generates a probability within a window
|
Public Member Functions | |
InfCTMCModelGenerator (ModulesFile modulesFile) throws PrismException | |
InfCTMCModelGenerator (ModulesFile modulesFile, PrismComponent parent) throws PrismException | |
State | getAbsorbingState () |
void | setReachabilityThreshold (double th) |
void | setPropertyExpression (ExpressionTemporal expr) |
void | clearPerimeterStatesVector () |
Vector< String > | getPerimeterStatesVector () |
HashMap< State, ProbState > | getGlobalStateSet () |
boolean | finalModelHasAbsorbing () |
ModelType | getModelType () |
void | setSomeUndefinedConstants (Values someValues) throws PrismException |
void | setSomeUndefinedConstants (Values someValues, boolean exact) throws PrismException |
Values | getConstantValues () |
boolean | containsUnboundedVariables () |
int | getNumVars () |
List< String > | getVarNames () |
List< Type > | getVarTypes () |
int | getNumLabels () |
List< String > | getLabelNames () |
String | getLabelName (int i) throws PrismException |
int | getLabelIndex (String label) |
int | getNumRewardStructs () |
List< String > | getRewardStructNames () |
int | getRewardStructIndex (String name) |
RewardStruct | getRewardStruct (int i) |
boolean | hasSingleInitialState () throws PrismException |
State | getInitialState () throws PrismException |
State | getInitialStateForTransitionFile () throws PrismException |
List< State > | getInitialStates () throws PrismException |
List< State > | getInitialStatesForTransitionFile () throws PrismException |
void | exploreState (State exploreState) throws PrismException |
State | getExploreState () |
int | getNumChoices () throws PrismException |
int | getNumTransitions () throws PrismException |
int | getNumTransitions (int index) throws PrismException |
String | getTransitionAction (int index) throws PrismException |
String | getTransitionAction (int index, int offset) throws PrismException |
String | getChoiceAction (int index) throws PrismException |
double | getTransitionProbability (int index, int offset) throws PrismException |
double | getTransitionProbability (int index) throws PrismException |
State | computeTransitionTarget (int index, int offset) throws PrismException |
State | computeTransitionTarget (int index) throws PrismException |
boolean | isLabelTrue (int i) throws PrismException |
double | getStateReward (int r, State state) throws PrismException |
double | getStateActionReward (int r, State state, Object action) throws PrismException |
void | calculateStateRewards (State state, double[] store) throws PrismLangException |
VarList | createVarList () |
void | getRandomInitialState (RandomNumberGenerator rng, State initialState) throws PrismException |
boolean | rewardStructHasTransitionRewards (int i) |
void | doReachabilityAnalysis () throws PrismException |
Protected Attributes | |
PrismComponent | parent |
Updater | updater |
TransitionList | transitionList |
boolean | transitionListBuilt |
|
inline |
Build a ModulesFileModelGenerator for a particular PRISM model, represented by a ModuleFile instance.
modulesFile | The PRISM model |
|
inline |
Build a ModulesFileModelGenerator for a particular PRISM model, represented by a ModuleFile instance.
modulesFile | The PRISM model |
|
inline |
Calculates the state rewards associated with a specific state and store array.
state | The state the rewards are associated with |
store | The array of stored probabilities. TODO: not 100% sure this is correct |
PrismLangException |
|
inline |
Clears the perimeter states vector
|
inline |
Computes the transition target just based on a single index.
index | The index of the choice. |
PrismException |
|
inline |
Computes the target state of a transition from the current state based on the transition list. If state is absorbing, will always return a pointer to the current state.
index | The index of the choice. |
offset | The offset from that index to compute the target state for. |
PrismException |
|
inline |
Checks to see if the modules file contains unbounded variables.
|
inline |
Provides the list of variables associated with the PRISM model. TODO: why is this named createVarList() and not getVarList()?
|
inline |
Does reachability analysis and truncates state space based on values of Kappa (κ), and its reduction factor. This method performs a breadth first search to find most of the probability mass of the state space.
PrismException | Does not support anything other than CTMCs. |
|
inline |
Explores a particular state. If it's an absorbing state, clears its transition list, otherwise, it calculates a transition list for it.
exploreState | The state to explore. |
PrismException |
|
inline |
Determines if the final (truncated) model has absorbing states
|
inline |
|
inline |
Gets the choice action at an index. TODO: Why does this return null?
index | Index to look at. |
PrismException |
|
inline |
Gets the constant values associated with this PRISM model
|
inline |
Gets the state the model generator is about to explore.
|
inline |
Gets the global state set.
|
inline |
Gets the default initial state after model truncation.
PrismException |
|
inline |
Gets initial state for transition file.
PrismException |
|
inline |
Gets all initial states after model truncation.
PrismException |
|
inline |
Gets all initial states for transition matrix file.
PrismException |
|
inline |
Given a string with a desired label name, gets the index corresponding to that label.
label | The name of the label. |
|
inline |
Gets a label name at a particular index.
i | The index of the label name to get. |
PrismException |
|
inline |
Gets the label names.
|
inline |
Gets the model type
|
inline |
Gets the number of choices available for the state we are about to explore.
PrismException |
|
inline |
Gets the number of labels.
|
inline |
Gets the number of rewards structs.
|
inline |
Gets the number of transitions for the current state.
PrismException |
|
inline |
Gets the number of transitions for the choice at a specific index in the transitions list.
index | The index of the choice within the transition list to look at. |
PrismException |
|
inline |
Gets the number of variables in the PRISM modules file.
|
inline |
Gets a pointer to a vector containing all perimter states
|
inline |
Gets a random initial state given a random number generator.
rng | The RandomNumberGenerator to pass into the method. |
initialState | A pointer to the current initial state. |
PrismException | Multiple initial states not yet supported. |
|
inline |
Gets a particular reward struct at an index.
i | The index of the reward struct desired. |
|
inline |
Given a name of a rewards structure, gets the index of that rewards structure.
name | The name of the rewards structure. |
|
inline |
Gets all rewards structure names.
|
inline |
Gets the rewards from a rewards structure witha specific index associated with being at a certain state and taking a certain action.
r | The index of the rewards structure. |
state | The state we are at. |
action | The action we wish to take. |
PrismException |
|
inline |
Gets the total state reward at a specific index of rewards structure and a specific state.
r | The index of the reward structure. |
state | The state to evaluate the rewards structure at. |
PrismException |
|
inline |
Gets the action of the transition list at an index. If no transition list exists then it means that state is absorbing, so returns [Absorbing_State]
index | The index of the transition list to get. |
PrismException |
|
inline |
Gets the action of the transition list at an index and offset. If no transition list exists then state is absorbing, so returns [Absorbing_State].
index | The index to look at. |
offset | The offset to look at. |
PrismException |
|
inline |
Gets the transition probability using just an index.
index | The index to get the transition probability. |
PrismException |
|
inline |
Gets the probability that a particular choice and offset are taken. If the transistion list is not built, then the state is absorbing and the probability is 1.0.
index | The index of the choice. |
offset | The offset of the choice to get the probability from. |
PrismException |
|
inline |
Gets the variable names from the modules file.
|
inline |
Gets the types of each variable corresponding to the modules file.
|
inline |
Checks to see if there is an initial state.
PrismException |
|
inline |
Evaluates a label at an index and indicates whether it is currently true for the exploreState
i | The index of the label. |
PrismException |
|
inline |
Determines if a rewards structure at a specific index has transition rewards.
i | The index of the rewards structure. |
|
inline |
Set the property description
expr | (ExpressionTemporal) The property expression to set. |
|
inline |
set reachability threshold
th | (double) The new reachability threshold to set |
|
inline |
Sets constants which are undefined by the PRISM file passed in. This corresponds to the -const parameter passed into the stamina binary. This function is a wrapper for setSomeUndefinedConstants(Values, boolean)
someValues | The values to be passed in. |
PrismException |
|
inline |
Sets constants undefined by the PRISM file passed in. This corresponds to the -const parameter and allows the constants to be defined as exact or not.
someValues | The values to be passed in. |
exact | are these constants exact? |
PrismException |