Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
FragmentSpecification.h
Go to the documentation of this file.
1#pragma once
2
3#include <map>
4#include <string>
5
6namespace storm {
7namespace logic {
8
9class RewardAccumulation;
10
12 public:
18
20
23
24 bool areRewardOperatorsAllowed() const;
26
27 bool areTimeOperatorsAllowed() const;
29
32
35
36 bool areQuantileFormulasAllowed() const;
38
39 bool areGloballyFormulasAllowed() const;
41
44
45 bool areNextFormulasAllowed() const;
47
48 bool areUntilFormulasAllowed() const;
50
53
54 bool areHOAPathFormulasAllowed() const;
56
59
62
65
68
71
74
77
80
83
86
89
92
95
98
101
102 bool areNestedOperatorsAllowed() const;
104
105 bool areNestedPathFormulasAllowed() const;
107
110
113
116
119
122
125
128
131
134
137
140
143
146
147 bool isOperatorAtTopLevelRequired() const;
149
152
155
158
159 bool isRewardAccumulationAllowed() const;
161
162 bool areGameFormulasAllowed() const;
164
168
169 private:
170 // Flags that indicate whether it is legal to see such a formula.
171 bool probabilityOperator;
172 bool rewardOperator;
173 bool expectedTimeOperator;
174 bool longRunAverageOperator;
175
176 bool multiObjectiveFormula;
177 bool quantileFormula;
178
179 bool globallyFormula;
180 bool reachabilityProbabilityFormula;
181 bool nextFormula;
182 bool untilFormula;
183 bool boundedUntilFormula;
184 bool hoaPathFormula;
185
186 bool atomicExpressionFormula;
187 bool atomicLabelFormula;
188 bool booleanLiteralFormula;
189 bool unaryBooleanStateFormula;
190 bool binaryBooleanStateFormula;
191 bool unaryBooleanPathFormula;
192 bool binaryBooleanPathFormula;
193
194 bool cumulativeRewardFormula;
195 bool instantaneousRewardFormula;
196 bool reachabilityRewardFormula;
197 bool longRunAverageRewardFormula;
198 bool totalRewardFormula;
199
200 bool conditionalProbabilityFormula;
201 bool conditionalRewardFormula;
202
203 bool reachabilityTimeFormula;
204
205 bool gameFormula;
206
207 // Members that indicate certain restrictions.
208 bool nestedOperators;
209 bool nestedPathFormulas;
210 bool nestedMultiObjectiveFormulas;
211 bool nestedOperatorsInsideMultiObjectiveFormulas;
212 bool onlyEventuallyFormuluasInConditionalFormulas;
213 bool stepBoundedUntilFormulas;
214 bool timeBoundedUntilFormulas;
215 bool rewardBoundedUntilFormulas;
216 bool multiDimensionalBoundedUntilFormulas;
217 bool stepBoundedCumulativeRewardFormulas;
218 bool timeBoundedCumulativeRewardFormulas;
219 bool rewardBoundedCumulativeRewardFormulas;
220 bool multiDimensionalCumulativeRewardFormulas;
221 bool quantitativeOperatorResults;
222 bool qualitativeOperatorResults;
223 bool operatorAtTopLevelRequired;
224 bool multiObjectiveFormulaAtTopLevelRequired;
225 bool quantileFormulaAtTopLevelRequired;
226 bool operatorsAtTopLevelOfMultiObjectiveFormulasRequired;
227
228 bool rewardAccumulation;
229};
230
231// Propositional.
233
234// Just reachability properties.
236
237// Regular PCTL.
239
240// Flat PCTL.
242
243// rPATL for SMGs
245// PCTL*
247
248// PCTL + cumulative, instantaneous, reachability and long-run rewards.
250
251// PCTL* + cumulative, instantaneous, reachability and long-run rewards.
253
254// Regular CSL.
256
257// CSL*, i.e., CSL with LTL path formulas.
259
260// CSL + cumulative, instantaneous, reachability and long-run rewards.
262
263// CSL* + cumulative, instantaneous, reachability and long-run rewards.
265
266// Multi-Objective formulas.
268
269// Lex-Objective formulas
271
272// Quantile formulas.
274
275} // namespace logic
276} // namespace storm
FragmentSpecification & setConditionalRewardFormulasAllowed(bool newValue)
FragmentSpecification & setAtomicExpressionFormulasAllowed(bool newValue)
FragmentSpecification & setNextFormulasAllowed(bool newValue)
FragmentSpecification(FragmentSpecification &&other)=default
FragmentSpecification & setBinaryBooleanPathFormulasAllowed(bool newValue)
FragmentSpecification & setStepBoundedUntilFormulasAllowed(bool newValue)
FragmentSpecification & setUnaryBooleanStateFormulasAllowed(bool newValue)
FragmentSpecification & setRewardBoundedCumulativeRewardFormulasAllowed(bool newValue)
FragmentSpecification & setRewardAccumulationAllowed(bool newValue)
FragmentSpecification & setOnlyEventuallyFormuluasInConditionalFormulasAllowed(bool newValue)
FragmentSpecification & setBinaryBooleanStateFormulasAllowed(bool newValue)
FragmentSpecification & setMultiDimensionalBoundedUntilFormulasAllowed(bool newValue)
FragmentSpecification & operator=(FragmentSpecification const &other)=default
FragmentSpecification & setTimeOperatorsAllowed(bool newValue)
FragmentSpecification & setUnaryBooleanPathFormulasAllowed(bool newValue)
FragmentSpecification & setAtomicLabelFormulasAllowed(bool newValue)
FragmentSpecification & setNestedMultiObjectiveFormulasAllowed(bool newValue)
FragmentSpecification & setGameFormulasAllowed(bool newValue)
FragmentSpecification & setMultiObjectiveFormulaAtTopLevelRequired(bool newValue)
FragmentSpecification & setQuantileFormulaAtTopLevelRequired(bool newValue)
FragmentSpecification & setQuantileFormulasAllowed(bool newValue)
FragmentSpecification & operator=(FragmentSpecification &&other)=default
FragmentSpecification & setOperatorAtTopLevelRequired(bool newValue)
FragmentSpecification & setBooleanLiteralFormulasAllowed(bool newValue)
FragmentSpecification & setMultiObjectiveFormulasAllowed(bool newValue)
FragmentSpecification & setGloballyFormulasAllowed(bool newValue)
FragmentSpecification & setTimeBoundedUntilFormulasAllowed(bool newValue)
FragmentSpecification & setReachabilityProbabilityFormulasAllowed(bool newValue)
FragmentSpecification & setCumulativeRewardFormulasAllowed(bool newValue)
FragmentSpecification & setTotalRewardFormulasAllowed(bool newValue)
FragmentSpecification & setReachabilityRewardFormulasAllowed(bool newValue)
FragmentSpecification & setMultiDimensionalCumulativeRewardFormulasAllowed(bool newValue)
FragmentSpecification & setNestedPathFormulasAllowed(bool newValue)
FragmentSpecification & setConditionalProbabilityFormulasAllowed(bool newValue)
FragmentSpecification(FragmentSpecification const &other)=default
FragmentSpecification & setRewardBoundedUntilFormulasAllowed(bool newValue)
FragmentSpecification & setLongRunAverageRewardFormulasAllowed(bool newValue)
FragmentSpecification & setQualitativeOperatorResultsAllowed(bool newValue)
FragmentSpecification & setLongRunAverageProbabilitiesAllowed(bool newValue)
FragmentSpecification & setQuantitativeOperatorResultsAllowed(bool newValue)
FragmentSpecification & setRewardOperatorsAllowed(bool newValue)
FragmentSpecification & setNestedOperatorsInsideMultiObjectiveFormulasAllowed(bool newValue)
FragmentSpecification & setBoundedUntilFormulasAllowed(bool newValue)
FragmentSpecification & setTimeBoundedCumulativeRewardFormulasAllowed(bool newValue)
FragmentSpecification & setHOAPathFormulasAllowed(bool newValue)
FragmentSpecification & setOperatorsAllowed(bool newValue)
FragmentSpecification & setReachbilityTimeFormulasAllowed(bool newValue)
FragmentSpecification & setInstantaneousFormulasAllowed(bool newValue)
FragmentSpecification & setUntilFormulasAllowed(bool newValue)
FragmentSpecification & setTimeAllowed(bool newValue)
FragmentSpecification & setNestedOperatorsAllowed(bool newValue)
FragmentSpecification & setStepBoundedCumulativeRewardFormulasAllowed(bool newValue)
FragmentSpecification & setProbabilityOperatorsAllowed(bool newValue)
FragmentSpecification & setLongRunAverageOperatorsAllowed(bool newValue)
FragmentSpecification & setOperatorsAtTopLevelOfMultiObjectiveFormulasRequired(bool newValue)
FragmentSpecification prctlstar()
FragmentSpecification prctl()
FragmentSpecification propositional()
FragmentSpecification lexObjective()
FragmentSpecification csrl()
FragmentSpecification pctlstar()
FragmentSpecification flatPctl()
FragmentSpecification csrlstar()
FragmentSpecification csl()
FragmentSpecification multiObjective()
FragmentSpecification pctl()
FragmentSpecification cslstar()
FragmentSpecification reachability()
FragmentSpecification quantiles()
FragmentSpecification rpatl()
LabParser.cpp.
Definition cli.cpp:18