Storm 1.13.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::expressions::LinearCoefficientVisitor Class Reference

#include <LinearCoefficientVisitor.h>

Inheritance diagram for storm::expressions::LinearCoefficientVisitor:
Collaboration diagram for storm::expressions::LinearCoefficientVisitor:

Classes

struct  VariableCoefficients

Public Member Functions

 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 was rewritten as a sum of atoms.
virtual boost::any visit (IfThenElseExpression const &expression, boost::any const &data) override
virtual boost::any visit (BinaryBooleanFunctionExpression const &expression, boost::any const &data) override
virtual boost::any visit (BinaryNumericalFunctionExpression const &expression, boost::any const &data) override
virtual boost::any visit (BinaryRelationExpression const &expression, boost::any const &data) override
virtual boost::any visit (VariableExpression const &expression, boost::any const &data) override
virtual boost::any visit (UnaryBooleanFunctionExpression const &expression, boost::any const &data) override
virtual boost::any visit (UnaryNumericalFunctionExpression const &expression, boost::any const &data) override
virtual boost::any visit (BooleanLiteralExpression const &expression, boost::any const &data) override
virtual boost::any visit (IntegerLiteralExpression const &expression, boost::any const &data) override
virtual boost::any visit (RationalLiteralExpression const &expression, boost::any const &data) override
Public Member Functions inherited from storm::expressions::ExpressionVisitor
virtual ~ExpressionVisitor ()=default
virtual boost::any visit (PredicateExpression const &expression, boost::any const &data)

Detailed Description

Definition at line 13 of file LinearCoefficientVisitor.h.

Constructor & Destructor Documentation

◆ LinearCoefficientVisitor()

storm::expressions::LinearCoefficientVisitor::LinearCoefficientVisitor ( )
default

Creates a linear coefficient visitor.

Member Function Documentation

◆ getLinearCoefficients()

LinearCoefficientVisitor::VariableCoefficients storm::expressions::LinearCoefficientVisitor::getLinearCoefficients ( Expression const & expression)

Computes the (double) coefficients of all identifiers appearing in the expression if the expression was rewritten as a sum of atoms.

. If the expression is not linear, an exception is thrown.

Parameters
expressionThe expression for which to compute the coefficients.
Returns
A structure representing the coefficients of the variables and the constant part.

Definition at line 92 of file LinearCoefficientVisitor.cpp.

◆ visit() [1/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( BinaryBooleanFunctionExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [2/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( BinaryNumericalFunctionExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [3/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( BinaryRelationExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [4/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( BooleanLiteralExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [5/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( IfThenElseExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [6/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( IntegerLiteralExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [7/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( RationalLiteralExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [8/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( UnaryBooleanFunctionExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [9/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( UnaryNumericalFunctionExpression const & expression,
boost::any const & data )
overridevirtual

◆ visit() [10/10]

boost::any storm::expressions::LinearCoefficientVisitor::visit ( VariableExpression const & expression,
boost::any const & data )
overridevirtual

The documentation for this class was generated from the following files: