Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
HybridMarkovAutomatonCslHelper.h
Go to the documentation of this file.
1#pragma once
2
3#include <optional>
4
5#include <memory>
6
8
10
13
14namespace storm {
15
16class Environment;
17
18namespace modelchecker {
19namespace helper {
20
22 public:
23 template<storm::dd::DdType DdType, typename ValueType>
24 static std::unique_ptr<CheckResult> computeReachabilityRewards(
26 storm::dd::Add<DdType, ValueType> const& transitionMatrix, storm::dd::Bdd<DdType> const& markovianStates,
28 storm::dd::Bdd<DdType> const& targetStates, bool qualitative);
29
30 template<storm::dd::DdType DdType, typename ValueType, typename std::enable_if<storm::NumberTraits<ValueType>::SupportsExponential, int>::type = 0>
31 static std::unique_ptr<CheckResult> computeBoundedUntilProbabilities(Environment const& env, OptimizationDirection dir,
33 storm::dd::Add<DdType, ValueType> const& transitionMatrix,
34 storm::dd::Bdd<DdType> const& markovianStates,
35 storm::dd::Add<DdType, ValueType> const& exitRateVector,
36 storm::dd::Bdd<DdType> const& phiStates, storm::dd::Bdd<DdType> const& psiStates,
37 bool qualitative, double lowerBound, std::optional<double> const& upperBound);
38
39 template<storm::dd::DdType DdType, typename ValueType, typename std::enable_if<!storm::NumberTraits<ValueType>::SupportsExponential, int>::type = 0>
40 static std::unique_ptr<CheckResult> computeBoundedUntilProbabilities(Environment const& env, OptimizationDirection dir,
42 storm::dd::Add<DdType, ValueType> const& transitionMatrix,
43 storm::dd::Bdd<DdType> const& markovianStates,
44 storm::dd::Add<DdType, ValueType> const& exitRateVector,
45 storm::dd::Bdd<DdType> const& phiStates, storm::dd::Bdd<DdType> const& psiStates,
46 bool qualitative, double lowerBound, std::optional<double> const& upperBound);
47};
48
49} // namespace helper
50} // namespace modelchecker
51} // namespace storm
static std::unique_ptr< CheckResult > computeBoundedUntilProbabilities(Environment const &env, OptimizationDirection dir, storm::models::symbolic::MarkovAutomaton< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &transitionMatrix, storm::dd::Bdd< DdType > const &markovianStates, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &phiStates, storm::dd::Bdd< DdType > const &psiStates, bool qualitative, double lowerBound, std::optional< double > const &upperBound)
static std::unique_ptr< CheckResult > computeReachabilityRewards(Environment const &env, OptimizationDirection dir, storm::models::symbolic::MarkovAutomaton< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &transitionMatrix, storm::dd::Bdd< DdType > const &markovianStates, 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 > computeBoundedUntilProbabilities(Environment const &env, OptimizationDirection dir, storm::models::symbolic::MarkovAutomaton< DdType, ValueType > const &model, storm::dd::Add< DdType, ValueType > const &transitionMatrix, storm::dd::Bdd< DdType > const &markovianStates, storm::dd::Add< DdType, ValueType > const &exitRateVector, storm::dd::Bdd< DdType > const &phiStates, storm::dd::Bdd< DdType > const &psiStates, bool qualitative, double lowerBound, std::optional< double > const &upperBound)
This class represents a discrete-time Markov decision process.
StandardRewardModel< Type, ValueType > RewardModelType
Definition Model.h:47
solver::OptimizationDirection OptimizationDirection