24 #ifndef PPL_C_Polyhedron_inlines_hh
25 #define PPL_C_Polyhedron_inlines_hh 1
43 "n exceeds the maximum "
44 "allowed space dimension"),
53 "the space dimension of cs "
54 "exceeds the maximum allowed "
62 "C_Polyhedron(cs, recycle)",
63 "the space dimension of cs "
64 "exceeds the maximum allowed "
74 "the space dimension of gs "
75 "exceeds the maximum allowed "
83 "C_Polyhedron(gs, recycle)",
84 "the space dimension of gs "
85 "exceeds the maximum allowed "
90 template <
typename Interval>
96 "the space dimension of box "
97 "exceeds the maximum allowed "
101 template <
typename U>
108 "the space dimension of bd "
109 "exceeds the maximum allowed "
115 template <
typename U>
122 "the space dimension of os "
123 "exceeds the maximum allowed "
154 #endif // !defined(PPL_C_Polyhedron_inlines_hh)
size_t dimension_type
An unsigned integral type for representing space dimensions.
C_Polyhedron(dimension_type num_dimensions=0, Degenerate_Element kind=UNIVERSE)
Builds either the universe or the empty C polyhedron.
Polyhedron & operator=(const Polyhedron &y)
The assignment operator. (*this and y can be dimension-incompatible.)
Constraint_System constraints() const
Returns the system of constraints defining *this.
C_Polyhedron & operator=(const C_Polyhedron &y)
The assignment operator. (*this and y can be dimension-incompatible.)
Complexity_Class
Complexity pseudo-classes.
The base class for convex polyhedra.
Degenerate_Element
Kinds of degenerate abstract elements.
dimension_type check_space_dimension_overflow(const dimension_type dim, const dimension_type max, const char *domain, const char *method, const char *reason)
~C_Polyhedron()
Destructor.
A not necessarily closed convex polyhedron.
Constraint_System constraints() const
Returns a system of constraints defining *this.
A not necessarily closed, iso-oriented hyperrectangle.
A closed convex polyhedron.
bool upper_bound_assign_if_exact(const C_Polyhedron &y)
Same as poly_hull_assign_if_exact(y).
The universe element, i.e., the whole vector space.
void add_constraints(const Constraint_System &cs)
Adds a copy of the constraints in cs to the system of constraints of *this (without minimizing the re...
The entire library is confined to this namespace.
A bounded difference shape.
bool poly_hull_assign_if_exact(const C_Polyhedron &y)
If the poly-hull of *this and y is exact it is assigned to *this and true is returned, otherwise false is returned.
void m_swap(Polyhedron &y)
Swaps *this with polyhedron y. (*this and y can be dimension-incompatible.)