| 
					
					
						
							
						
					
					
				 | 
				@ -151,7 +151,9 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				                    } | 
			
		
		
	
		
			
				 | 
				 | 
				                     | 
				 | 
				 | 
				                     | 
			
		
		
	
		
			
				 | 
				 | 
				                    for (typename storm::storage::SparseMatrix<T>::const_iterator entryIt = backwardTransitions.begin(currentState), entryIte = backwardTransitions.end(currentState); entryIt != entryIte; ++entryIt) { | 
				 | 
				 | 
				                    for (typename storm::storage::SparseMatrix<T>::const_iterator entryIt = backwardTransitions.begin(currentState), entryIte = backwardTransitions.end(currentState); entryIt != entryIte; ++entryIt) { | 
			
		
		
	
		
			
				 | 
				 | 
				                        if (phiStates[entryIt->getColumn()] && (!statesWithProbabilityGreater0.get(entryIt->getColumn()) && (!useStepBound || remainingSteps[entryIt->getColumn()] < currentStepBound - 1))) { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        if (phiStates[entryIt->getColumn()] && (!statesWithProbabilityGreater0.get(entryIt->getColumn()) && (!useStepBound || remainingSteps[entryIt->getColumn()] < currentStepBound))) { | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                            statesWithProbabilityGreater0.set(entryIt->getColumn(), true); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				                            // If we don't have a bound on the number of steps to take, just add the state to the stack.
 | 
				 | 
				 | 
				                            // If we don't have a bound on the number of steps to take, just add the state to the stack.
 | 
			
		
		
	
		
			
				 | 
				 | 
				                            if (useStepBound) { | 
				 | 
				 | 
				                            if (useStepBound) { | 
			
		
		
	
		
			
				 | 
				 | 
				                                // If there is at least one more step to go, we need to push the state and the new number of steps.
 | 
				 | 
				 | 
				                                // If there is at least one more step to go, we need to push the state and the new number of steps.
 | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -161,7 +163,6 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				                                    continue; | 
				 | 
				 | 
				                                    continue; | 
			
		
		
	
		
			
				 | 
				 | 
				                                } | 
				 | 
				 | 
				                                } | 
			
		
		
	
		
			
				 | 
				 | 
				                            } | 
				 | 
				 | 
				                            } | 
			
		
		
	
		
			
				 | 
				 | 
				                            statesWithProbabilityGreater0.set(entryIt->getColumn(), true); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                            stack.push_back(entryIt->getColumn()); | 
				 | 
				 | 
				                            stack.push_back(entryIt->getColumn()); | 
			
		
		
	
		
			
				 | 
				 | 
				                        } | 
				 | 
				 | 
				                        } | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				                    } | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
						
							
						
					
					
				 | 
				@ -440,7 +441,7 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				                    } | 
			
		
		
	
		
			
				 | 
				 | 
				                     | 
				 | 
				 | 
				                     | 
			
		
		
	
		
			
				 | 
				 | 
				                    for (typename storm::storage::SparseMatrix<T>::const_iterator entryIt = backwardTransitions.begin(currentState), entryIte = backwardTransitions.end(currentState); entryIt != entryIte; ++entryIt) { | 
				 | 
				 | 
				                    for (typename storm::storage::SparseMatrix<T>::const_iterator entryIt = backwardTransitions.begin(currentState), entryIte = backwardTransitions.end(currentState); entryIt != entryIte; ++entryIt) { | 
			
		
		
	
		
			
				 | 
				 | 
				                        if (phiStates.get(entryIt->getColumn()) && (!statesWithProbabilityGreater0.get(entryIt->getColumn()) && (!useStepBound || remainingSteps[entryIt->getColumn()] < currentStepBound - 1))) { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        if (phiStates.get(entryIt->getColumn()) && (!statesWithProbabilityGreater0.get(entryIt->getColumn()) && (!useStepBound || remainingSteps[entryIt->getColumn()] < currentStepBound))) { | 
			
		
		
	
		
			
				 | 
				 | 
				                            // If we don't have a bound on the number of steps to take, just add the state to the stack.
 | 
				 | 
				 | 
				                            // If we don't have a bound on the number of steps to take, just add the state to the stack.
 | 
			
		
		
	
		
			
				 | 
				 | 
				                            if (useStepBound) { | 
				 | 
				 | 
				                            if (useStepBound) { | 
			
		
		
	
		
			
				 | 
				 | 
				                                // If there is at least one more step to go, we need to push the state and the new number of steps.
 | 
				 | 
				 | 
				                                // If there is at least one more step to go, we need to push the state and the new number of steps.
 | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
						
							
						
					
					
				 | 
				@ -589,7 +590,7 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				                    } | 
				 | 
				 | 
				                    } | 
			
		
		
	
		
			
				 | 
				 | 
				                     | 
				 | 
				 | 
				                     | 
			
		
		
	
		
			
				 | 
				 | 
				                    for(typename storm::storage::SparseMatrix<T>::const_iterator predecessorEntryIt = backwardTransitions.begin(currentState), predecessorEntryIte = backwardTransitions.end(currentState); predecessorEntryIt != predecessorEntryIte; ++predecessorEntryIt) { | 
				 | 
				 | 
				                    for(typename storm::storage::SparseMatrix<T>::const_iterator predecessorEntryIt = backwardTransitions.begin(currentState), predecessorEntryIte = backwardTransitions.end(currentState); predecessorEntryIt != predecessorEntryIte; ++predecessorEntryIt) { | 
			
		
		
	
		
			
				 | 
				 | 
				                        if (phiStates.get(predecessorEntryIt->getColumn()) && (!statesWithProbabilityGreater0.get(predecessorEntryIt->getColumn()) && (!useStepBound || remainingSteps[predecessorEntryIt->getColumn()] < currentStepBound - 1))) { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                        if (phiStates.get(predecessorEntryIt->getColumn()) && (!statesWithProbabilityGreater0.get(predecessorEntryIt->getColumn()) && (!useStepBound || remainingSteps[predecessorEntryIt->getColumn()] < currentStepBound))) { | 
			
		
		
	
		
			
				 | 
				 | 
				                            // Check whether the predecessor has at least one successor in the current state set for every
 | 
				 | 
				 | 
				                            // Check whether the predecessor has at least one successor in the current state set for every
 | 
			
		
		
	
		
			
				 | 
				 | 
				                            // nondeterministic choice.
 | 
				 | 
				 | 
				                            // nondeterministic choice.
 | 
			
		
		
	
		
			
				 | 
				 | 
				                            bool addToStatesWithProbabilityGreater0 = true; | 
				 | 
				 | 
				                            bool addToStatesWithProbabilityGreater0 = true; | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
					
				 | 
				
  |