Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SparseMarkovAutomatonCslHelper.h
Go to the documentation of this file.
1#pragma once
2
3#include <optional>
4
14
15namespace storm {
16
17class Environment;
18
19namespace modelchecker {
20namespace helper {
21
23 public:
24 template<typename ValueType, typename std::enable_if<storm::NumberTraits<ValueType>::SupportsExponential, int>::type = 0>
25 static std::vector<ValueType> computeBoundedUntilProbabilities(Environment const& env, storm::solver::SolveGoal<ValueType>&& goal,
26 storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
27 std::vector<ValueType> const& exitRateVector,
28 storm::storage::BitVector const& markovianStates, storm::storage::BitVector const& phiStates,
29 storm::storage::BitVector const& psiStates,
30 std::pair<double, std::optional<double>> const& boundsPair);
31
32 template<typename ValueType, typename std::enable_if<!storm::NumberTraits<ValueType>::SupportsExponential, int>::type = 0>
34 storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
35 std::vector<ValueType> const& exitRateVector,
36 storm::storage::BitVector const& markovianStates, storm::storage::BitVector const& phiStates,
37 storm::storage::BitVector const& psiStates,
38 std::pair<double, std::optional<double>> const& boundsPair);
39
40 template<typename ValueType>
42 storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
43 storm::storage::SparseMatrix<ValueType> const& backwardTransitions,
44 storm::storage::BitVector const& phiStates,
45 storm::storage::BitVector const& psiStates, bool qualitative,
46 bool produceScheduler);
47
48 template<typename ValueType, typename RewardModelType>
50 Environment const& env, OptimizationDirection dir, storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
51 storm::storage::SparseMatrix<ValueType> const& backwardTransitions, std::vector<ValueType> const& exitRateVector,
52 storm::storage::BitVector const& markovianStates, RewardModelType const& rewardModel, bool produceScheduler);
53
54 template<typename ValueType, typename RewardModelType>
56 Environment const& env, OptimizationDirection dir, storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
57 storm::storage::SparseMatrix<ValueType> const& backwardTransitions, std::vector<ValueType> const& exitRateVector,
58 storm::storage::BitVector const& markovianStates, RewardModelType const& rewardModel, storm::storage::BitVector const& psiStates,
59 bool produceScheduler);
60
61 template<typename ValueType>
63 Environment const& env, OptimizationDirection dir, storm::storage::SparseMatrix<ValueType> const& transitionMatrix,
64 storm::storage::SparseMatrix<ValueType> const& backwardTransitions, std::vector<ValueType> const& exitRateVector,
65 storm::storage::BitVector const& markovianStates, storm::storage::BitVector const& psiStates, bool produceScheduler);
66};
67
68} // namespace helper
69} // namespace modelchecker
70} // namespace storm
static std::vector< ValueType > computeBoundedUntilProbabilities(Environment const &env, storm::solver::SolveGoal< ValueType > &&goal, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, std::vector< ValueType > const &exitRateVector, storm::storage::BitVector const &markovianStates, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates, std::pair< double, std::optional< double > > const &boundsPair)
static std::vector< ValueType > computeBoundedUntilProbabilities(Environment const &env, storm::solver::SolveGoal< ValueType > &&goal, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, std::vector< ValueType > const &exitRateVector, storm::storage::BitVector const &markovianStates, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates, std::pair< double, std::optional< double > > const &boundsPair)
static MDPSparseModelCheckingHelperReturnType< ValueType > computeUntilProbabilities(Environment const &env, OptimizationDirection dir, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &backwardTransitions, storm::storage::BitVector const &phiStates, storm::storage::BitVector const &psiStates, bool qualitative, bool produceScheduler)
static MDPSparseModelCheckingHelperReturnType< ValueType, storm::utility::ExtendedValueType< ValueType > > computeTotalRewards(Environment const &env, OptimizationDirection dir, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &exitRateVector, storm::storage::BitVector const &markovianStates, RewardModelType const &rewardModel, bool produceScheduler)
static MDPSparseModelCheckingHelperReturnType< ValueType, storm::utility::ExtendedValueType< ValueType > > computeReachabilityTimes(Environment const &env, OptimizationDirection dir, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &exitRateVector, storm::storage::BitVector const &markovianStates, storm::storage::BitVector const &psiStates, bool produceScheduler)
static MDPSparseModelCheckingHelperReturnType< ValueType, storm::utility::ExtendedValueType< ValueType > > computeReachabilityRewards(Environment const &env, OptimizationDirection dir, storm::storage::SparseMatrix< ValueType > const &transitionMatrix, storm::storage::SparseMatrix< ValueType > const &backwardTransitions, std::vector< ValueType > const &exitRateVector, storm::storage::BitVector const &markovianStates, RewardModelType const &rewardModel, storm::storage::BitVector const &psiStates, bool produceScheduler)
A bit vector that is internally represented as a vector of 64-bit values.
Definition BitVector.h:16
A class that holds a possibly non-square matrix in the compressed row storage format.
solver::OptimizationDirection OptimizationDirection