1#ifndef STORM_STORAGE_EXPRESSIONS_LINEARCOEFFICIENTVISITOR_H_
2#define STORM_STORAGE_EXPRESSIONS_LINEARCOEFFICIENTVISITOR_H_
12namespace expressions {
45 std::map<storm::expressions::Variable, double>::const_iterator
begin()
const;
46 std::map<storm::expressions::Variable, double>::const_iterator
end()
const;
51 std::map<storm::expressions::Variable, double> variableToCoefficientMapping;
LinearCoefficientVisitor()=default
Creates a linear coefficient visitor.
VariableCoefficients getLinearCoefficients(Expression const &expression)
Computes the (double) coefficients of all identifiers appearing in the expression if the expression w...
virtual boost::any visit(IfThenElseExpression const &expression, boost::any const &data) override
VariableCoefficients & operator-=(VariableCoefficients &&other)
std::map< storm::expressions::Variable, double >::const_iterator end() const
void separateVariablesFromConstantPart(VariableCoefficients &rhs)
Brings all variables of the right-hand side coefficients to the left-hand side by negating them and m...
double getCoefficient(storm::expressions::Variable const &variable)
VariableCoefficients & operator*=(VariableCoefficients &&other)
VariableCoefficients(VariableCoefficients const &other)=default
std::map< storm::expressions::Variable, double >::const_iterator begin() const
void setCoefficient(storm::expressions::Variable const &variable, double coefficient)
VariableCoefficients & operator/=(VariableCoefficients &&other)
VariableCoefficients(VariableCoefficients &&other)=default
double getConstantPart() const
VariableCoefficients & operator=(VariableCoefficients &&other)=default
VariableCoefficients & operator=(VariableCoefficients const &other)=default
VariableCoefficients & operator+=(VariableCoefficients &&other)