|  | @ -2,41 +2,37 @@ | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include <map>
 |  |  | #include <map>
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/models/sparse/Dtmc.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/models/sparse/Ctmc.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/models/sparse/Mdp.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/models/sparse/MarkovAutomaton.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/models/sparse/StandardRewardModel.h"
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/storage/expressions/ExpressionManager.h"
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/settings/modules/BuildSettings.h"
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/builder/RewardModelBuilder.h"
 |  |  | #include "storm/builder/RewardModelBuilder.h"
 | 
		
	
		
			
				|  |  | #include "storm/builder/ChoiceInformationBuilder.h"
 |  |  | #include "storm/builder/ChoiceInformationBuilder.h"
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/exceptions/AbortException.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/exceptions/WrongFormatException.h"
 | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/generator/PrismNextStateGenerator.h"
 |  |  | #include "storm/generator/PrismNextStateGenerator.h"
 | 
		
	
		
			
				|  |  | #include "storm/generator/JaniNextStateGenerator.h"
 |  |  | #include "storm/generator/JaniNextStateGenerator.h"
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/models/sparse/Dtmc.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/models/sparse/Ctmc.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/models/sparse/Mdp.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/models/sparse/MarkovAutomaton.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/models/sparse/StandardRewardModel.h"
 | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/settings/modules/BuildSettings.h"
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/Edge.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/storage/jani/EdgeDestination.h"
 |  |  |  | 
		
	
		
			
				|  |  |  |  |  | #include "storm/storage/expressions/ExpressionManager.h"
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/Model.h"
 |  |  | #include "storm/storage/jani/Model.h"
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/Automaton.h"
 |  |  | #include "storm/storage/jani/Automaton.h"
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/Location.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/storage/jani/AutomatonComposition.h"
 |  |  | #include "storm/storage/jani/AutomatonComposition.h"
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/ParallelComposition.h"
 |  |  | #include "storm/storage/jani/ParallelComposition.h"
 | 
		
	
		
			
				|  |  | #include "storm/storage/jani/CompositionInformationVisitor.h"
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/utility/prism.h"
 |  |  |  | 
		
	
		
			
				|  |  |  |  |  | #include "storm/utility/builder.h"
 | 
		
	
		
			
				|  |  | #include "storm/utility/constants.h"
 |  |  | #include "storm/utility/constants.h"
 | 
		
	
		
			
				|  |  |  |  |  | #include "storm/utility/prism.h"
 | 
		
	
		
			
				|  |  | #include "storm/utility/macros.h"
 |  |  | #include "storm/utility/macros.h"
 | 
		
	
		
			
				|  |  | #include "storm/utility/ConstantsComparator.h"
 |  |  | #include "storm/utility/ConstantsComparator.h"
 | 
		
	
		
			
				|  |  | #include "storm/utility/builder.h"
 |  |  |  | 
		
	
		
			
				|  |  |  |  |  | #include "storm/utility/SignalHandler.h"
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/exceptions/WrongFormatException.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/exceptions/InvalidArgumentException.h"
 |  |  |  | 
		
	
		
			
				|  |  | #include "storm/exceptions/InvalidOperationException.h"
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | namespace storm { |  |  | namespace storm { | 
		
	
		
			
				|  |  |     namespace builder { |  |  |     namespace builder { | 
		
	
	
		
			
				|  | @ -246,9 +242,9 @@ namespace storm { | 
		
	
		
			
				|  |  |                     ++currentRowGroup; |  |  |                     ++currentRowGroup; | 
		
	
		
			
				|  |  |                 } |  |  |                 } | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |                 ++numberOfExploredStates; | 
		
	
		
			
				|  |  |                 if (generator->getOptions().isShowProgressSet()) { |  |  |                 if (generator->getOptions().isShowProgressSet()) { | 
		
	
		
			
				|  |  |                     ++numberOfExploredStatesSinceLastMessage; |  |  |                     ++numberOfExploredStatesSinceLastMessage; | 
		
	
		
			
				|  |  |                     ++numberOfExploredStates; |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                     auto now = std::chrono::high_resolution_clock::now(); |  |  |                     auto now = std::chrono::high_resolution_clock::now(); | 
		
	
		
			
				|  |  |                     auto durationSinceLastMessage = std::chrono::duration_cast<std::chrono::seconds>(now - timeOfLastMessage).count(); |  |  |                     auto durationSinceLastMessage = std::chrono::duration_cast<std::chrono::seconds>(now - timeOfLastMessage).count(); | 
		
	
	
		
			
				|  | @ -260,6 +256,13 @@ namespace storm { | 
		
	
		
			
				|  |  |                         numberOfExploredStatesSinceLastMessage = 0; |  |  |                         numberOfExploredStatesSinceLastMessage = 0; | 
		
	
		
			
				|  |  |                     } |  |  |                     } | 
		
	
		
			
				|  |  |                 } |  |  |                 } | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |                 if (storm::utility::resources::isTerminate()) { | 
		
	
		
			
				|  |  |  |  |  |                     auto durationSinceStart = std::chrono::duration_cast<std::chrono::seconds>(std::chrono::high_resolution_clock::now() - timeOfStart).count(); | 
		
	
		
			
				|  |  |  |  |  |                     std::cout << "Explored " << numberOfExploredStates << " states in " << durationSinceStart << " seconds before abort." << std::endl; | 
		
	
		
			
				|  |  |  |  |  |                     STORM_LOG_THROW(false, storm::exceptions::AbortException, "Aborted in state space exploration."); | 
		
	
		
			
				|  |  |  |  |  |                     break; | 
		
	
		
			
				|  |  |  |  |  |                 } | 
		
	
		
			
				|  |  |             } |  |  |             } | 
		
	
		
			
				|  |  |              |  |  |              | 
		
	
		
			
				|  |  |             if (markovianStates) { |  |  |             if (markovianStates) { | 
		
	
	
		
			
				|  | 
 |