STORM_LOG_THROW(!formula.getSubformula().asBoundedUntilFormula().hasLowerBound(),storm::exceptions::NotSupportedException,"Lower step bounds are not supported.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().hasUpperBound(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with an upper bound.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().isStepBounded(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with step bounds.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().getUpperBound().getBaseExpression().isIntegerLiteralExpression(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with integral bounds.");
// Only consider the maybestates that are reachable from one initial probGreater0 state within the given amount of steps and without hopping over a target state
STORM_LOG_THROW(formula.getSubformula().asCumulativeRewardFormula().isStepBounded(),storm::exceptions::UnexpectedException,"Expected a cumulative reward formula with step bounds.");
STORM_LOG_THROW(formula.getSubformula().asCumulativeRewardFormula().getBound().getBaseExpression().isIntegerLiteralExpression(),storm::exceptions::UnexpectedException,"Expected a cumulative reward formula with integral bound.");
STORM_LOG_THROW(!formula.getSubformula().asBoundedUntilFormula().hasLowerBound(),storm::exceptions::NotSupportedException,"Lower step bounds are not supported.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().hasUpperBound(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with an upper bound.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().isStepBounded(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with step bounds.");
STORM_LOG_THROW(formula.getSubformula().asBoundedUntilFormula().getUpperBound().getBaseExpression().isIntegerLiteralExpression(),storm::exceptions::UnexpectedException,"Expected a bounded until formula with integral bounds.");
// Only consider the maybestates that are reachable from one initial probGreater0 state within the given amount of steps and without hopping over a target state
STORM_LOG_THROW(formula.getSubformula().asCumulativeRewardFormula().isStepBounded(),storm::exceptions::UnexpectedException,"Expected a cumulative reward formula with step bounds.");
STORM_LOG_THROW(formula.getSubformula().asCumulativeRewardFormula().getBound().getBaseExpression().isIntegerLiteralExpression(),storm::exceptions::UnexpectedException,"Expected a cumulative reward formula with integral bound.");