10template<
typename ValueType>
21 std::vector<ValueType>&
stateValues, std::vector<ValueType>& additionalStateValues);
24 std::vector<storm::storage::sparse::state_type>
const& statesToEliminate, std::vector<ValueType>&
stateValues,
25 std::vector<ValueType>& additionalStateValues);
35 std::vector<std::reference_wrapper<ValueTypeVector>> additionalStateValues;
void updatePredecessor(storm::storage::sparse::state_type const &predecessor, ValueType const &probability, storm::storage::sparse::state_type const &state) override
std::vector< ValueType > ValueTypeVector
std::shared_ptr< StatePriorityQueue > PriorityQueuePointer
MultiValueStateEliminator(storm::storage::FlexibleSparseMatrix< ValueType > &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > &backwardTransitions, PriorityQueuePointer priorityQueue, std::vector< ValueType > &stateValues, std::vector< ValueType > &additionalStateValues)
virtual void clearStateValues(storm::storage::sparse::state_type const &state) override
void updateValue(storm::storage::sparse::state_type const &state, ValueType const &loopProbability) override
PrioritizedStateEliminator(storm::storage::FlexibleSparseMatrix< ValueType > &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > &backwardTransitions, PriorityQueuePointer priorityQueue, std::vector< ValueType > &stateValues)
std::vector< ValueType > & stateValues
PriorityQueuePointer priorityQueue
The flexible sparse matrix is used during state elimination.