PPL Java Language Interface  0.12.1
parma_polyhedra_library.C_Polyhedron Class Reference

A topologically closed convex polyhedron. More...

Inheritance diagram for parma_polyhedra_library.C_Polyhedron:

List of all members.

Public Member Functions

Standard Constructors and Destructor
 C_Polyhedron (long d, Degenerate_Element kind)
 Builds a new C polyhedron of dimension d.
 C_Polyhedron (C_Polyhedron y)
 Builds a new C polyhedron that is copy of y.
 C_Polyhedron (C_Polyhedron y, Complexity_Class complexity)
 Builds a new C polyhedron that is a copy of ph.
 C_Polyhedron (Constraint_System cs)
 Builds a new C polyhedron from the system of constraints cs.
 C_Polyhedron (Congruence_System cgs)
 Builds a new C polyhedron from the system of congruences cgs.
native void free ()
 Releases all resources managed by this, also resetting it to a null reference.
Constructors Behaving as Conversion Operators

Besides the conversions listed here below, the library also provides conversion operators that build a semantic geometric description starting from any other semantic geometric description (e.g., Grid(C_Polyhedron y), C_Polyhedron(BD_Shape_mpq_class y), etc.). Clearly, the conversion operators are only available if both the source and the target semantic geometric descriptions have been enabled when configuring the library. The conversions also taking as argument a complexity class sometimes provide non-trivial precision/efficiency trade-offs.

 C_Polyhedron (NNC_Polyhedron y)
 Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y.
 C_Polyhedron (NNC_Polyhedron y, Complexity_Class complexity)
 Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y.
 C_Polyhedron (Generator_System gs)
 Builds a new C polyhedron from the system of generators gs.
Other Methods
native boolean upper_bound_assign_if_exact (C_Polyhedron y)
 If the upper bound of this and y is exact it is assigned to this and true is returned; otherwise false is returned.

Static Public Member Functions

static native Pair
< C_Polyhedron,
Pointset_Powerset_NNC_Polyhedron > 
linear_partition (C_Polyhedron p, C_Polyhedron q)
 Partitions q with respect to p.

Protected Member Functions

native void finalize ()
 Releases all resources managed by this.

Detailed Description

A topologically closed convex polyhedron.


Constructor & Destructor Documentation

Builds a new C polyhedron of dimension d.

If kind is EMPTY, the newly created polyhedron will be empty; otherwise, it will be a universe polyhedron.

Builds a new C polyhedron that is a copy of ph.

The complexity argument is ignored.

Builds a new C polyhedron from the system of constraints cs.

The new polyhedron will inherit the space dimension of cs.

Builds a new C polyhedron from the system of congruences cgs.

The new polyhedron will inherit the space dimension of cgs.

Builds a C polyhedron that is a copy of the topological closure of the NNC polyhedron y.

The complexity argument is ignored, since the exact constructor has polynomial complexity.

Builds a new C polyhedron from the system of generators gs.

The new polyhedron will inherit the space dimension of gs.


Member Function Documentation

If the upper bound of this and y is exact it is assigned to this and true is returned; otherwise false is returned.

Exceptions:
Invalid_Argument_ExceptionThrown if this and y are dimension-incompatible.
static native Pair<C_Polyhedron, Pointset_Powerset_NNC_Polyhedron> parma_polyhedra_library.C_Polyhedron.linear_partition ( C_Polyhedron  p,
C_Polyhedron  q 
)
static

Partitions q with respect to p.

Let p and q be two polyhedra. The function returns a pair object r such that

  • r.first is the intersection of p and q;
  • r.second has the property that all its elements are pairwise disjoint and disjoint from p;
  • the set-theoretical union of r.first with all the elements of r.second gives q (i.e., r is the representation of a partition of q).

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