You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.5 KiB
35 lines
1.5 KiB
#include "src/logic/ReachabilityRewardFormula.h"
|
|
|
|
namespace storm {
|
|
namespace logic {
|
|
ReachabilityRewardFormula::ReachabilityRewardFormula(std::shared_ptr<Formula const> const& subformula) : subformula(subformula) {
|
|
// Intentionally left empty.
|
|
}
|
|
|
|
bool ReachabilityRewardFormula::isReachabilityRewardFormula() const {
|
|
return true;
|
|
}
|
|
|
|
Formula const& ReachabilityRewardFormula::getSubformula() const {
|
|
return *subformula;
|
|
}
|
|
|
|
void ReachabilityRewardFormula::gatherAtomicExpressionFormulas(std::vector<std::shared_ptr<AtomicExpressionFormula const>>& atomicExpressionFormulas) const {
|
|
this->getSubformula().gatherAtomicExpressionFormulas(atomicExpressionFormulas);
|
|
}
|
|
|
|
void ReachabilityRewardFormula::gatherAtomicLabelFormulas(std::vector<std::shared_ptr<AtomicLabelFormula const>>& atomicLabelFormulas) const {
|
|
this->getSubformula().gatherAtomicLabelFormulas(atomicLabelFormulas);
|
|
}
|
|
|
|
std::shared_ptr<Formula> ReachabilityRewardFormula::substitute(std::map<storm::expressions::Variable, storm::expressions::Expression> const& substitution) const {
|
|
return std::make_shared<ReachabilityRewardFormula>(this->getSubformula().substitute(substitution));
|
|
}
|
|
|
|
std::ostream& ReachabilityRewardFormula::writeToStream(std::ostream& out) const {
|
|
out << "F ";
|
|
this->getSubformula().writeToStream(out);
|
|
return out;
|
|
}
|
|
}
|
|
}
|