24 #ifndef PPL_Poly_Gen_Relation_defs_hh
25 #define PPL_Poly_Gen_Relation_defs_hh 1
37 bool operator==(
const Poly_Gen_Relation& x,
const Poly_Gen_Relation& y);
41 bool operator!=(
const Poly_Gen_Relation& x,
const Poly_Gen_Relation& y);
45 Poly_Gen_Relation operator&&(
const Poly_Gen_Relation& x,
46 const Poly_Gen_Relation& y);
54 Poly_Gen_Relation
operator-(
const Poly_Gen_Relation& x,
55 const Poly_Gen_Relation& y);
57 namespace IO_Operators {
61 std::ostream&
operator<<(std::ostream& s,
const Poly_Gen_Relation& r);
92 static bool implies(flags_t x, flags_t y);
113 #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
139 #endif // !defined(PPL_Poly_Gen_Relation_defs_hh)
bool operator!=(const Box< ITV > &x, const Box< ITV > &y)
static Poly_Gen_Relation subsumes()
Adding the generator would not change the polyhedron.
friend Poly_Gen_Relation operator&&(const Poly_Gen_Relation &x, const Poly_Gen_Relation &y)
unsigned int flags_t
Poly_Gen_Relation is implemented by means of a finite bitset.
flags_t flags
This holds the current bitset.
std::ostream & operator<<(std::ostream &s, const Ask_Tell< D > &x)
static const flags_t EVERYTHING
All assertions together.
#define PPL_OUTPUT_DECLARATIONS
friend Poly_Gen_Relation operator-(const Poly_Gen_Relation &x, const Poly_Gen_Relation &y)
friend bool operator==(const Poly_Gen_Relation &x, const Poly_Gen_Relation &y)
static const flags_t SUBSUMES
bool OK() const
Checks if all the invariants are satisfied.
The entire library is confined to this namespace.
friend bool operator!=(const Poly_Gen_Relation &x, const Poly_Gen_Relation &y)
bool operator==(const Box< ITV > &x, const Box< ITV > &y)
flags_t get_flags() const
Access the internal flags: this is needed for some language interfaces.
static bool implies(flags_t x, flags_t y)
True if and only if the conjunction x implies the conjunction y.
Enable_If< Is_Singleton< T >::value, Interval< B, Info > >::type operator-(const Interval< B, Info > &x, const T &y)
static const flags_t NOTHING
static Poly_Gen_Relation nothing()
The assertion that says nothing.
The relation between a polyhedron and a generator.
Poly_Gen_Relation(flags_t mask)
Construct from a bit-mask.