Storm 1.13.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::transformer::Product< Model > Class Template Reference

#include <Product.h>

Inheritance diagram for storm::transformer::Product< Model >:

Public Types

typedef std::shared_ptr< Product< Model > > ptr
typedef storm::storage::sparse::state_type state_type
typedef std::pair< state_type, state_typeproduct_state_type
typedef std::map< product_state_type, state_typeproduct_state_to_product_index_map
typedef std::vector< product_state_typeproduct_index_to_product_state_vector

Public Member Functions

 Product (Model &&productModel, std::string &&productStateOfInterestLabel, product_state_to_product_index_map &&productStateToProductIndex, product_index_to_product_state_vector &&productIndexToProductState)
 Product (Product< Model > &&product)=default
Productoperator= (Product< Model > &&product)=default
Model & getProductModel ()
state_type getModelState (state_type productStateIndex) const
state_type getAutomatonState (state_type productStateIndex) const
state_type getProductStateIndex (state_type modelState, state_type automatonState) const
bool isValidProductState (state_type modelState, state_type automatonState) const
storm::storage::BitVector liftFromAutomaton (const storm::storage::BitVector &vector) const
storm::storage::BitVector liftFromModel (const storm::storage::BitVector &vector) const
template<typename ValueType>
std::vector< ValueType > projectToOriginalModel (const Model &originalModel, const std::vector< ValueType > &prodValues)
template<typename ValueType>
std::vector< ValueType > projectToOriginalModel (std::size_t numberOfStates, const std::vector< ValueType > &prodValues)
const storm::storage::BitVectorgetStatesOfInterest () const
void printMapping (std::ostream &out) const

Detailed Description

template<typename Model>
class storm::transformer::Product< Model >

Definition at line 8 of file Product.h.

Member Typedef Documentation

◆ product_index_to_product_state_vector

template<typename Model>
typedef std::vector<product_state_type> storm::transformer::Product< Model >::product_index_to_product_state_vector

Definition at line 15 of file Product.h.

◆ product_state_to_product_index_map

template<typename Model>
typedef std::map<product_state_type, state_type> storm::transformer::Product< Model >::product_state_to_product_index_map

Definition at line 14 of file Product.h.

◆ product_state_type

template<typename Model>
typedef std::pair<state_type, state_type> storm::transformer::Product< Model >::product_state_type

Definition at line 13 of file Product.h.

◆ ptr

template<typename Model>
typedef std::shared_ptr<Product<Model> > storm::transformer::Product< Model >::ptr

Definition at line 10 of file Product.h.

◆ state_type

template<typename Model>
typedef storm::storage::sparse::state_type storm::transformer::Product< Model >::state_type

Definition at line 12 of file Product.h.

Constructor & Destructor Documentation

◆ Product() [1/2]

template<typename Model>
storm::transformer::Product< Model >::Product ( Model && productModel,
std::string && productStateOfInterestLabel,
product_state_to_product_index_map && productStateToProductIndex,
product_index_to_product_state_vector && productIndexToProductState )
inline

Definition at line 17 of file Product.h.

◆ Product() [2/2]

template<typename Model>
storm::transformer::Product< Model >::Product ( Product< Model > && product)
default

Member Function Documentation

◆ getAutomatonState()

template<typename Model>
state_type storm::transformer::Product< Model >::getAutomatonState ( state_type productStateIndex) const
inline

Definition at line 35 of file Product.h.

◆ getModelState()

template<typename Model>
state_type storm::transformer::Product< Model >::getModelState ( state_type productStateIndex) const
inline

Definition at line 31 of file Product.h.

◆ getProductModel()

template<typename Model>
Model & storm::transformer::Product< Model >::getProductModel ( )
inline

Definition at line 27 of file Product.h.

◆ getProductStateIndex()

template<typename Model>
state_type storm::transformer::Product< Model >::getProductStateIndex ( state_type modelState,
state_type automatonState ) const
inline

Definition at line 39 of file Product.h.

◆ getStatesOfInterest()

template<typename Model>
const storm::storage::BitVector & storm::transformer::Product< Model >::getStatesOfInterest ( ) const
inline

Definition at line 84 of file Product.h.

◆ isValidProductState()

template<typename Model>
bool storm::transformer::Product< Model >::isValidProductState ( state_type modelState,
state_type automatonState ) const
inline

Definition at line 43 of file Product.h.

◆ liftFromAutomaton()

template<typename Model>
storm::storage::BitVector storm::transformer::Product< Model >::liftFromAutomaton ( const storm::storage::BitVector & vector) const
inline

Definition at line 47 of file Product.h.

◆ liftFromModel()

template<typename Model>
storm::storage::BitVector storm::transformer::Product< Model >::liftFromModel ( const storm::storage::BitVector & vector) const
inline

Definition at line 58 of file Product.h.

◆ operator=()

template<typename Model>
Product & storm::transformer::Product< Model >::operator= ( Product< Model > && product)
default

◆ printMapping()

template<typename Model>
void storm::transformer::Product< Model >::printMapping ( std::ostream & out) const
inline

Definition at line 88 of file Product.h.

◆ projectToOriginalModel() [1/2]

template<typename Model>
template<typename ValueType>
std::vector< ValueType > storm::transformer::Product< Model >::projectToOriginalModel ( const Model & originalModel,
const std::vector< ValueType > & prodValues )
inline

Definition at line 70 of file Product.h.

◆ projectToOriginalModel() [2/2]

template<typename Model>
template<typename ValueType>
std::vector< ValueType > storm::transformer::Product< Model >::projectToOriginalModel ( std::size_t numberOfStates,
const std::vector< ValueType > & prodValues )
inline

Definition at line 75 of file Product.h.


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