|  | @ -2,7 +2,6 @@ | 
		
	
		
			
				|  |  | #define STORM_STORAGE_GEOMETRY_NATIVEPOLYTOPE_H_ |  |  | #define STORM_STORAGE_GEOMETRY_NATIVEPOLYTOPE_H_ | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | #include "storm/storage/geometry/Polytope.h" |  |  | #include "storm/storage/geometry/Polytope.h" | 
		
	
		
			
				|  |  | #include "storm/storage/expressions/Expressions.h" |  |  |  | 
		
	
		
			
				|  |  | #include "storm/adapters/EigenAdapter.h" |  |  | #include "storm/adapters/EigenAdapter.h" | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | namespace storm { |  |  | namespace storm { | 
		
	
	
		
			
				|  | @ -125,8 +124,20 @@ namespace storm { | 
		
	
		
			
				|  |  |                  */ |  |  |                  */ | 
		
	
		
			
				|  |  |                 virtual std::pair<Point, bool> optimize(Point const& direction) const override; |  |  |                 virtual std::pair<Point, bool> optimize(Point const& direction) const override; | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                 virtual bool isNativePolytope() const override; |  |  |  | 
		
	
		
			
				|  |  |  |  |  |                 /*! | 
		
	
		
			
				|  |  |  |  |  |                  * declares one variable for each dimension and returns the obtained variables. | 
		
	
		
			
				|  |  |  |  |  |                  * @param manager The expression manager that keeps track of the variables | 
		
	
		
			
				|  |  |  |  |  |                  * @param namePrefix The prefix that is prepanded to the variable index | 
		
	
		
			
				|  |  |  |  |  |                  */ | 
		
	
		
			
				|  |  |  |  |  |                 virtual std::vector<storm::expressions::Variable> declareVariables(storm::expressions::ExpressionManager& manager, std::string const& namePrefix) const override; | 
		
	
		
			
				|  |  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |                 /*! | 
		
	
		
			
				|  |  |  |  |  |                  * returns the constrains defined by this polytope as an expression over the given variables | 
		
	
		
			
				|  |  |  |  |  |                  */ | 
		
	
		
			
				|  |  |  |  |  |                 virtual std::vector<storm::expressions::Expression> getConstraints(storm::expressions::ExpressionManager const& manager, std::vector<storm::expressions::Variable> const& variables) const override; | 
		
	
		
			
				|  |  |  |  |  |                  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |  |  |  |                 virtual bool isNativePolytope() const override; | 
		
	
		
			
				|  |  |             private: |  |  |             private: | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                 // returns the vertices of this polytope as EigenVectors |  |  |                 // returns the vertices of this polytope as EigenVectors | 
		
	
	
		
			
				|  | @ -136,12 +147,6 @@ namespace storm { | 
		
	
		
			
				|  |  |                 std::pair<EigenVector, bool> optimize(EigenVector const& direction) const; |  |  |                 std::pair<EigenVector, bool> optimize(EigenVector const& direction) const; | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                 // declares one variable for each constraint and returns the obtained variables. |  |  |  | 
		
	
		
			
				|  |  |                 std::vector<storm::expressions::Variable> declareVariables(storm::expressions::ExpressionManager& manager, std::string const& namePrefix) const; |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  |                 // returns the constrains defined by this polytope as an expresseion |  |  |  | 
		
	
		
			
				|  |  |                 std::vector<storm::expressions::Expression> getConstraints(storm::expressions::ExpressionManager const& manager, std::vector<storm::expressions::Variable> const& variables) const; |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  |  | 
		
	
		
			
				|  |  | 
 |  |  | 
 | 
		
	
		
			
				|  |  |                 //Stores whether the polytope is empty or not |  |  |                 //Stores whether the polytope is empty or not | 
		
	
		
			
				|  |  |                 mutable EmptyStatus emptyStatus; |  |  |                 mutable EmptyStatus emptyStatus; | 
		
	
	
		
			
				|  | 
 |