// If the command is labeled, i.e. may synchronize, we need to make sure no global variable is written.
if(command.isLabeled()){
STORM_LOG_THROW(globalVariables.find(assignedVariable)==globalVariables.end(),storm::exceptions::WrongFormatException,"Error in "<<command.getFilename()<<", line "<<command.getLineNumber()<<": assignment of (possibly) synchronizing command writes to global variable '"<<assignment.getVariableName()<<"'.");
STORM_LOG_THROW(false,storm::exceptions::WrongFormatException,"Error in "<<command.getFilename()<<", line "<<command.getLineNumber()<<": assignment illegally refers to variable '"<<assignment.getVariableName()<<"'.");
STORM_LOG_THROW(isValid,storm::exceptions::WrongFormatException,"Error in "<<command.getFilename()<<", line "<<command.getLineNumber()<<": likelihood expression refers to unknown identifiers.");
STORM_LOG_THROW(isValid,storm::exceptions::WrongFormatException,"Error in "<<command.getFilename()<<", line "<<command.getLineNumber()<<": assigned expression refers to unknown identifiers.");
// Add the current variable to the set of assigned variables (of this update).