Browse Source

added rPATL to FragmentSpecifitcations

tempestpy_adaptions
Stefan Pranger 4 years ago
parent
commit
8dc46968cb
  1. 18
      src/storm/logic/FragmentSpecification.cpp
  2. 8
      src/storm/logic/FragmentSpecification.h

18
src/storm/logic/FragmentSpecification.cpp

@ -53,6 +53,15 @@ namespace storm {
return flatPctl; return flatPctl;
} }
FragmentSpecification rpatl() {
FragmentSpecification rpatl = pctl();
// TODO disallow operator we currently do not support
rpatl.setCoalitionOperatorsAllowed(true);
return rpatl;
}
FragmentSpecification prctl() { FragmentSpecification prctl() {
FragmentSpecification prctl = pctl(); FragmentSpecification prctl = pctl();
@ -620,6 +629,15 @@ namespace storm {
return *this; return *this;
} }
bool FragmentSpecification::areCoalitionOperatorsAllowed() const {
return coalitionOperator;
}
FragmentSpecification& FragmentSpecification::setCoalitionOperatorsAllowed(bool newValue) {
coalitionOperator = newValue;
return *this;
}
} }
} }

8
src/storm/logic/FragmentSpecification.h

@ -154,6 +154,9 @@ namespace storm {
bool isRewardAccumulationAllowed() const; bool isRewardAccumulationAllowed() const;
FragmentSpecification& setRewardAccumulationAllowed(bool newValue); FragmentSpecification& setRewardAccumulationAllowed(bool newValue);
bool areCoalitionOperatorsAllowed() const;
FragmentSpecification& setCoalitionOperatorsAllowed(bool newValue);
FragmentSpecification& setOperatorsAllowed(bool newValue); FragmentSpecification& setOperatorsAllowed(bool newValue);
FragmentSpecification& setTimeAllowed(bool newValue); FragmentSpecification& setTimeAllowed(bool newValue);
@ -192,6 +195,8 @@ namespace storm {
bool reachabilityTimeFormula; bool reachabilityTimeFormula;
bool coalitionOperator;
// Members that indicate certain restrictions. // Members that indicate certain restrictions.
bool nestedOperators; bool nestedOperators;
bool nestedPathFormulas; bool nestedPathFormulas;
@ -229,6 +234,9 @@ namespace storm {
// Flat PCTL. // Flat PCTL.
FragmentSpecification flatPctl(); FragmentSpecification flatPctl();
// rPATL for SMGs
FragmentSpecification rpatl();
// PCTL + cumulative, instantaneous, reachability and long-run rewards. // PCTL + cumulative, instantaneous, reachability and long-run rewards.
FragmentSpecification prctl(); FragmentSpecification prctl();

Loading…
Cancel
Save