1#ifndef STORM_STORAGE_EXPRESSIONS_UNARYNUMERICALFUNCTIONEXPRESSION_H_
2#define STORM_STORAGE_EXPRESSIONS_UNARYNUMERICALFUNCTIONEXPRESSION_H_
39 virtual std::shared_ptr<BaseExpression const>
simplify()
const override;
52 virtual void printToStream(std::ostream& stream)
const override;
This class is responsible for managing a set of typed variables and all expressions using these varia...
UnaryNumericalFunctionExpression & operator=(UnaryNumericalFunctionExpression const &other)=delete
UnaryNumericalFunctionExpression & operator=(UnaryNumericalFunctionExpression &&)=delete
OperatorType
An enum type specifying the different functions applicable.
virtual int_fast64_t evaluateAsInt(Valuation const *valuation=nullptr) const override
Evaluates the expression under the valuation of unknowns (variables and constants) given by the valua...
virtual void printToStream(std::ostream &stream) const override
Prints the expression to the given stream.
OperatorType getOperatorType() const
Retrieves the operator associated with this expression.
virtual storm::expressions::OperatorType getOperator() const override
Retrieves the operator of a function application.
virtual std::shared_ptr< BaseExpression const > simplify() const override
Simplifies the expression according to some simple rules.
virtual bool isUnaryNumericalFunctionExpression() const override
virtual boost::any accept(ExpressionVisitor &visitor, boost::any const &data) const override
Accepts the given visitor by calling its visit method.
virtual ~UnaryNumericalFunctionExpression()=default
UnaryNumericalFunctionExpression(UnaryNumericalFunctionExpression &&)=default
UnaryNumericalFunctionExpression(UnaryNumericalFunctionExpression const &other)=default
virtual double evaluateAsDouble(Valuation const *valuation=nullptr) const override
Evaluates the expression under the valuation of unknowns (variables and constants) given by the valua...
The base class of all valuations of variables.