# ppl_Constraint_System_tag Interface Reference

Types and functions for constraint systems. More...

`#include <ppl_c_header.h>`

List of all members.

## Related Functions

(Note that these are not member functions.)
Constructors, Assignment and Destructor
int | ppl_new_Constraint_System (ppl_Constraint_System_t *pcs)
| Builds an empty system of constraints and writes a handle to it at address `pcs`.
int | ppl_new_Constraint_System_zero_dim_empty (ppl_Constraint_System_t *pcs)
| Builds a zero-dimensional, unsatisfiable constraint system and writes a handle to it at address `pcs`.
int | ppl_new_Constraint_System_from_Constraint (ppl_Constraint_System_t *pcs, ppl_const_Constraint_t c)
| Builds the singleton constraint system containing only a copy of constraint `c`; writes a handle for the newly created system at address `pcs`.
int | ppl_new_Constraint_System_from_Constraint_System (ppl_Constraint_System_t *pcs, ppl_const_Constraint_System_t cs)
| Builds a constraint system that is a copy of `cs`; writes a handle for the newly created system at address `pcs`.
int | ppl_assign_Constraint_System_from_Constraint_System (ppl_Constraint_System_t dst, ppl_const_Constraint_System_t src)
| Assigns a copy of the constraint system `src` to `dst`.
int | ppl_delete_Constraint_System (ppl_const_Constraint_System_t cs)
| Invalidates the handle `cs:` this makes sure the corresponding resources will eventually be released.
Functions that Do Not Modify the Constraint System
int | ppl_Constraint_System_space_dimension (ppl_const_Constraint_System_t cs, ppl_dimension_type *m)
| Writes to `m` the dimension of the vector space enclosing `cs`.
int | ppl_Constraint_System_empty (ppl_const_Constraint_System_t cs)
| Returns a positive integer if `cs` contains no (non-trivial) constraint; returns 0 otherwise.
int | ppl_Constraint_System_has_strict_inequalities (ppl_const_Constraint_System_t cs)
| Returns a positive integer if `cs` contains any (non-trivial) strict inequality; returns 0 otherwise.
int | ppl_Constraint_System_begin (ppl_const_Constraint_System_t cs, ppl_Constraint_System_const_iterator_t cit)
| Assigns to `cit` a const iterator "pointing" to the beginning of the constraint system `cs`.
int | ppl_Constraint_System_end (ppl_const_Constraint_System_t cs, ppl_Constraint_System_const_iterator_t cit)
| Assigns to `cit` a const iterator "pointing" past the end of the constraint system `cs`.
int | ppl_Constraint_System_OK (ppl_const_Constraint_System_t cs)
| Returns a positive integer if `cs` is well formed, i.e., if it satisfies all its implementation invariants; returns 0 and perhaps makes some noise if `cs` is broken. Useful for debugging purposes.
Functions that May Modify the Constraint System
int | ppl_Constraint_System_clear (ppl_Constraint_System_t cs)
| Removes all the constraints from the constraint system `cs` and sets its space dimension to 0.
int | ppl_Constraint_System_insert_Constraint (ppl_Constraint_System_t cs, ppl_const_Constraint_t c)
| Inserts a copy of the constraint `c` into `cs`; the space dimension is increased, if necessary.
Input/Output Functions
int | ppl_io_print_Constraint_System (ppl_const_Constraint_System_t x)
| Prints `x` to `stdout`.
int | ppl_io_fprint_Constraint_System (FILE *stream, ppl_const_Constraint_System_t x)
| Prints `x` to the given output `stream`.
int | ppl_io_asprint_Constraint_System (char **strp, ppl_const_Constraint_System_t x)
| Prints `x` to a malloc-allocated string, a pointer to which is returned via `strp`.
int | ppl_Constraint_System_ascii_dump (ppl_const_Constraint_System_t x, FILE *stream)
| Dumps an ascii representation of `x` on `stream`.
int | ppl_Constraint_System_ascii_load (ppl_Constraint_System_t x, FILE *stream)
| Loads an ascii representation of `x` from `stream`.

## Detailed Description

Types and functions for constraint systems.

The types and functions for constraint systems provide an interface towards Constraint_System.

The documentation for this interface was generated from the following file:

- ppl_c_header.h