Structs§
- __
mpz_ struct - ppl_
Coefficient_ tag - ppl_
Constraint_ System_ const_ iterator_ tag - ppl_
Constraint_ System_ tag - ppl_
Constraint_ tag - ppl_
Generator_ System_ tag - ppl_
Generator_ tag - ppl_
Linear_ Expression_ tag - ppl_
Polyhedron_ tag
Constants§
- ppl_
enum_ Constraint_ Type_ PPL_ CONSTRAINT_ TYPE_ EQUAL - The constraint is of the form \f$e = 0\f$.
- ppl_
enum_ Constraint_ Type_ PPL_ CONSTRAINT_ TYPE_ GREATER_ OR_ EQUAL - The constraint is of the form \f$e \geq 0\f$.
- ppl_
enum_ Constraint_ Type_ PPL_ CONSTRAINT_ TYPE_ GREATER_ THAN - The constraint is of the form \f$e > 0\f$.
- ppl_
enum_ Constraint_ Type_ PPL_ CONSTRAINT_ TYPE_ LESS_ OR_ EQUAL - The constraint is of the form \f$e \leq 0\f$.
- ppl_
enum_ Constraint_ Type_ PPL_ CONSTRAINT_ TYPE_ LESS_ THAN - The constraint is of the form \f$e < 0\f$.
- ppl_
enum_ Generator_ Type_ PPL_ GENERATOR_ TYPE_ CLOSURE_ POINT - The generator is a closure point.
- ppl_
enum_ Generator_ Type_ PPL_ GENERATOR_ TYPE_ LINE - The generator is a line.
- ppl_
enum_ Generator_ Type_ PPL_ GENERATOR_ TYPE_ POINT - The generator is a point.
- ppl_
enum_ Generator_ Type_ PPL_ GENERATOR_ TYPE_ RAY - The generator is a ray.
- ppl_
enum_ error_ code_ PPL_ ARITHMETIC_ OVERFLOW - \hideinitializer An arithmetic overflow occurred and the computation was consequently interrupted. This can only happen in library’s incarnations using bounded integers as coefficients.
- ppl_
enum_ error_ code_ PPL_ ERROR_ DOMAIN_ ERROR - \hideinitializer A function has been invoked outside its domain of definition.
- ppl_
enum_ error_ code_ PPL_ ERROR_ INTERNAL_ ERROR - \hideinitializer An internal error that was diagnosed by the PPL itself. This indicates a bug in the PPL.
- ppl_
enum_ error_ code_ PPL_ ERROR_ INVALID_ ARGUMENT - \hideinitializer A function has been invoked with an invalid argument.
- ppl_
enum_ error_ code_ PPL_ ERROR_ LENGTH_ ERROR - \hideinitializer The construction of an object that would exceed its maximum permitted size was attempted.
- ppl_
enum_ error_ code_ PPL_ ERROR_ LOGIC_ ERROR - \hideinitializer The client program attempted to use the PPL in a way that violates its internal logic. This happens, for instance, when the client attempts to use the timeout facilities on a system that does not support them.
- ppl_
enum_ error_ code_ PPL_ ERROR_ OUT_ OF_ MEMORY - \hideinitializer The virtual memory available to the process has been exhausted.
- ppl_
enum_ error_ code_ PPL_ ERROR_ UNEXPECTED_ ERROR - \hideinitializer A totally unknown, totally unexpected error happened. This indicates a bug in the PPL.
- ppl_
enum_ error_ code_ PPL_ ERROR_ UNKNOWN_ STANDARD_ EXCEPTION - \hideinitializer A standard exception has been raised by the C++ run-time environment. This indicates a bug in the PPL.
- ppl_
enum_ error_ code_ PPL_ STDIO_ ERROR - \hideinitializer
An error occurred during a C input/output operation. A more
precise indication of what went wrong is available via
errno. - ppl_
enum_ error_ code_ PPL_ TIMEOUT_ EXCEPTION - \hideinitializer An exception has been raised by the PPL as a timeout previously set by the user has expired.
Functions§
- ppl_
Coefficient_ ⚠is_ bounded - \relates ppl_Coefficient_tag \brief Returns a positive integer if coefficients are bounded; returns 0 otherwise.
- ppl_
Coefficient_ ⚠to_ mpz_ t - \relates ppl_Coefficient_tag \brief Sets the value of the GMP integer \p z to the value of \p c.
- ppl_
Constraint_ ⚠System_ begin - \relates ppl_Constraint_System_tag \brief Assigns to \p cit a const iterator “pointing” to the beginning of the constraint system \p cs.
- ppl_
Constraint_ ⚠System_ const_ iterator_ dereference - \relates ppl_Constraint_System_const_iterator_tag \brief Dereference \p cit writing a const handle to the resulting constraint at address \p pc.
- ppl_
Constraint_ ⚠System_ const_ iterator_ equal_ test - \relates ppl_Constraint_System_const_iterator_tag \brief Returns a positive integer if the iterators corresponding to \p x and \p y are equal; returns 0 if they are different.
- ppl_
Constraint_ ⚠System_ const_ iterator_ increment - \relates ppl_Constraint_System_const_iterator_tag \brief Increment \p cit so that it “points” to the next constraint.
- ppl_
Constraint_ ⚠System_ end - \relates ppl_Constraint_System_tag \brief Assigns to \p cit a const iterator “pointing” past the end of the constraint system \p cs.
- ppl_
Constraint_ ⚠coefficient - \relates ppl_Constraint_tag \brief Copies into \p n the coefficient of variable \p var in constraint \p c.
- ppl_
Constraint_ ⚠inhomogeneous_ term - \relates ppl_Constraint_tag \brief Copies into \p n the inhomogeneous term of constraint \p c.
- ppl_
Constraint_ ⚠type - \relates ppl_Constraint_tag \brief Returns the type of constraint \p c.
- ppl_
Generator_ ⚠System_ insert_ Generator - \relates ppl_Generator_System_tag \brief Inserts a copy of the generator \p g into \p gs; the space dimension is increased, if necessary.
- ppl_
Generator_ ⚠coefficient - \relates ppl_Generator_tag \brief Copies into \p n the coefficient of variable \p var in generator \p g.
- ppl_
Generator_ ⚠divisor - \relates ppl_Generator_tag \brief If \p g is a point or a closure point assigns its divisor to \p n.
- ppl_
Generator_ ⚠type - \relates ppl_Generator_tag \brief Returns the type of generator \p g.
- ppl_
Linear_ ⚠Expression_ add_ to_ coefficient - \relates ppl_Linear_Expression_tag \brief Adds \p n to the coefficient of variable \p var in the linear expression \p le. The space dimension is set to be the maximum between \p var + 1 and the old space dimension.
- ppl_
Linear_ ⚠Expression_ add_ to_ inhomogeneous - \relates ppl_Linear_Expression_tag \brief Adds \p n to the inhomogeneous term of the linear expression \p le.
- ppl_
Polyhedron_ ⚠get_ minimized_ constraints - \relates ppl_Polyhedron_tag
- ppl_
assign_ ⚠Coefficient_ from_ mpz_ t - \relates ppl_Coefficient_tag \brief Assign to \p dst the value given by the GMP integer \p z.
- ppl_
delete_ ⚠Coefficient - \relates ppl_Coefficient_tag \brief Invalidates the handle \p c: this makes sure the corresponding resources will eventually be released.
- ppl_
delete_ ⚠Constraint_ System_ const_ iterator - \relates ppl_Constraint_System_const_iterator_tag \brief Invalidates the handle \p cit: this makes sure the corresponding resources will eventually be released.
- ppl_
delete_ ⚠Generator - \relates ppl_Generator_tag \brief Invalidates the handle \p g: this makes sure the corresponding resources will eventually be released.
- ppl_
delete_ ⚠Generator_ System - \relates ppl_Generator_System_tag \brief Invalidates the handle \p gs: this makes sure the corresponding resources will eventually be released.
- ppl_
delete_ ⚠Linear_ Expression - \relates ppl_Linear_Expression_tag \brief Invalidates the handle \p le: this makes sure the corresponding resources will eventually be released.
- ppl_
delete_ ⚠Polyhedron - \relates ppl_Polyhedron_tag
- ppl_
finalize ⚠ - \brief Finalizes the Parma Polyhedra Library. This function must be called after any other function.
- ppl_
initialize ⚠ - \brief Initializes the Parma Polyhedra Library. This function must be called before any other function.
- ppl_
new_ ⚠C_ Polyhedron_ from_ Generator_ System - \relates ppl_Polyhedron_tag
- ppl_
new_ ⚠C_ Polyhedron_ recycle_ Generator_ System - \relates ppl_Polyhedron_tag
- ppl_
new_ ⚠Coefficient - \relates ppl_Coefficient_tag \brief Creates a new coefficient with value 0 and writes a handle for the newly created coefficient at address \p pc.
- ppl_
new_ ⚠Constraint_ System_ const_ iterator - \relates ppl_Constraint_System_const_iterator_tag \brief Builds a new `const iterator’ and writes a handle to it at address \p pcit.
- ppl_
new_ ⚠Generator - \relates ppl_Generator_tag \brief Creates a new generator of direction \p le and type \p t. If the generator to be created is a point or a closure point, the divisor \p d is applied to \p le. For other types of generators \p d is simply disregarded. A handle for the new generator is written at address \p pg. The space dimension of the new generator is equal to the space dimension of \p le.
- ppl_
new_ ⚠Generator_ System - \relates ppl_Generator_System_tag \brief Builds an empty system of generators and writes a handle to it at address \p pgs.
- ppl_
new_ ⚠Linear_ Expression_ with_ dimension - \relates ppl_Linear_Expression_tag \brief Creates a new linear expression corresponding to the constant 0 in a d-dimensional space; writes a handle for the new linear expression at address \p ple.
- ppl_
thread_ ⚠finalize - \brief Performs thread specific finalization for the Parma Polyhedra Library.
- ppl_
thread_ ⚠initialize - \brief Performs thread specific initialization for the Parma Polyhedra Library.
Type Aliases§
- mp_
limb_ t - mpz_t
- ppl_
Coefficient_ t - \interface ppl_Coefficient_tag \brief Types and functions for coefficients.
- ppl_
Constraint_ System_ const_ iterator_ t - \interface ppl_Constraint_System_const_iterator_tag \brief Types and functions for iterating on constraint systems.
- ppl_
Generator_ System_ t - \interface ppl_Generator_System_tag \brief Types and functions for generator systems.
- ppl_
Generator_ t - \interface ppl_Generator_tag \brief Types and functions for generators.
- ppl_
Linear_ Expression_ t - \interface ppl_Linear_Expression_tag \brief Types and functions for linear expressions.
- ppl_
Polyhedron_ t - ppl_
const_ Coefficient_ t - \interface ppl_Coefficient_tag \brief Types and functions for coefficients.
- ppl_
const_ Constraint_ System_ const_ iterator_ t - \interface ppl_Constraint_System_const_iterator_tag \brief Types and functions for iterating on constraint systems.
- ppl_
const_ Constraint_ System_ t - \interface ppl_Constraint_System_tag \brief Types and functions for constraint systems.
- ppl_
const_ Constraint_ t - \interface ppl_Constraint_tag \brief Types and functions for constraints.
- ppl_
const_ Generator_ System_ t - \interface ppl_Generator_System_tag \brief Types and functions for generator systems.
- ppl_
const_ Generator_ t - \interface ppl_Generator_tag \brief Types and functions for generators.
- ppl_
const_ Linear_ Expression_ t - \interface ppl_Linear_Expression_tag \brief Types and functions for linear expressions.
- ppl_
const_ Polyhedron_ t - ppl_
dimension_ type - \brief An unsigned integral type for representing space dimensions.
- ppl_
enum_ Constraint_ Type - \brief \ingroup Datatypes Describes the relations represented by a constraint.
- ppl_
enum_ Generator_ Type - \brief \ingroup Datatypes Describes the different kinds of generators.
- ppl_
enum_ error_ code - \brief Defines the error codes that any function may return.