next up previous contents
Next: Z-Polyhedra Up: Lattices Previous: Theoretical background   Contents

Important functions in Lattice.c

void PrintLatticeUnion
(FILE *fp, char *format, LatticeUnion *Head): print the contents of a list of Lattices 'Head'

void LatticeUnion_Free
(LatticeUnion *Head): free the memory allocated to a union of lattices

LatticeUnion * LatticeUnion_Alloc
(void) : allocate a head for a list of Lattices

Lattice * EmptyLattice
(int dimension): create a empty lattice

Bool isEmptyLattice
(Lattice *A): check if a lattice verifies the empty form

Bool isLinear
(Lattice *A): check whether a lattice is linear (i.e. contains 0) or not

void AffineHermite
(Lattice *A, Lattice **H, Lattice **U): find the HNF(Hermite Normal Form) for a lattice

Bool LatticeIncludes
(Lattice *A, Lattice *B): Verifies the lattice inclusion

Bool sameLattice
(Lattice *A, Lattice *B): check the similarity of two lattices

Lattice * ExtractLinearPart
(Lattice *A): return the linear part (matrix) of an affine lattice

Lattice * LatticeIntersection
(Lattice *X, Lattice *Y): given two lattices 'A' and 'B', return their intersection

LatticeUnion * LatticeDifference
(Matrix *A,Matrix *B): compute the lattice difference

static LatticeUnion * SplitLattice
(Matrix *B1, Matrix *B2, Matrix *C): rearrange a lattice as a union of lattices starting from a subset

static void AddLattice
(LatticeUnion *Head, Matrix *B1, Matrix *B2, int NumofTimes, int Colnumber): add lattices to a existing union

int FindHermiteBasisofDomain
(Polyhedron *A, Matrix **B): find the Hermite basis of a polyhedron

Lattice * LatticeImage
(Lattice *A, Matrix *M): find the image of a lattice

Lattice * LatticePreimage
(Lattice *L, Matrix *G): find the preimage of a lattice

Bool IsLattice
(Matrix *m): check that the lattice is integral and full dimensional

static Bool Simplify
(LatticeUnion **InputList, LatticeUnion **ResultList, int dim): tries to simplify a lattice union

static Bool SameLinearPart
(LatticeUnion *A, LatticeUnion *B): check the equality of the linear parts of lattices

LatticeUnion *LatticeSimplify
(LatticeUnion *latlist): given a list of lattices, return a simplified union of lattices


next up previous contents
Next: Z-Polyhedra Up: Lattices Previous: Theoretical background   Contents
Sorin Olaru 2002-04-24