| 
					
					
						
							
						
					
					
				 | 
				@ -24,7 +24,7 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				         */ | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				        template<typename ValueType> | 
				 | 
				 | 
				        template<typename ValueType> | 
			
		
		
	
		
			
				 | 
				 | 
				        std::shared_ptr<storm::storage::DFT<ValueType>> loadDFTGalileo(std::string const& file) { | 
				 | 
				 | 
				        std::shared_ptr<storm::storage::DFT<ValueType>> loadDFTGalileo(std::string const& file) { | 
			
		
		
	
		
			
				 | 
				 | 
				             return std::make_shared<storm::storage::DFT<ValueType>>(storm::parser::DFTGalileoParser<ValueType>::parseDFT(file)); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            return std::make_shared<storm::storage::DFT<ValueType>>(storm::parser::DFTGalileoParser<ValueType>::parseDFT(file)); | 
			
		
		
	
		
			
				 | 
				 | 
				        } | 
				 | 
				 | 
				        } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				        /*! | 
				 | 
				 | 
				        /*! | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -36,8 +36,8 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				         */ | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				        template<typename ValueType> | 
				 | 
				 | 
				        template<typename ValueType> | 
			
		
		
	
		
			
				 | 
				 | 
				        std::shared_ptr<storm::storage::DFT<ValueType>> loadDFTJson(std::string const& file) { | 
				 | 
				 | 
				        std::shared_ptr<storm::storage::DFT<ValueType>> loadDFTJson(std::string const& file) { | 
			
		
		
	
		
			
				 | 
				 | 
				                storm::parser::DFTJsonParser<ValueType> parser; | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				                return std::make_shared<storm::storage::DFT<ValueType>>(parser.parseJson(file)); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            storm::parser::DFTJsonParser<ValueType> parser; | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            return std::make_shared<storm::storage::DFT<ValueType>>(parser.parseJson(file)); | 
			
		
		
	
		
			
				 | 
				 | 
				        } | 
				 | 
				 | 
				        } | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				        /*! | 
				 | 
				 | 
				        /*! | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -52,8 +52,10 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				         * | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				         * @return Result. | 
				 | 
				 | 
				         * @return Result. | 
			
		
		
	
		
			
				 | 
				 | 
				         */ | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				        template <typename ValueType> | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				        typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results analyzeDFT(storm::storage::DFT<ValueType> const& dft, std::vector<std::shared_ptr<storm::logic::Formula const>> const& properties, bool symred, bool allowModularisation, bool enableDC, bool printOutput) { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        template<typename ValueType> | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        analyzeDFT(storm::storage::DFT<ValueType> const& dft, std::vector<std::shared_ptr<storm::logic::Formula const>> const& properties, bool symred, bool allowModularisation, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                   bool enableDC, bool printOutput) { | 
			
		
		
	
		
			
				 | 
				 | 
				            storm::modelchecker::DFTModelChecker<ValueType> modelChecker; | 
				 | 
				 | 
				            storm::modelchecker::DFTModelChecker<ValueType> modelChecker; | 
			
		
		
	
		
			
				 | 
				 | 
				            typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results results = modelChecker.check(dft, properties, symred, allowModularisation, enableDC, 0.0); | 
				 | 
				 | 
				            typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results results = modelChecker.check(dft, properties, symred, allowModularisation, enableDC, 0.0); | 
			
		
		
	
		
			
				 | 
				 | 
				            if (printOutput) { | 
				 | 
				 | 
				            if (printOutput) { | 
			
		
		
	
	
		
			
				| 
					
					
					
						
							
						
					
				 | 
				@ -76,10 +78,13 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				         * | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				         * @return Result. | 
				 | 
				 | 
				         * @return Result. | 
			
		
		
	
		
			
				 | 
				 | 
				         */ | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				        template <typename ValueType> | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				        typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results analyzeDFTApprox(storm::storage::DFT<ValueType> const& dft, std::vector<std::shared_ptr<storm::logic::Formula const>> const& properties, bool symred, bool allowModularisation, bool enableDC, double approximationError, bool printOutput) { | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        template<typename ValueType> | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        analyzeDFTApprox(storm::storage::DFT<ValueType> const& dft, std::vector<std::shared_ptr<storm::logic::Formula const>> const& properties, bool symred, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                         bool allowModularisation, bool enableDC, double approximationError, bool printOutput) { | 
			
		
		
	
		
			
				 | 
				 | 
				            storm::modelchecker::DFTModelChecker<ValueType> modelChecker; | 
				 | 
				 | 
				            storm::modelchecker::DFTModelChecker<ValueType> modelChecker; | 
			
		
		
	
		
			
				 | 
				 | 
				            typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results results = modelChecker.check(dft, properties, symred, allowModularisation, enableDC, approximationError); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				            typename storm::modelchecker::DFTModelChecker<ValueType>::dft_results results = modelChecker.check(dft, properties, symred, allowModularisation, enableDC, | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				                                                                                                               approximationError); | 
			
		
		
	
		
			
				 | 
				 | 
				            if (printOutput) { | 
				 | 
				 | 
				            if (printOutput) { | 
			
		
		
	
		
			
				 | 
				 | 
				                modelChecker.printTimings(); | 
				 | 
				 | 
				                modelChecker.printTimings(); | 
			
		
		
	
		
			
				 | 
				 | 
				                modelChecker.printResults(); | 
				 | 
				 | 
				                modelChecker.printResults(); | 
			
		
		
	
	
		
			
				| 
					
						
							
						
					
					
						
							
						
					
					
				 | 
				@ -109,9 +114,21 @@ namespace storm { | 
			
		
		
	
		
			
				 | 
				 | 
				         * Transform DFT to GSPN. | 
				 | 
				 | 
				         * Transform DFT to GSPN. | 
			
		
		
	
		
			
				 | 
				 | 
				         * | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				         * @param dft DFT. | 
				 | 
				 | 
				         * @param dft DFT. | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * @return Pair of GSPN and id of failed place corresponding to the top level element. | 
			
		
		
	
		
			
				 | 
				 | 
				         */ | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				        template<typename ValueType> | 
				 | 
				 | 
				        template<typename ValueType> | 
			
		
		
	
		
			
				 | 
				 | 
				        void transformToGSPN(storm::storage::DFT<ValueType> const& dft); | 
				 | 
				 | 
				 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        std::pair<std::shared_ptr<storm::gspn::GSPN>, uint64_t> transformToGSPN(storm::storage::DFT<ValueType> const& dft); | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        /*! | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * Transform GSPN to Jani model. | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * @param gspn GSPN. | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * @param toplevelFailedPlace Id of the failed place in the GSPN for the top level element in the DFT. | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         * @return JANI model. | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				         */ | 
			
		
		
	
		
			
				 | 
				 | 
				 | 
				 | 
				 | 
				        std::shared_ptr<storm::jani::Model> transformToJani(storm::gspn::GSPN const& gspn, uint64_t toplevelFailedPlace); | 
			
		
		
	
		
			
				 | 
				 | 
				
 | 
				 | 
				 | 
				
 | 
			
		
		
	
		
			
				 | 
				 | 
				    } | 
				 | 
				 | 
				    } | 
			
		
		
	
		
			
				 | 
				 | 
				} | 
				 | 
				 | 
				} |