Storm
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
 
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.
 
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) 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 14 of file ParameterRegion.cpp.

◆ ParameterRegion() [2/5]

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

Definition at line 19 of file ParameterRegion.cpp.

◆ ParameterRegion() [3/5]

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

Definition at line 25 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 160 of file ParameterRegion.cpp.

◆ getBoundParent()

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

Definition at line 278 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 151 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 104 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 99 of file ParameterRegion.cpp.

◆ getLowerBoundaries()

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

Definition at line 114 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 69 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 61 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 263 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 247 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 146 of file ParameterRegion.cpp.

◆ getUpperBoundaries()

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

Definition at line 109 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 88 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 80 of file ParameterRegion.cpp.

◆ getVariables()

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

Definition at line 50 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 56 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 119 of file ParameterRegion.cpp.

◆ isSubRegion()

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

Definition at line 231 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 283 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 169 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 
) const

◆ toString()

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

Definition at line 203 of file ParameterRegion.cpp.


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