Storm 1.14.0.1
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SparseCtmcCslModelChecker.h
Go to the documentation of this file.
1#pragma once
2
8
9namespace storm {
10namespace modelchecker {
11
12template<class SparseCtmcModelType>
14 public:
15 typedef typename SparseCtmcModelType::ValueType ValueType;
17 typedef typename SparseCtmcModelType::RewardModelType RewardModelType;
18
19 explicit SparseCtmcCslModelChecker(SparseCtmcModelType const& model);
20
21 // Returns false, if this task can certainly not be handled by this model checker (independent of the concrete model).
23
24 // The implemented methods of the AbstractModelChecker interface.
25 virtual bool canHandle(CheckTask<storm::logic::Formula, ValueType> const& checkTask) const override;
26 virtual std::unique_ptr<CheckResult> computeBoundedUntilProbabilities(Environment const& env,
28 virtual std::unique_ptr<CheckResult> computeNextProbabilities(Environment const& env,
29 CheckTask<storm::logic::NextFormula, ValueType> const& checkTask) override;
30 virtual std::unique_ptr<CheckResult> computeGloballyProbabilities(Environment const& env,
32 virtual std::unique_ptr<CheckResult> computeUntilProbabilities(Environment const& env,
33 CheckTask<storm::logic::UntilFormula, ValueType> const& checkTask) override;
34 virtual std::unique_ptr<CheckResult> computeLTLProbabilities(Environment const& env,
35 CheckTask<storm::logic::PathFormula, ValueType> const& checkTask) override;
36 virtual std::unique_ptr<CheckResult> computeHOAPathProbabilities(Environment const& env,
38
39 virtual std::unique_ptr<CheckResult> computeLongRunAverageProbabilities(Environment const& env,
40 CheckTask<storm::logic::StateFormula, ValueType> const& checkTask) override;
41 virtual std::unique_ptr<CheckResult> computeReachabilityTimes(Environment const& env,
43
44 virtual std::unique_ptr<CheckResult> computeLongRunAverageRewards(
46 virtual std::unique_ptr<CheckResult> computeCumulativeRewards(Environment const& env,
48 virtual std::unique_ptr<CheckResult> computeInstantaneousRewards(Environment const& env,
50 virtual std::unique_ptr<CheckResult> computeReachabilityRewards(Environment const& env,
52 virtual std::unique_ptr<CheckResult> computeTotalRewards(Environment const& env,
54
59
64 std::unique_ptr<CheckResult> computeSteadyStateDistribution(Environment const& env);
65
70 std::unique_ptr<CheckResult> computeExpectedVisitingTimes(Environment const& env);
71};
72
73} // namespace modelchecker
74} // namespace storm
virtual std::unique_ptr< CheckResult > computeCumulativeRewards(Environment const &env, CheckTask< storm::logic::CumulativeRewardFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeLTLProbabilities(Environment const &env, CheckTask< storm::logic::PathFormula, ValueType > const &checkTask) override
storm::utility::ExtendedValueType< ValueType > ExtendedValueType
virtual std::unique_ptr< CheckResult > computeReachabilityTimes(Environment const &env, CheckTask< storm::logic::EventuallyFormula, ValueType > const &checkTask) override
std::unique_ptr< CheckResult > computeExpectedVisitingTimes(Environment const &env)
Computes for each state the expected number of times we visit that state.
virtual std::unique_ptr< CheckResult > computeInstantaneousRewards(Environment const &env, CheckTask< storm::logic::InstantaneousRewardFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeLongRunAverageProbabilities(Environment const &env, CheckTask< storm::logic::StateFormula, ValueType > const &checkTask) override
static bool canHandleStatic(CheckTask< storm::logic::Formula, ValueType > const &checkTask)
SparseCtmcModelType::RewardModelType RewardModelType
virtual std::unique_ptr< CheckResult > computeBoundedUntilProbabilities(Environment const &env, CheckTask< storm::logic::BoundedUntilFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeReachabilityRewards(Environment const &env, CheckTask< storm::logic::EventuallyFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeLongRunAverageRewards(Environment const &env, CheckTask< storm::logic::LongRunAverageRewardFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeNextProbabilities(Environment const &env, CheckTask< storm::logic::NextFormula, ValueType > const &checkTask) override
virtual bool canHandle(CheckTask< storm::logic::Formula, ValueType > const &checkTask) const override
SparseCtmcCslModelChecker(SparseCtmcModelType const &model)
std::unique_ptr< CheckResult > computeSteadyStateDistribution(Environment const &env)
Computes the long run average (or: steady state) distribution over all states Assumes a uniform distr...
virtual std::unique_ptr< CheckResult > computeTotalRewards(Environment const &env, CheckTask< storm::logic::TotalRewardFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeGloballyProbabilities(Environment const &env, CheckTask< storm::logic::GloballyFormula, ValueType > const &checkTask) override
std::vector< ValueType > computeAllTransientProbabilities(Environment const &env, CheckTask< storm::logic::BoundedUntilFormula, ValueType > const &checkTask)
Compute transient probabilities for all states.
virtual std::unique_ptr< CheckResult > computeUntilProbabilities(Environment const &env, CheckTask< storm::logic::UntilFormula, ValueType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeHOAPathProbabilities(Environment const &env, CheckTask< storm::logic::HOAPathFormula, ValueType > const &checkTask) override
std::conditional_t< storm::NumberTraits< ValueType >::HasInfinity, ValueType, ExtendedNumber< ValueType > > ExtendedValueType
The type to use for values that may be infinite.