@ -1,5 +1,7 @@ 
			
		
	
		
			
				
					# include  "modelchecking.h" 
  
			
		
	
		
			
				
					# include  "result.h" 
  
			
		
	
		
			
				
					# include  "storm/api/storm.h" 
  
			
		
	
		
			
				
					# include  "storm/environment/Environment.h" 
  
			
		
	
		
			
				
					# include  "storm/modelchecker/csl/helper/SparseCtmcCslHelper.h" 
  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					template < typename  ValueType >  
			
		
	
		
			
				
					using  CheckTask  =  storm : : modelchecker : : CheckTask < storm : : logic : : Formula ,  ValueType > ;  
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -10,6 +12,12 @@ std::shared_ptr<storm::modelchecker::CheckResult> modelCheckingSparseEngine(std: 
			
		
	
		
			
				
					    return  storm : : api : : verifyWithSparseEngine < ValueType > ( model ,  task ) ;  
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					std : : vector < double >  computeTransientProbabilities ( storm : : Environment  const &  env ,  std : : shared_ptr < storm : : models : : sparse : : Ctmc < double > >  ctmc ,  storm : : storage : : BitVector  const &  phiStates ,  storm : : storage : : BitVector  const &  psiStates ,  double  timeBound )  {  
			
		
	
		
			
				
					    return  storm : : modelchecker : : helper : : SparseCtmcCslHelper : : computeAllTransientProbabilities ( env ,  ctmc - > getTransitionMatrix ( ) ,  ctmc - > getBackwardTransitions ( ) ,  ctmc - > getInitialStates ( ) ,  phiStates ,  psiStates ,  ctmc - > getExitRateVector ( ) ,  timeBound ) ;  
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					// Thin wrapper for computing prob01 states
  
			
		
	
		
			
				
					template < typename  ValueType >  
			
		
	
		
			
				
					std : : pair < storm : : storage : : BitVector ,  storm : : storage : : BitVector >  computeProb01 ( storm : : models : : sparse : : Dtmc < ValueType >  const &  model ,  storm : : storage : : BitVector  const &  phiStates ,  storm : : storage : : BitVector  const &  psiStates )  {  
			
		
	
	
		
			
				
					
						
							
								 
						
						
							
								 
						
						
					 
				
				@ -44,6 +52,7 @@ void define_modelchecking(py::module& m) { 
			
		
	
		
			
				
					    // Model checking
  
			
		
	
		
			
				
					    m . def ( " _model_checking_sparse_engine " ,  & modelCheckingSparseEngine < double > ,  " Perform model checking " ,  py : : arg ( " model " ) ,  py : : arg ( " task " ) ) ;  
			
		
	
		
			
				
					    m . def ( " _parametric_model_checking_sparse_engine " ,  & modelCheckingSparseEngine < storm : : RationalFunction > ,  " Perform parametric model checking " ,  py : : arg ( " model " ) ,  py : : arg ( " task " ) ) ;  
			
		
	
		
			
				
					    m . def ( " compute_transient_probabilities " ,  & computeTransientProbabilities ,  " Compute transient probabilities " ) ;  
			
		
	
		
			
				
					    m . def ( " _compute_prob01states_double " ,  & computeProb01 < double > ,  " Compute prob-0-1 states " ,  py : : arg ( " model " ) ,  py : : arg ( " phi_states " ) ,  py : : arg ( " psi_states " ) ) ;  
			
		
	
		
			
				
					    m . def ( " _compute_prob01states_rationalfunc " ,  & computeProb01 < storm : : RationalFunction > ,  " Compute prob-0-1 states " ,  py : : arg ( " model " ) ,  py : : arg ( " phi_states " ) ,  py : : arg ( " psi_states " ) ) ;  
			
		
	
		
			
				
					    m . def ( " _compute_prob01states_min_double " ,  & computeProb01min < double > ,  " Compute prob-0-1 states (min) " ,  py : : arg ( " model " ) ,  py : : arg ( " phi_states " ) ,  py : : arg ( " psi_states " ) ) ;