|
| | Model () |
| | Creates an uninitialized model.
|
| |
| | Model (std::string const &name, ModelType const &modelType, uint64_t version=1, boost::optional< std::shared_ptr< storm::expressions::ExpressionManager > > const &expressionManager=boost::none) |
| | Creates an empty model with the given type.
|
| |
| | Model (Model const &other) |
| | Copies the given model.
|
| |
| Model & | operator= (Model const &other) |
| | Copy-assigns the given model.
|
| |
| | Model (Model &&other) |
| |
| Model & | operator= (Model &&other) |
| |
| storm::expressions::ExpressionManager & | getManager () const |
| | Retrieves the expression manager responsible for the expressions in the model.
|
| |
| uint64_t | getJaniVersion () const |
| | Retrieves the JANI-version of the model.
|
| |
| ModelType const & | getModelType () const |
| | Retrieves the type of the model.
|
| |
| void | setModelType (ModelType const &) |
| | Changes (only) the type declaration of the model.
|
| |
| ModelFeatures const & | getModelFeatures () const |
| | Retrieves the enabled model features.
|
| |
| ModelFeatures & | getModelFeatures () |
| | Retrieves the enabled model features.
|
| |
| std::string const & | getName () const |
| | Retrieves the name of the model.
|
| |
| void | setName (std::string const &newName) |
| | Sets the name of the model.
|
| |
| Model | flattenComposition (std::shared_ptr< storm::utility::solver::SmtSolverFactory > const &smtSolverFactory=std::make_shared< storm::utility::solver::SmtSolverFactory >()) const |
| | Flatten the composition to obtain an equivalent model that contains exactly one automaton that has the standard composition.
|
| |
| bool | hasAction (std::string const &name) const |
| | Checks whether the model has an action with the given name.
|
| |
| uint64_t | getActionIndex (std::string const &name) const |
| | Get the index of the action.
|
| |
| std::unordered_map< std::string, uint64_t > const & | getActionToIndexMap () const |
| | Retrieves the mapping from action names to their indices.
|
| |
| uint64_t | addAction (Action const &action) |
| | Adds an action to the model.
|
| |
| Action const & | getAction (uint64_t index) const |
| | Retrieves the action with the given index.
|
| |
| std::vector< Action > const & | getActions () const |
| | Retrieves the actions of the model.
|
| |
| std::map< uint64_t, std::string > | getActionIndexToNameMap () const |
| | Builds a map with action indices mapped to their names.
|
| |
| storm::storage::FlatSet< uint64_t > const & | getNonsilentActionIndices () const |
| | Retrieves all non-silent action indices of the model.
|
| |
| void | addConstant (Constant const &constant) |
| | Adds the given constant to the model.
|
| |
| bool | hasConstant (std::string const &name) const |
| | Retrieves whether the model has a constant with the given name.
|
| |
| void | removeConstant (std::string const &name) |
| | Removes (without checks) a constant from the model.
|
| |
| std::vector< Constant > const & | getConstants () const |
| | Retrieves the constants of the model.
|
| |
| std::vector< Constant > & | getConstants () |
| | Retrieves the constants of the model.
|
| |
| Constant const & | getConstant (std::string const &name) const |
| | Retrieves the constant with the given name (if any).
|
| |
| Variable const & | addVariable (Variable const &variable) |
| | Adds the given variable to this model.
|
| |
| VariableSet & | getGlobalVariables () |
| | Retrieves the variables of this automaton.
|
| |
| VariableSet const & | getGlobalVariables () const |
| | Retrieves the variables of this automaton.
|
| |
| std::set< storm::expressions::Variable > | getAllExpressionVariables (bool includeLocationExpressionVariables=false) const |
| | Retrieves all expression variables used by this model.
|
| |
| std::set< storm::expressions::Variable > | getAllLocationExpressionVariables () const |
| | Retrieves all location expression variables used by this model.
|
| |
| bool | hasGlobalVariable (std::string const &name) const |
| | Retrieves whether this model has a global variable with the given name.
|
| |
| Variable const & | getGlobalVariable (std::string const &name) const |
| | Retrieves the global variable with the given name if one exists.
|
| |
| bool | hasNonGlobalTransientVariable () const |
| | Retrieves whether this model has a non-global transient variable.
|
| |
| FunctionDefinition const & | addFunctionDefinition (FunctionDefinition const &functionDefinition) |
| | Adds the given function definition.
|
| |
| std::unordered_map< std::string, FunctionDefinition > const & | getGlobalFunctionDefinitions () const |
| | Retrieves all global function definitions.
|
| |
| std::unordered_map< std::string, FunctionDefinition > & | getGlobalFunctionDefinitions () |
| | Retrieves all global function definitions.
|
| |
| storm::expressions::ExpressionManager & | getExpressionManager () const |
| | Retrieves the manager responsible for the expressions in the JANI model.
|
| |
| bool | hasNonTrivialRewardExpression () const |
| | Returns true iff there is a non-trivial reward model, i.e., a reward model that does not consist of a single, global, numerical, transient variable.
|
| |
| bool | isNonTrivialRewardModelExpression (std::string const &identifier) const |
| | Returns true iff the given identifier corresponds to a non-trivial reward expression i.e., a reward model that does not consist of a single, global, numerical, transient variable.
|
| |
| bool | addNonTrivialRewardExpression (std::string const &identifier, storm::expressions::Expression const &rewardExpression) |
| | Adds a reward expression, i.e., a reward model that does not consist of a single, global, numerical, transient variable.
|
| |
| storm::expressions::Expression | getRewardModelExpression (std::string const &identifier) const |
| | Retrieves the defining reward expression of the reward model with the given identifier.
|
| |
| std::vector< std::pair< std::string, storm::expressions::Expression > > | getAllRewardModelExpressions () const |
| | Retrieves all available reward model names and expressions of the model.
|
| |
| std::unordered_map< std::string, storm::expressions::Expression > const & | getNonTrivialRewardExpressions () const |
| | Retrieves all available non-trivial reward model names and expressions of the model.
|
| |
| std::unordered_map< std::string, storm::expressions::Expression > & | getNonTrivialRewardExpressions () |
| | Retrieves all available non-trivial reward model names and expressions of the model.
|
| |
| uint64_t | addAutomaton (Automaton const &automaton) |
| | Adds the given automaton to the automata of this model.
|
| |
| std::vector< Automaton > & | getAutomata () |
| | Retrieves the automata of the model.
|
| |
| std::vector< Automaton > const & | getAutomata () const |
| | Retrieves the automata of the model.
|
| |
| void | replaceAutomaton (uint64_t index, Automaton const &newAutomaton) |
| | Replaces the automaton at index with a new automaton.
|
| |
| bool | hasAutomaton (std::string const &name) const |
| | Rerieves whether there exists an automaton with the given name.
|
| |
| Automaton & | getAutomaton (std::string const &name) |
| | Retrieves the automaton with the given name.
|
| |
| Automaton & | getAutomaton (uint64_t index) |
| | Retrieves the automaton with the given index.
|
| |
| Automaton const & | getAutomaton (uint64_t index) const |
| | Retrieves the automaton with the given index.
|
| |
| Automaton const & | getAutomaton (std::string const &name) const |
| | Retrieves the automaton with the given name.
|
| |
| uint64_t | getAutomatonIndex (std::string const &name) const |
| | Retrieves the index of the given automaton.
|
| |
| std::size_t | getNumberOfAutomata () const |
| | Retrieves the number of automata in this model.
|
| |
| std::size_t | getNumberOfEdges () const |
| | Retrieves the total number of edges in this model.
|
| |
| std::size_t | getTotalNumberOfNonTransientVariables () const |
| | Number of global and local variables.
|
| |
| InformationObject | getModelInformation () const |
| | Returns various information of this model.
|
| |
| void | setSystemComposition (std::shared_ptr< Composition > const &composition) |
| | Sets the system composition expression of the JANI model.
|
| |
| void | setStandardSystemComposition () |
| | Sets the system composition to be the fully-synchronizing parallel composition of all automat.
|
| |
| std::shared_ptr< Composition > | getStandardSystemComposition () const |
| | Gets the system composition as the standard, fully-synchronizing parallel composition.
|
| |
| Composition const & | getSystemComposition () const |
| | Retrieves the system composition expression.
|
| |
| void | simplifyComposition () |
| | Attempts to simplify the composition.
|
| |
| std::set< std::string > | getActionNames (bool includeSilent=true) const |
| | Retrieves the set of action names.
|
| |
| Model | defineUndefinedConstants (std::map< storm::expressions::Variable, storm::expressions::Expression > const &constantDefinitions) const |
| | Defines the undefined constants of the model by the given expressions.
|
| |
| bool | hasUndefinedConstants () const |
| | Retrieves whether the model still has undefined constants.
|
| |
| std::vector< std::reference_wrapper< Constant const > > | getUndefinedConstants () const |
| | Retrieves all undefined constants of the model.
|
| |
| Model & | replaceUnassignedVariablesWithConstants () |
| | Replaces each variable to which we never assign a value with a constant.
|
| |
| Model & | substituteConstantsInPlace (bool const substituteTranscendentalNumbers) |
| | Substitutes all constants in all expressions of the model.
|
| |
| Model | substituteConstants () const |
| | Substitutes all constants in all expressions of the model.
|
| |
| std::map< storm::expressions::Variable, storm::expressions::Expression > | getConstantsSubstitution () const |
| | Retrieves a mapping from expression variables associated with defined constants of the model to their (the constants') defining expression.
|
| |
| void | substitute (std::map< storm::expressions::Variable, storm::expressions::Expression > const &substitution, bool const substituteTranscendentalNumbers) |
| | Substitutes all expression variables in all expressions of the model.
|
| |
| void | substituteFunctions () |
| | Substitutes all function calls with the corresponding function definition.
|
| |
| void | substituteFunctions (std::vector< Property > &properties) |
| |
| Model | substituteConstantsFunctionsTranscendentals () const |
| |
| bool | containsArrayVariables () const |
| | Returns true if at least one array variable occurs in the model.
|
| |
| ArrayEliminatorData | eliminateArrays (bool keepNonTrivialArrayAccess=false) |
| | Eliminates occurring array variables and expressions by replacing array variables by multiple basic variables.
|
| |
| void | eliminateArrays (std::vector< Property > &properties) |
| | Eliminates occurring array variables and expressions by replacing array variables by multiple basic variables.
|
| |
| ModelFeatures | restrictToFeatures (ModelFeatures const &modelFeatures) |
| | Attempts to eliminate all features of this model that are not in the given set of features.
|
| |
| ModelFeatures | restrictToFeatures (ModelFeatures const &modelFeatures, std::vector< Property > &properties) |
| | Attempts to eliminate all features of this model and the given properties that are not in the given set of features.
|
| |
| bool | hasInitialStatesRestriction () const |
| | Retrieves whether there is an expression restricting the legal initial values of the global variables.
|
| |
| bool | hasNonTrivialInitialStates () const |
| | Retrieves whether there are non-trivial initial states in the model or any of the contained automata.
|
| |
| void | setInitialStatesRestriction (storm::expressions::Expression const &initialStatesRestriction) |
| | Sets the expression restricting the legal initial values of the global variables.
|
| |
| storm::expressions::Expression const & | getInitialStatesRestriction () const |
| | Gets the expression restricting the legal initial values of the global variables.
|
| |
| storm::expressions::Expression | getInitialStatesExpression () const |
| | Retrieves the expression defining the legal initial values of the variables.
|
| |
| bool | hasTrivialInitialStatesExpression () const |
| | Retrieves whether the initial states expression is trivial in the sense that no automaton has an initial states restriction and all variables have initial values.
|
| |
| storm::expressions::Expression | getInitialStatesExpression (std::vector< std::reference_wrapper< storm::jani::Automaton const > > const &automata) const |
| | Retrieves the expression defining the legal initial values of the variables.
|
| |
| bool | isDeterministicModel () const |
| | Determines whether this model is a deterministic one in the sense that each state only has one choice.
|
| |
| bool | isDiscreteTimeModel () const |
| | Determines whether this model is a discrete-time model.
|
| |
| std::vector< storm::expressions::Expression > | getAllRangeExpressions (std::vector< std::reference_wrapper< storm::jani::Automaton const > > const &automata={}) const |
| | Retrieves a list of expressions that characterize the legal values of the variables in this model.
|
| |
| bool | hasStandardComposition () const |
| | Retrieves whether this model has the standard composition, that is it composes all automata in parallel and synchronizes over all common actions.
|
| |
| bool | hasStandardCompliantComposition () const |
| | Checks whether the composition has no nesting.
|
| |
| void | finalize () |
| | After adding all components to the model, this method has to be called.
|
| |
| void | checkValid () const |
| | Checks if the model is valid JANI, which should be verified before any further operations are applied to a model.
|
| |
| storm::expressions::Expression | getLabelExpression (Variable const &transientVariable, std::vector< std::reference_wrapper< Automaton const > > const &automata) const |
| | Creates the expression that characterizes all states in which the provided transient boolean variable is true.
|
| |
| storm::expressions::Expression | getLabelExpression (Variable const &transientVariable) const |
| | Creates the expression that characterizes all states in which the provided transient boolean variable is true.
|
| |
| bool | undefinedConstantsAreGraphPreserving () const |
| | Checks that undefined constants (parameters) of the model preserve the graph of the underlying model.
|
| |
| void | liftTransientEdgeDestinationAssignments (int64_t maxLevel=0) |
| | Lifts the common edge destination assignments of transient variables to edge assignments.
|
| |
| bool | hasTransientEdgeDestinationAssignments () const |
| | Retrieves whether there is any transient edge destination assignment in the model.
|
| |
| bool | usesAssignmentLevels (bool onlyTransient=false) const |
| | Retrieves whether the model uses an assignment level other than zero.
|
| |
| bool | isLinear () const |
| | Checks the model for linearity.
|
| |
| void | makeStandardJaniCompliant () |
| |
| void | pushEdgeAssignmentsToDestinations () |
| |
| bool | reusesActionsInComposition () const |
| | Checks whether in the composition, actions are reused: That is, if the model is put in parallel composition and the same action potentially leads to multiple edges from the same state.
|
| |
| Model | restrictEdges (storm::storage::FlatSet< uint_fast64_t > const &automataAndEdgeIndices) const |
| | Creates a new model that only contains the selected edges.
|
| |
| void | writeDotToStream (std::ostream &outStream=std::cout) const |
| |