|  | @ -191,7 +191,8 @@ namespace storm { | 
		
	
		
			
				|  |  |                         break; |  |  |                         break; | 
		
	
		
			
				|  |  |                     case storm::builder::ApproximationHeuristic::PROBABILITY: |  |  |                     case storm::builder::ApproximationHeuristic::PROBABILITY: | 
		
	
		
			
				|  |  |                     case storm::builder::ApproximationHeuristic::BOUNDDIFFERENCE: |  |  |                     case storm::builder::ApproximationHeuristic::BOUNDDIFFERENCE: | 
		
	
		
			
				|  |  |                         approximationThreshold = 10 * std::pow(2, iteration); |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                         double exponent = iteration; // Need conversion to avoid overflow when negating
 | 
		
	
		
			
				|  |  |  |  |  |                         approximationThreshold = std::pow(2, -exponent); | 
		
	
		
			
				|  |  |                         break; |  |  |                         break; | 
		
	
		
			
				|  |  |                 } |  |  |                 } | 
		
	
		
			
				|  |  |             } |  |  |             } | 
		
	
	
		
			
				|  | @ -646,7 +647,7 @@ namespace storm { | 
		
	
		
			
				|  |  |                 STORM_LOG_ASSERT(!it->second.first->isPseudoState(), "State is still pseudo state."); |  |  |                 STORM_LOG_ASSERT(!it->second.first->isPseudoState(), "State is still pseudo state."); | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                 ExplorationHeuristicPointer heuristic = it->second.second; |  |  |                 ExplorationHeuristicPointer heuristic = it->second.second; | 
		
	
		
			
				|  |  |                 if (storm::utility::isZero(heuristic->getUpperBound())) { |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 if (storm::utility::isInfinity(heuristic->getUpperBound())) { | 
		
	
		
			
				|  |  |                     // Initialize bounds
 |  |  |                     // Initialize bounds
 | 
		
	
		
			
				|  |  |                     ValueType lowerBound = getLowerBound(it->second.first); |  |  |                     ValueType lowerBound = getLowerBound(it->second.first); | 
		
	
		
			
				|  |  |                     ValueType upperBound = getUpperBound(it->second.first); |  |  |                     ValueType upperBound = getUpperBound(it->second.first); | 
		
	
	
		
			
				|  | @ -669,6 +670,7 @@ namespace storm { | 
		
	
		
			
				|  |  |             for (state->getFailableElements().init(false); !state->getFailableElements().isEnd(); state->getFailableElements().next()) { |  |  |             for (state->getFailableElements().init(false); !state->getFailableElements().isEnd(); state->getFailableElements().next()) { | 
		
	
		
			
				|  |  |                 lowerBound += state->getBERate(state->getFailableElements().get()); |  |  |                 lowerBound += state->getBERate(state->getFailableElements().get()); | 
		
	
		
			
				|  |  |             } |  |  |             } | 
		
	
		
			
				|  |  |  |  |  |             STORM_LOG_TRACE("Lower bound is " << lowerBound << " for state " << state->getId()); | 
		
	
		
			
				|  |  |             return lowerBound; |  |  |             return lowerBound; | 
		
	
		
			
				|  |  |         } |  |  |         } | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
	
		
			
				|  | 
 |