Storm 1.11.1.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
HybridCtmcCslHelper.h
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4
6
8
10
12
13namespace storm {
14
15class Environment;
16
17namespace modelchecker::helper {
18
20 public:
21 template<storm::dd::DdType DdType, typename ValueType>
23 static std::unique_ptr<CheckResult> computeBoundedUntilProbabilities(Environment const& env, storm::models::symbolic::Ctmc<DdType, ValueType> const& model,
24 bool onlyInitialStatesRelevant, storm::dd::Add<DdType, ValueType> const& rateMatrix,
25 storm::dd::Add<DdType, ValueType> const& exitRateVector,
26 storm::dd::Bdd<DdType> const& phiStates, storm::dd::Bdd<DdType> const& psiStates,
27 bool qualitative, ValueType lowerBound, ValueType upperBound);
28
29 template<storm::dd::DdType DdType, typename ValueType>
31 static std::unique_ptr<CheckResult> computeInstantaneousRewards(
32 Environment const& env, storm::models::symbolic::Ctmc<DdType, ValueType> const& model, bool onlyInitialStatesRelevant,
33 storm::dd::Add<DdType, ValueType> const& rateMatrix, storm::dd::Add<DdType, ValueType> const& exitRateVector,
34 typename storm::models::symbolic::Model<DdType, ValueType>::RewardModelType const& rewardModel, ValueType timeBound);
35
36 template<storm::dd::DdType DdType, typename ValueType>
38 static std::unique_ptr<CheckResult> computeCumulativeRewards(Environment const& env, storm::models::symbolic::Ctmc<DdType, ValueType> const& model,
39 bool onlyInitialStatesRelevant, storm::dd::Add<DdType, ValueType> const& rateMatrix,
40 storm::dd::Add<DdType, ValueType> const& exitRateVector,
42 ValueType timeBound);
43
44 template<storm::dd::DdType DdType, typename ValueType>
45 static std::unique_ptr<CheckResult> computeUntilProbabilities(Environment const& env, storm::models::symbolic::Ctmc<DdType, ValueType> const& model,
46 storm::dd::Add<DdType, ValueType> const& rateMatrix,
47 storm::dd::Add<DdType, ValueType> const& exitRateVector,
48 storm::dd::Bdd<DdType> const& phiStates, storm::dd::Bdd<DdType> const& psiStates,
49 bool qualitative);
50
51 template<storm::dd::DdType DdType, typename ValueType>
52 static std::unique_ptr<CheckResult> computeReachabilityRewards(
55 storm::dd::Bdd<DdType> const& targetStates, bool qualitative);
56
57 template<storm::dd::DdType DdType, typename ValueType>
58 static std::unique_ptr<CheckResult> computeNextProbabilities(Environment const& env, storm::models::symbolic::Ctmc<DdType, ValueType> const& model,
59 storm::dd::Add<DdType, ValueType> const& rateMatrix,
60 storm::dd::Add<DdType, ValueType> const& exitRateVector,
61 storm::dd::Bdd<DdType> const& nextStates);
62
71 template<storm::dd::DdType DdType, typename ValueType>
73 storm::dd::Add<DdType, ValueType> const& exitRateVector);
74
84 template<storm::dd::DdType DdType, typename ValueType>
86 storm::dd::Add<DdType, ValueType> const& transitionMatrix,
87 storm::dd::Add<DdType, ValueType> const& exitRateVector,
88 storm::dd::Bdd<DdType> const& maybeStates, ValueType uniformizationRate);
89};
90
91} // namespace modelchecker::helper
92} // namespace storm
static ::SupportsExponential std::unique_ptr< CheckResult > computeCumulativeRewards(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, bool onlyInitialStatesRelevant, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, typename storm::models::symbolic::Model< DdType, ValueType >::RewardModelType const &rewardModel, ValueType timeBound)
static storm::dd::Add< DdType, ValueType > computeProbabilityMatrix(storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector)
Converts the given rate-matrix into a time-abstract probability matrix.
static ::SupportsExponential std::unique_ptr< CheckResult > computeBoundedUntilProbabilities(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, bool onlyInitialStatesRelevant, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &phiStates, storm::dd::Bdd< DdType > const &psiStates, bool qualitative, ValueType lowerBound, ValueType upperBound)
static ::SupportsExponential std::unique_ptr< CheckResult > computeInstantaneousRewards(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, bool onlyInitialStatesRelevant, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, typename storm::models::symbolic::Model< DdType, ValueType >::RewardModelType const &rewardModel, ValueType timeBound)
static std::unique_ptr< CheckResult > computeNextProbabilities(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &nextStates)
static storm::dd::Add< DdType, ValueType > computeUniformizedMatrix(storm::models::symbolic::Ctmc< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &transitionMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &maybeStates, ValueType uniformizationRate)
Computes the matrix representing the transitions of the uniformized CTMC.
static std::unique_ptr< CheckResult > computeReachabilityRewards(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, typename storm::models::symbolic::Model< DdType, ValueType >::RewardModelType const &rewardModel, storm::dd::Bdd< DdType > const &targetStates, bool qualitative)
static std::unique_ptr< CheckResult > computeUntilProbabilities(Environment const &env, storm::models::symbolic::Ctmc< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &rateMatrix, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &phiStates, storm::dd::Bdd< DdType > const &psiStates, bool qualitative)
This class represents a continuous-time Markov chain.
Definition Ctmc.h:14
LabParser.cpp.