STORM_LOG_THROW(consideredModel->isOfType(storm::models::ModelType::Dtmc)||consideredModel->isOfType(storm::models::ModelType::Mdp),storm::exceptions::UnexpectedException,"Transformation to discrete time model has failed.");
STORM_LOG_THROW(consideredModel->isOfType(storm::models::ModelType::Dtmc)||consideredModel->isOfType(storm::models::ModelType::Mdp),storm::exceptions::UnexpectedException,"Transformation to discrete time model has failed.");
STORM_LOG_THROW(positionOfFirstRelation!=std::string::npos,storm::exceptions::InvalidArgumentException,"When parsing the region"<<parameterBoundariesString<<" I could not find a '<=' after the first number");
STORM_LOG_THROW(positionOfSecondRelation!=std::string::npos,storm::exceptions::InvalidArgumentException,"When parsing the region"<<parameterBoundariesString<<" I could not find a '<=' after the parameter");
STORM_LOG_THROW(parameter.length()>0,storm::exceptions::InvalidArgumentException,"When parsing the region"<<parameterBoundariesString<<" I could not find a parameter");
@ -25,17 +26,19 @@ namespace storm {
for(autoconst&v:consideredVariables){
std::stringstreamstream;
stream<<v;
std::stringvAsString=stream.str();
if(parameter==stream.str()){
var=std::make_unique<VariableType>(v);
break;
}
}
STORM_LOG_ASSERT(var,"Could not find parameter "<<parameter<<" in the set of considered variables");
STORM_LOG_THROW(transformer.preservesFormula(*formula),storm::exceptions::InvalidOperationException,"Transformation to discrete time model does not preserve formula "<<*formula<<".");
STORM_LOG_WARN_COND(newFormulas.size()==formulas.size(),"Transformation of a "<<model->getType()<<" to a discrete time model does not preserve all properties.");
STORM_LOG_THROW(false,storm::exceptions::NotSupportedException,"Transformation of a "<<model->getType()<<" to a discrete time model is not supported");
STORM_LOG_THROW(transformer.preservesFormula(*formula),storm::exceptions::InvalidOperationException,"Transformation to discrete time model does not preserve formula "<<*formula<<".");
STORM_LOG_WARN_COND(newFormulas.size()==formulas.size(),"Transformation of a "<<model.getType()<<" to a discrete time model does not preserve all properties.");
STORM_LOG_THROW(false,storm::exceptions::NotSupportedException,"Transformation of a "<<model.getType()<<" to a discrete time model is not supported.");
STORM_LOG_THROW(f.getSubformula().isEventuallyFormula(),storm::exceptions::InvalidPropertyException,"Expected eventually formula within time operator. Got "<<f<<" instead.");
STORM_LOG_THROW(f.getSubformula().isReachabilityTimeFormula(),storm::exceptions::InvalidPropertyException,"Expected time path formula within time operator. Got "<<f<<" instead.");
STORM_LOG_THROW(pathFormula.getTimeBoundReference().isTimeBound(),storm::exceptions::NotImplementedException,"Currently step-bounded and reward=bpimded properties on MAs are not supported.");
STORM_LOG_THROW(pathFormula.getTimeBoundReference().isTimeBound(),storm::exceptions::NotImplementedException,"Currently step-bounded and reward-bounded properties on MAs are not supported.");
STORM_LOG_THROW(this->getTransitionMatrix().getColumnCount()==stateCount,storm::exceptions::IllegalArgumentException,"Invalid column count of transition matrix.");
STORM_LOG_ASSERT(components.rateTransitions||this->hasParameters()||this->getTransitionMatrix().isProbabilistic(),"The matrix is not probabilistic.");
STORM_LOG_THROW(this->getStateLabeling().getNumberOfItems()==stateCount,storm::exceptions::IllegalArgumentException,"Invalid item count of state labeling.");
STORM_LOG_THROW(this->getStateLabeling().getNumberOfItems()==stateCount,storm::exceptions::IllegalArgumentException,"Invalid item count ("<<this->getStateLabeling().getNumberOfItems()<<") of state labeling (states: "<<stateCount<<").");
STORM_LOG_THROW(!rewardModel.second.hasStateRewards()||rewardModel.second.getStateRewardVector().size()==stateCount,storm::exceptions::IllegalArgumentException,"Invalid size of state reward vector.");
STORM_LOG_THROW(!rewardModel.second.hasStateRewards()||rewardModel.second.getStateRewardVector().size()==stateCount,storm::exceptions::IllegalArgumentException,"Invalid size ("<<rewardModel.second.getStateRewardVector().size()<<") of state reward vector (states:"<<stateCount<<").");
STORM_LOG_THROW(!rewardModel.second.hasStateActionRewards()||rewardModel.second.getStateActionRewardVector().size()==choiceCount,storm::exceptions::IllegalArgumentException,"Invalid size of state reward vector.");
STORM_LOG_ASSERT(!rewardModel.second.hasTransitionRewards()||rewardModel.second.getTransitionRewardMatrix().isSubmatrixOf(this->getTransitionMatrix()),"The transition reward matrix is not a submatrix of the transition matrix, i.e. there are rewards for transitions that do not exist.");
STORM_LOG_ASSERT(quotientTransitionMatrix.greater(storm::utility::one<ValueType>()+storm::utility::convertNumber<ValueType>(1e-6)).isZero(),"Illegal entries in quotient matrix.");