Storm 1.11.1.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::storage::ParameterRegion< ParametricType > Class Template Reference

#include <ParameterRegion.h>

Public Types

typedef storm::utility::parametric::VariableType< ParametricType >::type VariableType
 
typedef storm::utility::parametric::CoefficientType< ParametricType >::type CoefficientType
 
typedef storm::utility::parametric::Valuation< ParametricType > Valuation
 

Public Member Functions

 ParameterRegion ()
 
 ParameterRegion (Valuation const &lowerBoundaries, Valuation const &upperBoundaries)
 
 ParameterRegion (Valuation &&lowerBoundaries, Valuation &&upperBoundaries)
 
 ParameterRegion (ParameterRegion< ParametricType > const &other)=default
 
 ParameterRegion (ParameterRegion< ParametricType > &&other)=default
 
ParameterRegion< ParametricType > & operator= (ParameterRegion< ParametricType > const &other)=default
 
virtual ~ParameterRegion ()=default
 
std::set< VariableType > const & getVariables () const
 
std::multimap< CoefficientType, VariableType > const & getVariablesSorted () const
 
CoefficientType const & getLowerBoundary (VariableType const &variable) const
 
CoefficientType const & getLowerBoundary (const std::string varName) const
 
CoefficientType const & getUpperBoundary (VariableType const &variable) const
 
CoefficientType const & getUpperBoundary (const std::string varName) const
 
CoefficientType getDifference (const std::string varName) const
 
CoefficientType getDifference (VariableType const &variable) const
 
CoefficientType getCenter (const std::string varName) const
 
CoefficientType getCenter (VariableType const &variable) const
 
Valuation const & getLowerBoundaries () const
 
Valuation const & getUpperBoundaries () const
 
std::vector< ValuationgetVerticesOfRegion (std::set< VariableType > const &consideredVariables) const
 Returns a vector of all possible combinations of lower and upper bounds of the given variables.
 
Valuation getSomePoint () const
 Returns some point that lies within this region.
 
Valuation getCenterPoint () const
 Returns the center point of this region.
 
CoefficientType area () const
 Returns the area of this region.
 
bool contains (Valuation const &point) const
 Returns whether the given point is in this region.
 
void split (Valuation const &splittingPoint, std::vector< ParameterRegion< ParametricType > > &regionVector) const
 Splits the region at the given point and inserts the resulting subregions at the end of the given vector.
 
void split (Valuation const &splittingPoint, std::vector< ParameterRegion< ParametricType > > &regionVector, std::set< VariableType > const &consideredVariables, std::set< VariableType > const &discreteVariables) const
 
Valuation getPoint (storm::solver::OptimizationDirection dir, storm::analysis::MonotonicityResult< VariableType > &monRes) const
 
Valuation getPoint (storm::solver::OptimizationDirection dir, std::set< VariableType > const &possibleMonotoneIncrParameters, std::set< VariableType > const &monDecrParameters) const
 
std::string toString (bool boundariesAsDouble=false) const
 
bool isSubRegion (ParameterRegion< ParametricType > region)
 
CoefficientType getBoundParent ()
 
void setBoundParent (CoefficientType bound)
 

Detailed Description

template<typename ParametricType>
class storm::storage::ParameterRegion< ParametricType >

Definition at line 12 of file ParameterRegion.h.

Member Typedef Documentation

◆ CoefficientType

template<typename ParametricType >
typedef storm::utility::parametric::CoefficientType<ParametricType>::type storm::storage::ParameterRegion< ParametricType >::CoefficientType

Definition at line 15 of file ParameterRegion.h.

◆ Valuation

template<typename ParametricType >
typedef storm::utility::parametric::Valuation<ParametricType> storm::storage::ParameterRegion< ParametricType >::Valuation

Definition at line 16 of file ParameterRegion.h.

◆ VariableType

template<typename ParametricType >
typedef storm::utility::parametric::VariableType<ParametricType>::type storm::storage::ParameterRegion< ParametricType >::VariableType

