Storm 1.10.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
Assignment.h
Go to the documentation of this file.
1#ifndef STORM_STORAGE_PRISM_ASSIGNMENT_H_
2#define STORM_STORAGE_PRISM_ASSIGNMENT_H_
3
4#include <map>
5
9
10namespace storm {
11namespace prism {
13 public:
22 Assignment(storm::expressions::Variable const& variable, storm::expressions::Expression const& expression, std::string const& filename = "",
23 uint_fast64_t lineNumber = 0);
24
25 // Create default implementations of constructors/assignment.
26 Assignment() = default;
27 Assignment(Assignment const& other) = default;
28 Assignment& operator=(Assignment const& other) = default;
29 Assignment(Assignment&& other) = default;
30 Assignment& operator=(Assignment&& other) = default;
31
37 std::string const& getVariableName() const;
38
45
52
59 Assignment substitute(std::map<storm::expressions::Variable, storm::expressions::Expression> const& substitution) const;
60
62
68 bool isIdentity() const;
69
70 friend std::ostream& operator<<(std::ostream& stream, Assignment const& assignment);
71
72 private:
73 // The variable written in this assignment.
75
76 // The expression that is assigned to the variable.
78};
79} // namespace prism
80} // namespace storm
81
82#endif /* STORM_STORAGE_PRISM_ASSIGNMENT_H_ */
storm::expressions::Variable const & getVariable() const
Retrieves the variable that is written to by this assignment.
Assignment(Assignment &&other)=default
std::string const & getVariableName() const
Retrieves the name of the variable that this assignment targets.
Assignment & operator=(Assignment &&other)=default
Assignment & operator=(Assignment const &other)=default
storm::expressions::Expression const & getExpression() const
Retrieves the expression that is assigned to the variable.
bool isIdentity() const
Checks whether the assignment is an identity (lhs equals rhs)
Assignment substitute(std::map< storm::expressions::Variable, storm::expressions::Expression > const &substitution) const
Substitutes all variables in the assignment according to the given map.
Assignment(Assignment const &other)=default
friend std::ostream & operator<<(std::ostream &stream, Assignment const &assignment)
Assignment substituteNonStandardPredicates() const
LabParser.cpp.