14template<
typename ValueType,
typename RewardModelType>
15class SparseModelMemoryProduct;
23 typedef std::vector<std::vector<boost::optional<storm::storage::BitVector>>>
TransitionMatrix;
40 std::vector<uint_fast64_t>
const& initialMemoryStates,
bool onlyInitialStatesRelevant =
true);
42 std::vector<uint_fast64_t>&& initialMemoryStates,
bool onlyInitialStatesRelevant =
true);
50 uint_fast64_t
getSuccessorMemoryState(uint_fast64_t
const& currentMemoryState, uint_fast64_t
const& modelTransitionIndex)
const;
63 template<
typename ValueType,
typename RewardModelType = storm::models::sparse::StandardRewardModel<ValueType>>
71 std::vector<uint_fast64_t> initialMemoryStates;
72 bool onlyInitialStatesRelevant;
Base class for all sparse models.
This class manages the labeling of the state space with a number of (atomic) labels.
This class represents a (deterministic) memory structure that can be used to encode certain events (s...
TransitionMatrix const & getTransitionMatrix() const
bool isOnlyInitialStatesRelevantSet() const
MemoryStructure product(MemoryStructure const &rhs) const
Builds the product of this memory structure and the given memory structure.
std::vector< std::vector< boost::optional< storm::storage::BitVector > > > TransitionMatrix
std::vector< uint_fast64_t > const & getInitialMemoryStates() const
std::string toString() const
uint_fast64_t getSuccessorMemoryState(uint_fast64_t const ¤tMemoryState, uint_fast64_t const &modelTransitionIndex) const
storm::models::sparse::StateLabeling const & getStateLabeling() const
uint_fast64_t getNumberOfStates() const
This class builds the product of the given sparse model and the given memory structure.