34 virtual std::shared_ptr<BaseExpression const>
simplify()
const override;
44 virtual uint_fast64_t
getArity()
const override;
46 virtual std::shared_ptr<BaseExpression const>
getOperand(uint_fast64_t operandIndex)
const override;
48 virtual void gatherVariables(std::set<storm::expressions::Variable> &variables)
const override;
59 virtual void printToStream(std::ostream &stream)
const override;
63 std::vector<std::shared_ptr<BaseExpression const>> operands;
The base class of all expression classes.
This class is responsible for managing a set of typed variables and all expressions using these varia...
The base class of all binary expressions.
virtual ~PredicateExpression()=default
PredicateExpression & operator=(PredicateExpression &&)=delete
virtual bool evaluateAsBool(Valuation const *valuation=nullptr) const override
Evaluates the expression under the valuation of unknowns (variables and constants) given by the valua...
virtual std::shared_ptr< BaseExpression const > simplify() const override
Simplifies the expression according to some simple rules.
PredicateExpression(PredicateExpression const &other)=default
virtual boost::any accept(ExpressionVisitor &visitor, boost::any const &data) const override
Accepts the given visitor by calling its visit method.
PredicateExpression & operator=(PredicateExpression const &other)=delete
PredicateExpression(PredicateExpression &&)=default
virtual std::shared_ptr< BaseExpression const > getOperand(uint_fast64_t operandIndex) const override
Retrieves the given operand from the expression.
PredicateType getPredicateType() const
Retrieves the relation associated with the expression.
virtual uint_fast64_t getArity() const override
Returns the arity of the expression.
virtual void printToStream(std::ostream &stream) const override
Prints the expression to the given stream.
virtual void gatherVariables(std::set< storm::expressions::Variable > &variables) const override
Retrieves the set of all variables that appear in the expression.
virtual bool containsVariables() const override
Retrieves whether the expression contains a variable.
virtual bool isPredicateExpression() const override
virtual bool isFunctionApplication() const override
Checks if the expression is a function application (of any sort).
virtual storm::expressions::OperatorType getOperator() const override
Retrieves the operator of a function application.
The base class of all valuations of variables.