Storm 1.13.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
storm::dd::bisimulation::PartitionRefiner< DdType, ValueType > Class Template Reference

#include <PartitionRefiner.h>

Inheritance diagram for storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >:

Public Member Functions

 PartitionRefiner (storm::models::symbolic::Model< DdType, ValueType > const &model, Partition< DdType, ValueType > const &initialStatePartition)
virtual ~PartitionRefiner ()=default
virtual bool refine (SignatureMode const &mode=SignatureMode::Eager)
 Refines the partition.
bool refineWrtRewardModel (storm::models::symbolic::StandardRewardModel< DdType, ValueType > const &rewardModel)
 Refines the partition wrt.
Partition< DdType, ValueType > const & getStatePartition () const
 Retrieves the current state partition in the refinement process.
Signature< DdType, ValueType > getFullSignature () const
 Retrieves the full signature of all states wrt.
Status getStatus () const
 Retrieves the status of the refinement process.
std::chrono::high_resolution_clock::duration getTotalSignatureTime () const
std::chrono::high_resolution_clock::duration getTotalRefinementTime () const

Protected Member Functions

Partition< DdType, ValueType > internalRefine (SignatureComputer< DdType, ValueType > &stateSignatureComputer, SignatureRefiner< DdType, ValueType > &signatureRefiner, Partition< DdType, ValueType > const &oldPartition, Partition< DdType, ValueType > const &targetPartition, SignatureMode const &mode=SignatureMode::Eager)
Partition< DdType, ValueType > internalRefine (Signature< DdType, ValueType > const &signature, SignatureRefiner< DdType, ValueType > &signatureRefiner, Partition< DdType, ValueType > const &oldPartition)
virtual bool refineWrtStateRewards (storm::dd::Add< DdType, ValueType > const &stateRewards)
virtual bool refineWrtStateActionRewards (storm::dd::Add< DdType, ValueType > const &stateActionRewards)

Protected Attributes

Status status
uint64_t refinements
Partition< DdType, ValueType > statePartition
SignatureComputer< DdType, ValueType > signatureComputer
SignatureRefiner< DdType, ValueType > signatureRefiner
std::chrono::high_resolution_clock::duration totalSignatureTime
std::chrono::high_resolution_clock::duration totalRefinementTime

Detailed Description

template<storm::dd::DdType DdType, typename ValueType>
class storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >

Definition at line 21 of file PartitionRefiner.h.

Constructor & Destructor Documentation

◆ PartitionRefiner()

template<storm::dd::DdType DdType, typename ValueType>
storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::PartitionRefiner ( storm::models::symbolic::Model< DdType, ValueType > const & model,
Partition< DdType, ValueType > const & initialStatePartition )

Definition at line 15 of file PartitionRefiner.cpp.

◆ ~PartitionRefiner()

template<storm::dd::DdType DdType, typename ValueType>
virtual storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::~PartitionRefiner ( )
virtualdefault

Member Function Documentation

◆ getFullSignature()

template<storm::dd::DdType DdType, typename ValueType>
Signature< DdType, ValueType > storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::getFullSignature ( ) const

Retrieves the full signature of all states wrt.

the current state partition.

Definition at line 145 of file PartitionRefiner.cpp.

◆ getStatePartition()

template<storm::dd::DdType DdType, typename ValueType>
Partition< DdType, ValueType > const & storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::getStatePartition ( ) const

Retrieves the current state partition in the refinement process.

Definition at line 140 of file PartitionRefiner.cpp.

◆ getStatus()

template<storm::dd::DdType DdType, typename ValueType>
Status storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::getStatus ( ) const

Retrieves the status of the refinement process.

Definition at line 150 of file PartitionRefiner.cpp.

◆ getTotalRefinementTime()

template<storm::dd::DdType DdType, typename ValueType>
std::chrono::high_resolution_clock::duration storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::getTotalRefinementTime ( ) const

Definition at line 160 of file PartitionRefiner.cpp.

◆ getTotalSignatureTime()

