Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
SparseMdpPrctlModelChecker.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace storm {
8
9class Environment;
10
11namespace modelchecker {
12template<class SparseMdpModelType>
14 public:
15 typedef typename SparseMdpModelType::ValueType ValueType;
16 typedef typename SparseMdpModelType::RewardModelType RewardModelType;
17 using SolutionType = typename std::conditional<std::is_same_v<ValueType, storm::Interval>, double, ValueType>::type;
18
19 explicit SparseMdpPrctlModelChecker(SparseMdpModelType const& model);
20
25 static bool canHandleStatic(CheckTask<storm::logic::Formula, SolutionType> const& checkTask, bool* requiresSingleInitialState = nullptr);
26
27 // The implemented methods of the AbstractModelChecker interface.
28 virtual bool canHandle(CheckTask<storm::logic::Formula, SolutionType> const& checkTask) const override;
29 virtual std::unique_ptr<CheckResult> computeBoundedUntilProbabilities(Environment const& env,
31 virtual std::unique_ptr<CheckResult> computeNextProbabilities(Environment const& env,
33 virtual std::unique_ptr<CheckResult> computeUntilProbabilities(Environment const& env,
35 virtual std::unique_ptr<CheckResult> computeGloballyProbabilities(Environment const& env,
37 virtual std::unique_ptr<CheckResult> computeConditionalProbabilities(Environment const& env,
39 virtual std::unique_ptr<CheckResult> computeCumulativeRewards(Environment const& env,
41 virtual std::unique_ptr<CheckResult> computeInstantaneousRewards(
43 virtual std::unique_ptr<CheckResult> computeTotalRewards(Environment const& env,
45 virtual std::unique_ptr<CheckResult> computeReachabilityRewards(Environment const& env,
47 virtual std::unique_ptr<CheckResult> computeReachabilityTimes(Environment const& env,
49 virtual std::unique_ptr<CheckResult> computeLongRunAverageProbabilities(Environment const& env,
51 virtual std::unique_ptr<CheckResult> computeLongRunAverageRewards(
53 virtual std::unique_ptr<CheckResult> computeLTLProbabilities(Environment const& env,
55 virtual std::unique_ptr<CheckResult> computeHOAPathProbabilities(Environment const& env,
57 virtual std::unique_ptr<CheckResult> checkMultiObjectiveFormula(Environment const& env,
59 virtual std::unique_ptr<CheckResult> checkLexObjectiveFormula(Environment const& env,
61 virtual std::unique_ptr<CheckResult> checkQuantileFormula(Environment const& env,
63};
64} // namespace modelchecker
65} // namespace storm
virtual std::unique_ptr< CheckResult > computeLongRunAverageProbabilities(Environment const &env, CheckTask< storm::logic::StateFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeCumulativeRewards(Environment const &env, CheckTask< storm::logic::CumulativeRewardFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeLongRunAverageRewards(Environment const &env, CheckTask< storm::logic::LongRunAverageRewardFormula, SolutionType > const &checkTask) override
static bool canHandleStatic(CheckTask< storm::logic::Formula, SolutionType > const &checkTask, bool *requiresSingleInitialState=nullptr)
Returns false, if this task can certainly not be handled by this model checker (independent of the co...
virtual std::unique_ptr< CheckResult > checkMultiObjectiveFormula(Environment const &env, CheckTask< storm::logic::MultiObjectiveFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeReachabilityTimes(Environment const &env, CheckTask< storm::logic::EventuallyFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeLTLProbabilities(Environment const &env, CheckTask< storm::logic::PathFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeGloballyProbabilities(Environment const &env, CheckTask< storm::logic::GloballyFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeUntilProbabilities(Environment const &env, CheckTask< storm::logic::UntilFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > checkQuantileFormula(Environment const &env, CheckTask< storm::logic::QuantileFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > checkLexObjectiveFormula(Environment const &env, CheckTask< storm::logic::MultiObjectiveFormula, SolutionType > const &checkTask) override
virtual bool canHandle(CheckTask< storm::logic::Formula, SolutionType > const &checkTask) const override
Determines whether the model checker can handle the given verification task.
virtual std::unique_ptr< CheckResult > computeReachabilityRewards(Environment const &env, CheckTask< storm::logic::EventuallyFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeHOAPathProbabilities(Environment const &env, CheckTask< storm::logic::HOAPathFormula, SolutionType > const &checkTask) override
typename std::conditional< std::is_same_v< ValueType, storm::Interval >, double, ValueType >::type SolutionType
virtual std::unique_ptr< CheckResult > computeInstantaneousRewards(Environment const &env, CheckTask< storm::logic::InstantaneousRewardFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeConditionalProbabilities(Environment const &env, CheckTask< storm::logic::ConditionalFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeNextProbabilities(Environment const &env, CheckTask< storm::logic::NextFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeTotalRewards(Environment const &env, CheckTask< storm::logic::TotalRewardFormula, SolutionType > const &checkTask) override
virtual std::unique_ptr< CheckResult > computeBoundedUntilProbabilities(Environment const &env, CheckTask< storm::logic::BoundedUntilFormula, SolutionType > const &checkTask) override
LabParser.cpp.
Definition cli.cpp:18