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;
}
FragmentSpecification rpatl() {
FragmentSpecification rpatl = pctl();
// TODO disallow operator we currently do not support
rpatl.setCoalitionOperatorsAllowed(true);
return rpatl;
}
FragmentSpecification prctl() {
FragmentSpecification prctl = pctl();
@ -620,6 +629,15 @@ namespace storm {
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;
FragmentSpecification& setRewardAccumulationAllowed(bool newValue);
bool areCoalitionOperatorsAllowed() const;
FragmentSpecification& setCoalitionOperatorsAllowed(bool newValue);
FragmentSpecification& setOperatorsAllowed(bool newValue);
FragmentSpecification& setTimeAllowed(bool newValue);
@ -192,6 +195,8 @@ namespace storm {
bool reachabilityTimeFormula;
bool coalitionOperator;
// Members that indicate certain restrictions.
bool nestedOperators;
bool nestedPathFormulas;
@ -229,6 +234,9 @@ namespace storm {
// Flat PCTL.
FragmentSpecification flatPctl();
// rPATL for SMGs
FragmentSpecification rpatl();
// PCTL + cumulative, instantaneous, reachability and long-run rewards.
FragmentSpecification prctl();

Loading…
Cancel
Save