template<storm::dd::DdType DdType, typename ValueType>
std::chrono::high_resolution_clock::duration storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::getTotalSignatureTime ( ) const

Definition at line 155 of file PartitionRefiner.cpp.

◆ internalRefine() [1/2]

template<storm::dd::DdType DdType, typename ValueType>
Partition< DdType, ValueType > storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::internalRefine ( Signature< DdType, ValueType > const & signature,
SignatureRefiner< DdType, ValueType > & signatureRefiner,
Partition< DdType, ValueType > const & oldPartition )
protected

Definition at line 92 of file PartitionRefiner.cpp.

◆ internalRefine() [2/2]

template<storm::dd::DdType DdType, typename ValueType>
Partition< DdType, ValueType > storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::internalRefine ( SignatureComputer< DdType, ValueType > & stateSignatureComputer,
SignatureRefiner< DdType, ValueType > & signatureRefiner,
Partition< DdType, ValueType > const & oldPartition,
Partition< DdType, ValueType > const & targetPartition,
SignatureMode const & mode = SignatureMode::Eager )
protected

Definition at line 41 of file PartitionRefiner.cpp.

◆ refine()

template<storm::dd::DdType DdType, typename ValueType>
bool storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::refine ( SignatureMode const & mode = SignatureMode::Eager)
virtual

Refines the partition.

Parameters
modeThe signature mode to use.
Returns
False iff the partition is stable and no refinement was actually performed.

Reimplemented in storm::dd::bisimulation::NondeterministicModelPartitionRefiner< DdType, ValueType >.

Definition at line 29 of file PartitionRefiner.cpp.

◆ refineWrtRewardModel()

template<storm::dd::DdType DdType, typename ValueType>
bool storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::refineWrtRewardModel ( storm::models::symbolic::StandardRewardModel< DdType, ValueType > const & rewardModel)

Refines the partition wrt.

to the reward model.

Returns
True iff the partition is stable and no refinement was actually performed.

Definition at line 106 of file PartitionRefiner.cpp.

◆ refineWrtStateActionRewards()

template<storm::dd::DdType DdType, typename ValueType>
bool storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::refineWrtStateActionRewards ( storm::dd::Add< DdType, ValueType > const & stateActionRewards)
protectedvirtual

Definition at line 133 of file PartitionRefiner.cpp.

◆ refineWrtStateRewards()

template<storm::dd::DdType DdType, typename ValueType>
bool storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::refineWrtStateRewards ( storm::dd::Add< DdType, ValueType > const & stateRewards)
protectedvirtual

Definition at line 121 of file PartitionRefiner.cpp.

Member Data Documentation

◆ refinements

template<storm::dd::DdType DdType, typename ValueType>
uint64_t storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::refinements
protected

Definition at line 73 of file PartitionRefiner.h.

◆ signatureComputer

template<storm::dd::DdType DdType, typename ValueType>
SignatureComputer<DdType, ValueType> storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::signatureComputer
protected

Definition at line 79 of file PartitionRefiner.h.

◆ signatureRefiner

template<storm::dd::DdType DdType, typename ValueType>
SignatureRefiner<DdType, ValueType> storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::signatureRefiner
protected

Definition at line 82 of file PartitionRefiner.h.

◆ statePartition

template<storm::dd::DdType DdType, typename ValueType>
Partition<DdType, ValueType> storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::statePartition
protected

Definition at line 76 of file PartitionRefiner.h.

◆ status

template<storm::dd::DdType DdType, typename ValueType>
Status storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::status
protected

Definition at line 70 of file PartitionRefiner.h.

◆ totalRefinementTime

template<storm::dd::DdType DdType, typename ValueType>
std::chrono::high_resolution_clock::duration storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::totalRefinementTime
protected

Definition at line 86 of file PartitionRefiner.h.

◆ totalSignatureTime

template<storm::dd::DdType DdType, typename ValueType>
std::chrono::high_resolution_clock::duration storm::dd::bisimulation::PartitionRefiner< DdType, ValueType >::totalSignatureTime
protected

Definition at line 85 of file PartitionRefiner.h.


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