Definition at line 14 of file ParameterRegion.h.

Constructor & Destructor Documentation

◆ ParameterRegion() [1/5]

template<typename ParametricType >
storm::storage::ParameterRegion< ParametricType >::ParameterRegion ( )

Definition at line 15 of file ParameterRegion.cpp.

◆ ParameterRegion() [2/5]

template<typename ParametricType >
storm::storage::ParameterRegion< ParametricType >::ParameterRegion ( Valuation const &  lowerBoundaries,
Valuation const &  upperBoundaries 
)

Definition at line 20 of file ParameterRegion.cpp.

◆ ParameterRegion() [3/5]

template<typename ParametricType >
storm::storage::ParameterRegion< ParametricType >::ParameterRegion ( Valuation &&  lowerBoundaries,
Valuation &&  upperBoundaries 
)

Definition at line 26 of file ParameterRegion.cpp.

◆ ParameterRegion() [4/5]

template<typename ParametricType >
storm::storage::ParameterRegion< ParametricType >::ParameterRegion ( ParameterRegion< ParametricType > const &  other)
default

◆ ParameterRegion() [5/5]

template<typename ParametricType >
storm::storage::ParameterRegion< ParametricType >::ParameterRegion ( ParameterRegion< ParametricType > &&  other)
default

◆ ~ParameterRegion()

template<typename ParametricType >
virtual storm::storage::ParameterRegion< ParametricType >::~ParameterRegion ( )
virtualdefault

Member Function Documentation

◆ area()

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::area ( ) const

Returns the area of this region.

Definition at line 171 of file ParameterRegion.cpp.

◆ contains()

template<typename ParametricType >
bool storm::storage::ParameterRegion< ParametricType >::contains ( Valuation const &  point) const

Returns whether the given point is in this region.

Definition at line 187 of file ParameterRegion.cpp.

◆ getBoundParent()

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::getBoundParent ( )

Definition at line 326 of file ParameterRegion.cpp.

