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.");