@ -4,6 +4,7 @@ 
			
		
	
		
			
				
					# include  "storm/logic/FragmentSpecification.h" 
  
			
		
	
		
			
				
					# include  "storm/modelchecker/results/ExplicitQuantitativeCheckResult.h" 
  
			
		
	
		
			
				
					# include  "storm/modelchecker/results/ExplicitQualitativeCheckResult.h" 
  
			
		
	
		
			
				
					# include  "storm/utility/vector.h" 
  
			
		
	
		
			
				
					# include  "storm/models/sparse/Dtmc.h" 
  
			
		
	
		
			
				
					# include  "storm/models/sparse/Mdp.h" 
  
			
		
	
		
			
				
					# include  "storm/models/sparse/StandardRewardModel.h" 
  
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -130,6 +131,18 @@ namespace storm { 
			
		
	
		
			
				
					            }  
			
		
	
		
			
				
					        }  
			
		
	
		
			
				
					         
			
		
	
		
			
				
					        template  < typename  SparseModelType ,  typename  ConstantType >  
			
		
	
		
			
				
					        std : : unique_ptr < QuantitativeCheckResult < ConstantType > >  SparseParameterLiftingModelChecker < SparseModelType ,  ConstantType > : : getBound ( storm : : storage : : ParameterRegion < typename  SparseModelType : : ValueType >  const &  region ,  storm : : solver : : OptimizationDirection  const &  dirForParameters )  {  
			
		
	
		
			
				
					            STORM_LOG_WARN_COND ( this - > currentCheckTask - > getFormula ( ) . hasQuantitativeResult ( ) ,  " Computing quantitative bounds for a qualitative formula... " ) ;  
			
		
	
		
			
				
					            return  std : : make_unique < ExplicitQuantitativeCheckResult < ConstantType > > ( std : : move ( computeQuantitativeValues ( region ,  dirForParameters ) - > template  asExplicitQuantitativeCheckResult < ConstantType > ( ) ) ) ;  
			
		
	
		
			
				
					        }  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					        template  < typename  SparseModelType ,  typename  ConstantType >  
			
		
	
		
			
				
					        typename  SparseModelType : : ValueType  SparseParameterLiftingModelChecker < SparseModelType ,  ConstantType > : : getBoundAtInitState ( storm : : storage : : ParameterRegion < typename  SparseModelType : : ValueType >  const &  region ,  storm : : solver : : OptimizationDirection  const &  dirForParameters )  {  
			
		
	
		
			
				
					            STORM_LOG_THROW ( this - > parametricModel - > getInitialStates ( ) . getNumberOfSetBits ( )  = =  1 ,  storm : : exceptions : : NotSupportedException ,  " Getting a bound at the initial state requires a model with a single initial state. " ) ;  
			
		
	
		
			
				
					            return  storm : : utility : : convertNumber < typename  SparseModelType : : ValueType > ( getBound ( region ,  dirForParameters ) - > template  asExplicitQuantitativeCheckResult < ConstantType > ( ) [ * this - > parametricModel - > getInitialStates ( ) . begin ( ) ] ) ;  
			
		
	
		
			
				
					        }  
			
		
	
		
			
				
					         
			
		
	
		
			
				
					        template  < typename  SparseModelType ,  typename  ConstantType >  
			
		
	
		
			
				
					        SparseModelType  const &  SparseParameterLiftingModelChecker < SparseModelType ,  ConstantType > : : getConsideredParametricModel ( )  const  {  
			
		
	
		
			
				
					            return  * parametricModel ;