1#ifndef STORM_MODELCHECKER_CHECKRESULT_H_
2#define STORM_MODELCHECKER_CHECKRESULT_H_
11namespace modelchecker {
13class QualitativeCheckResult;
14template<
typename ValueType>
15class QuantitativeCheckResult;
16class ExplicitQualitativeCheckResult;
18template<
typename ValueType>
19class ExplicitQuantitativeCheckResult;
21template<
typename ValueType>
22class ExplicitParetoCurveCheckResult;
24template<
typename ValueType>
25class LexicographicCheckResult;
27template<storm::dd::DdType Type>
28class SymbolicQualitativeCheckResult;
30template<storm::dd::DdType Type,
typename ValueType>
31class SymbolicQuantitativeCheckResult;
33template<storm::dd::DdType Type,
typename ValueType>
34class HybridQuantitativeCheckResult;
36template<storm::dd::DdType Type,
typename ValueType>
37class SymbolicParetoCurveCheckResult;
44 virtual std::unique_ptr<CheckResult>
clone()
const = 0;
74 template<
typename ValueType>
77 template<
typename ValueType>
83 template<
typename ValueType>
86 template<
typename ValueType>
89 template<
typename ValueType>
92 template<
typename ValueType>
95 template<
typename ValueType>
98 template<
typename ValueType>
101 template<storm::dd::DdType Type>
104 template<storm::dd::DdType Type>
107 template<storm::dd::DdType Type,
typename ValueType>
110 template<storm::dd::DdType Type,
typename ValueType>
113 template<storm::dd::DdType Type,
typename ValueType>
116 template<storm::dd::DdType Type,
typename ValueType>
119 template<storm::dd::DdType Type,
typename ValueType>
122 template<storm::dd::DdType Type,
typename ValueType>
ExplicitQuantitativeCheckResult< ValueType > & asExplicitQuantitativeCheckResult()
LexicographicCheckResult< ValueType > & asLexicographicCheckResult()
ExplicitParetoCurveCheckResult< ValueType > & asExplicitParetoCurveCheckResult()
virtual ~CheckResult()=default
virtual bool isSymbolicParetoCurveCheckResult() const
SymbolicParetoCurveCheckResult< Type, ValueType > const & asSymbolicParetoCurveCheckResult() const
virtual bool isSymbolicQuantitativeCheckResult() const
virtual bool isExplicit() const
virtual bool isQuantitative() const
virtual bool isHybridQuantitativeCheckResult() const
virtual bool isSymbolicQualitativeCheckResult() const
virtual bool isExplicitQuantitativeCheckResult() const
HybridQuantitativeCheckResult< Type, ValueType > const & asHybridQuantitativeCheckResult() const
QuantitativeCheckResult< ValueType > & asQuantitativeCheckResult()
virtual bool isParetoCurveCheckResult() const
SymbolicQuantitativeCheckResult< Type, ValueType > & asSymbolicQuantitativeCheckResult()
ExplicitQualitativeCheckResult & asExplicitQualitativeCheckResult()
ExplicitParetoCurveCheckResult< ValueType > const & asExplicitParetoCurveCheckResult() const
SymbolicQualitativeCheckResult< Type > const & asSymbolicQualitativeCheckResult() const
QuantitativeCheckResult< ValueType > const & asQuantitativeCheckResult() const
virtual bool isResultForAllStates() const
ExplicitQuantitativeCheckResult< ValueType > const & asExplicitQuantitativeCheckResult() const
virtual bool isExplicitQualitativeCheckResult() const
virtual std::ostream & writeToStream(std::ostream &out) const =0
virtual std::unique_ptr< CheckResult > clone() const =0
QualitativeCheckResult & asQualitativeCheckResult()
SymbolicQualitativeCheckResult< Type > & asSymbolicQualitativeCheckResult()
SymbolicQuantitativeCheckResult< Type, ValueType > const & asSymbolicQuantitativeCheckResult() const
virtual void filter(QualitativeCheckResult const &filter)=0
Filters the current result wrt.
virtual bool isSymbolic() const
SymbolicParetoCurveCheckResult< Type, ValueType > & asSymbolicParetoCurveCheckResult()
virtual bool isLexicographicCheckResult() const
virtual bool isQualitative() const
virtual bool hasScheduler() const
virtual bool isExplicitParetoCurveCheckResult() const
virtual bool isHybrid() const
LexicographicCheckResult< ValueType > const & asLexicographicCheckResult() const
HybridQuantitativeCheckResult< Type, ValueType > & asHybridQuantitativeCheckResult()
std::ostream & operator<<(std::ostream &os, RegionCheckEngine const &e)