1#ifndef STORM_STORAGE_EXPRESSIONS_BINARYEXPRESSION_H_
2#define STORM_STORAGE_EXPRESSIONS_BINARYEXPRESSION_H_
23 std::shared_ptr<BaseExpression const>
const& secondOperand);
36 virtual uint_fast64_t
getArity()
const override;
37 virtual std::shared_ptr<BaseExpression const>
getOperand(uint_fast64_t operandIndex)
const override;
38 virtual void gatherVariables(std::set<storm::expressions::Variable>& variables)
const override;
56 std::shared_ptr<BaseExpression const> firstOperand;
59 std::shared_ptr<BaseExpression const> secondOperand;
The base class of all expression classes.
The base class of all binary expressions.
BinaryExpression & operator=(BinaryExpression const &other)=delete
virtual uint_fast64_t getArity() const override
Returns the arity of the expression.
virtual ~BinaryExpression()=default
virtual bool containsVariables() const override
Retrieves whether the expression contains a variable.
BinaryExpression(BinaryExpression const &other)=default
std::shared_ptr< BaseExpression const > const & getSecondOperand() const
Retrieves the second operand of the expression.
BinaryExpression & operator=(BinaryExpression &&)=delete
virtual std::shared_ptr< BaseExpression const > getOperand(uint_fast64_t operandIndex) const override
Retrieves the given operand from the expression.
std::shared_ptr< BaseExpression const > const & getFirstOperand() const
Retrieves the first operand of the expression.
virtual void gatherVariables(std::set< storm::expressions::Variable > &variables) const override
Retrieves the set of all variables that appear in the expression.
virtual bool isFunctionApplication() const override
Checks if the expression is a function application (of any sort).
BinaryExpression(BinaryExpression &&)=default
This class is responsible for managing a set of typed variables and all expressions using these varia...