3#include <boost/optional.hpp>
15template<
typename ValueType>
18template<
typename ValueType>
33template<
typename ValueType>
39template<
typename ValueType>
41 storm::storage::FlexibleSparseMatrix<ValueType>
const& backwardTransitions,
42 std::vector<ValueType>
const& oneStepProbabilities);
44template<
typename ValueType>
46 storm::storage::FlexibleSparseMatrix<ValueType>
const& transitionMatrix,
47 storm::storage::FlexibleSparseMatrix<ValueType>
const& backwardTransitions,
48 std::vector<ValueType>
const& oneStepProbabilities);
50template<
typename ValueType>
52 storm::storage::FlexibleSparseMatrix<ValueType>
const& transitionMatrix,
53 storm::storage::FlexibleSparseMatrix<ValueType>
const& backwardTransitions,
54 std::vector<ValueType>
const& oneStepProbabilities, storm::storage::BitVector
const& states);
57std::shared_ptr<StatePriorityQueue>
createStatePriorityQueue(std::vector<storm::storage::sparse::state_type>
const& states);
59template<
typename ValueType>
61 storm::storage::SparseMatrix<ValueType>
const& transitionMatrixTransposed,
62 storm::storage::BitVector
const& initialStates, std::vector<ValueType>
const& oneStepProbabilities,
63 bool forward,
bool reverse);
65template<
typename ValueType>
66std::vector<uint_fast64_t>
getStateDistances(storm::storage::SparseMatrix<ValueType>
const& transitionMatrix,
67 storm::storage::SparseMatrix<ValueType>
const& transitionMatrixTransposed,
68 storm::storage::BitVector
const& initialStates, std::vector<ValueType>
const& oneStepProbabilities,
bool forward);
A bit vector that is internally represented as a vector of 64-bit values.
The flexible sparse matrix is used during state elimination.
A class that holds a possibly non-square matrix in the compressed row storage format.
bool eliminationOrderIsStatic(EliminationOrder const &order)
uint_fast64_t estimateComplexity(ValueType const &)
bool eliminationOrderNeedsReversedDistances(EliminationOrder const &order)
bool eliminationOrderNeedsForwardDistances(EliminationOrder const &order)
bool eliminationOrderIsPenaltyBased(EliminationOrder const &order)
std::vector< uint_fast64_t > getStateDistances(storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &transitionMatrixTransposed, storm::storage::BitVector const &initialStates, std::vector< ValueType > const &oneStepProbabilities, bool forward)
std::shared_ptr< StatePriorityQueue > createStatePriorityQueue(EliminationOrder const &order, boost::optional< std::vector< uint_fast64_t > > const &distanceBasedStatePriorities, storm::storage::FlexibleSparseMatrix< ValueType > const &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &oneStepProbabilities, storm::storage::BitVector const &states)
bool eliminationOrderNeedsDistances(EliminationOrder const &order)
uint_fast64_t computeStatePenaltyRegularExpression(storm::storage::sparse::state_type const &state, storm::storage::FlexibleSparseMatrix< ValueType > const &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &)
EliminationOrder
An enum that contains all available state elimination orders.
uint_fast64_t computeStatePenalty(storm::storage::sparse::state_type const &state, storm::storage::FlexibleSparseMatrix< ValueType > const &transitionMatrix, storm::storage::FlexibleSparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &oneStepProbabilities)
std::vector< uint_fast64_t > getDistanceBasedPriorities(EliminationOrder const &order, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &transitionMatrixTransposed, storm::storage::BitVector const &initialStates, std::vector< ValueType > const &oneStepProbabilities, bool forward, bool reverse)
carl::RationalFunction< Polynomial, true > RationalFunction