|  |  | @ -54,18 +54,18 @@ namespace modelChecker { | 
			
		
	
		
			
				
					|  |  |  |  */ | 
			
		
	
		
			
				
					|  |  |  | template<class T> | 
			
		
	
		
			
				
					|  |  |  | class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  |    public: | 
			
		
	
		
			
				
					|  |  |  | public: | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * Constructor | 
			
		
	
		
			
				
					|  |  |  | 	 * | 
			
		
	
		
			
				
					|  |  |  |        * @parameter Dtmc The dtmc model which is checked. | 
			
		
	
		
			
				
					|  |  |  | 	 * @param Dtmc The dtmc model which is checked. | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  | 	explicit DtmcPrctlModelChecker(mrmc::models::Dtmc<T>* Dtmc); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * Copy constructor | 
			
		
	
		
			
				
					|  |  |  | 	 * | 
			
		
	
		
			
				
					|  |  |  |        * @parameter modelChecker The model checker that is copied. | 
			
		
	
		
			
				
					|  |  |  | 	 * @param modelChecker The model checker that is copied. | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  | 	explicit DtmcPrctlModelChecker(mrmc::modelChecker::DtmcPrctlModelChecker<T>* modelChecker); | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  | @ -130,7 +130,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The AP state formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns The set of states satisfying the formula, represented by a bit vector | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual mrmc::storage::BitVector checkAP(mrmc::formula::AP<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual mrmc::storage::BitVector checkAP(mrmc::formula::AP<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a formula with a Not node as root in its formula tree | 
			
		
	
	
		
			
				
					|  |  | @ -138,7 +138,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The Not state formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns The set of states satisfying the formula, represented by a bit vector | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual mrmc::storage::BitVector checkNot(mrmc::formula::Not<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual mrmc::storage::BitVector checkNot(mrmc::formula::Not<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a state formula with an Or node as root in its formula tree | 
			
		
	
	
		
			
				
					|  |  | @ -146,7 +146,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The Or state formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns The set of states satisfying the formula, represented by a bit vector | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual mrmc::storage::BitVector checkOr(mrmc::formula::Or<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual mrmc::storage::BitVector checkOr(mrmc::formula::Or<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a state formula with a probabilistic operator node as root in its formula tree | 
			
		
	
	
		
			
				
					|  |  | @ -154,7 +154,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The state formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns The set of states satisfying the formula, represented by a bit vector | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual mrmc::storage::BitVector checkProbabilisticOperator(mrmc::formula::ProbabilisticOperator<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual mrmc::storage::BitVector checkProbabilisticOperator(mrmc::formula::ProbabilisticOperator<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a path formula; Will infer the actual type of formula and delegate it | 
			
		
	
	
		
			
				
					|  |  | @ -173,7 +173,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The Bounded Until path formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns for each state the probability that the path formula holds. | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual std::vector<T> checkBoundedUntil(mrmc::formula::BoundedUntil<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual std::vector<T> checkBoundedUntil(mrmc::formula::BoundedUntil<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a path formula with a Next operator node as root in its formula tree | 
			
		
	
	
		
			
				
					|  |  | @ -181,7 +181,7 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The Next path formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns for each state the probability that the path formula holds. | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual std::vector<T> checkNext(mrmc::formula::Next<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual std::vector<T> checkNext(mrmc::formula::Next<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | 	/*! | 
			
		
	
		
			
				
					|  |  |  | 	 * The check method for a path formula with an Until operator node as root in its formula tree | 
			
		
	
	
		
			
				
					|  |  | @ -189,9 +189,9 @@ class DtmcPrctlModelChecker { | 
			
		
	
		
			
				
					|  |  |  | 	 * @param formula The Until path formula to check | 
			
		
	
		
			
				
					|  |  |  | 	 * @returns for each state the probability that the path formula holds. | 
			
		
	
		
			
				
					|  |  |  | 	 */ | 
			
		
	
		
			
				
					|  |  |  |       virtual std::vector<T> checkUntil(mrmc::formula::Until<T>*) = 0; | 
			
		
	
		
			
				
					|  |  |  | 	virtual std::vector<T> checkUntil(mrmc::formula::Until<T>* formula) = 0; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |    private: | 
			
		
	
		
			
				
					|  |  |  | private: | 
			
		
	
		
			
				
					|  |  |  | 	mrmc::models::Dtmc<T>* dtmc; | 
			
		
	
		
			
				
					|  |  |  | }; | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  | 
 |