12template<
typename ValueType>
15 std::vector<storm::storage::sparse::state_type>
const& statesToEliminate,
19template<
typename ValueType>
25template<
typename ValueType>
30template<
typename ValueType>
37template<
typename ValueType>
42template<
typename ValueType>
47 if (removeForwardTransitions) {
53template<
typename ValueType>
virtual void updatePriority(storm::storage::sparse::state_type const &state) override
PrioritizedStateEliminator(storm::storage::FlexibleSparseMatrix< ValueType > &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > &backwardTransitions, PriorityQueuePointer priorityQueue, std::vector< ValueType > &stateValues)
virtual void clearStateValues(storm::storage::sparse::state_type const &state)
virtual void eliminateAll(bool eliminateForwardTransitions=true)
virtual void updateValue(storm::storage::sparse::state_type const &state, ValueType const &loopProbability) override
std::shared_ptr< StatePriorityQueue > PriorityQueuePointer
std::vector< ValueType > & stateValues
virtual void updatePredecessor(storm::storage::sparse::state_type const &predecessor, ValueType const &probability, storm::storage::sparse::state_type const &state) override
PriorityQueuePointer priorityQueue
StateEliminator(storm::storage::FlexibleSparseMatrix< ValueType > &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > &backwardTransitions)
void eliminateState(storm::storage::sparse::state_type state, bool removeForwardTransitions)
The flexible sparse matrix is used during state elimination.
ValueType simplify(ValueType value)