◆ getCenter() [1/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::getCenter ( const std::string  varName) const

Definition at line 115 of file ParameterRegion.cpp.

◆ getCenter() [2/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::getCenter ( VariableType const &  variable) const

Definition at line 110 of file ParameterRegion.cpp.

◆ getCenterPoint()

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation storm::storage::ParameterRegion< ParametricType >::getCenterPoint ( ) const

Returns the center point of this region.

Definition at line 162 of file ParameterRegion.cpp.

◆ getDifference() [1/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::getDifference ( const std::string  varName) const

Definition at line 105 of file ParameterRegion.cpp.

◆ getDifference() [2/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType storm::storage::ParameterRegion< ParametricType >::getDifference ( VariableType const &  variable) const

Definition at line 100 of file ParameterRegion.cpp.

◆ getLowerBoundaries()

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation const & storm::storage::ParameterRegion< ParametricType >::getLowerBoundaries ( ) const

Definition at line 125 of file ParameterRegion.cpp.

◆ getLowerBoundary() [1/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType const & storm::storage::ParameterRegion< ParametricType >::getLowerBoundary ( const std::string  varName) const

Definition at line 70 of file ParameterRegion.cpp.

◆ getLowerBoundary() [2/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType const & storm::storage::ParameterRegion< ParametricType >::getLowerBoundary ( VariableType const &  variable) const

Definition at line 62 of file ParameterRegion.cpp.

◆ getPoint() [1/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation storm::storage::ParameterRegion< ParametricType >::getPoint ( storm::solver::OptimizationDirection  dir,
std::set< VariableType > const &  possibleMonotoneIncrParameters,
std::set< VariableType > const &  monDecrParameters 
) const

Definition at line 311 of file ParameterRegion.cpp.

◆ getPoint() [2/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation storm::storage::ParameterRegion< ParametricType >::getPoint ( storm::solver::OptimizationDirection  dir,
storm::analysis::MonotonicityResult< VariableType > &  monRes 
) const

Definition at line 295 of file ParameterRegion.cpp.

◆ getSomePoint()

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation storm::storage::ParameterRegion< ParametricType >::getSomePoint ( ) const

Returns some point that lies within this region.

Definition at line 157 of file ParameterRegion.cpp.

◆ getUpperBoundaries()

template<typename ParametricType >
ParameterRegion< ParametricType >::Valuation const & storm::storage::ParameterRegion< ParametricType >::getUpperBoundaries ( ) const

Definition at line 120 of file ParameterRegion.cpp.

◆ getUpperBoundary() [1/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType const & storm::storage::ParameterRegion< ParametricType >::getUpperBoundary ( const std::string  varName) const

Definition at line 89 of file ParameterRegion.cpp.

◆ getUpperBoundary() [2/2]

template<typename ParametricType >
ParameterRegion< ParametricType >::CoefficientType const & storm::storage::ParameterRegion< ParametricType >::getUpperBoundary ( VariableType const &  variable) const

Definition at line 81 of file ParameterRegion.cpp.

◆ getVariables()

template<typename ParametricType >
std::set< typename ParameterRegion< ParametricType >::VariableType > const & storm::storage::ParameterRegion< ParametricType >::getVariables ( ) const

Definition at line 51 of file ParameterRegion.cpp.

◆ getVariablesSorted()

template<typename ParametricType >
std::multimap< typename ParameterRegion< ParametricType >::CoefficientType, typename ParameterRegion< ParametricType >::VariableType > const & storm::storage::ParameterRegion< ParametricType >::getVariablesSorted ( ) const

Definition at line 57 of file ParameterRegion.cpp.

◆ getVerticesOfRegion()

template<typename ParametricType >
std::vector< typename ParameterRegion< ParametricType >::Valuation > storm::storage::ParameterRegion< ParametricType >::getVerticesOfRegion ( std::set< VariableType > const &  consideredVariables) const

Returns a vector of all possible combinations of lower and upper bounds of the given variables.

The first entry of the returned vector will map every variable to its lower bound The second entry will map every variable to its lower bound, except the first one (i.e. *getVariables.begin()) ... The last entry will map every variable to its upper bound

If the given set of variables is empty, the returned vector will contain an empty map

Definition at line 130 of file ParameterRegion.cpp.

◆ isSubRegion()

template<typename ParametricType >
bool storm::storage::ParameterRegion< ParametricType >::isSubRegion ( ParameterRegion< ParametricType >  region)

Definition at line 279 of file ParameterRegion.cpp.

◆ operator=()

template<typename ParametricType >
ParameterRegion< ParametricType > & storm::storage::ParameterRegion< ParametricType >::operator= ( ParameterRegion< ParametricType > const &  other)
default

◆ setBoundParent()

template<typename ParametricType >
void storm::storage::ParameterRegion< ParametricType >::setBoundParent ( CoefficientType  bound)

Definition at line 331 of file ParameterRegion.cpp.

◆ split() [1/2]

template<typename ParametricType >
void storm::storage::ParameterRegion< ParametricType >::split ( Valuation const &  splittingPoint,
std::vector< ParameterRegion< ParametricType > > &  regionVector 
) const

Splits the region at the given point and inserts the resulting subregions at the end of the given vector.

It is assumed that the point lies within this region. Subregions with area()==0 are not inserted in the vector.

Definition at line 200 of file ParameterRegion.cpp.

◆ split() [2/2]

template<typename ParametricType >
void storm::storage::ParameterRegion< ParametricType >::split ( Valuation const &  splittingPoint,
std::vector< ParameterRegion< ParametricType > > &  regionVector,
std::set< VariableType > const &  consideredVariables,
std::set< VariableType > const &  discreteVariables 
) const

◆ toString()

template<typename ParametricType >
std::string storm::storage::ParameterRegion< ParametricType >::toString ( bool  boundariesAsDouble = false) const

Definition at line 251 of file ParameterRegion.cpp.


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