polylib 5.22.8
Lattice.h File Reference

Go to the source code of this file.

Functions

void AffineHermite (Lattice *A, Lattice **H, Matrix **U)
 
void AffineSmith (Lattice *A, Lattice **U, Lattice **V, Lattice **Diag)
 
LatticeChangeLatticeDimension (Lattice *A, int dimension)
 
LatticeEmptyLattice (int dimension)
 
LatticeExtractLinearPart (Lattice *A)
 
int FindHermiteBasisofDomain (Polyhedron *A, Matrix **B)
 
LatticeHomogenise (Lattice *A, Bool Forward)
 
int intcompare (const void *a, const void *b)
 
Bool isEmptyLattice (Lattice *A)
 
Bool isfulldim (Matrix *m)
 
Bool IsLattice (Matrix *m)
 
Bool isLinear (Lattice *A)
 
LatticeUnionLatticeDifference (Lattice *A, Lattice *B)
 Method : More...
 
LatticeLatticeImage (Lattice *A, Matrix *M)
 
Bool LatticeIncludes (Lattice *A, Lattice *B)
 
LatticeLatticeIntersection (Lattice *X, Lattice *Y)
 
LatticeLatticePreimage (Lattice *L, Matrix *G)
 
LatticeUnionLatticeSimplify (LatticeUnion *latlist)
 
LatticeUnionLatticeUnion_Alloc (void)
 
void LatticeUnion_Free (LatticeUnion *Head)
 
void PrintLatticeUnion (FILE *fp, char *format, LatticeUnion *Head)
 
Bool sameAffinepart (Lattice *A, Lattice *B)
 
Bool sameLattice (Lattice *A, Lattice *B)
 
LatticeUnionLattice2LatticeUnion (Lattice *X, Lattice *Y)
 

Function Documentation

◆ AffineHermite()

◆ AffineSmith()

◆ ChangeLatticeDimension()

Lattice * ChangeLatticeDimension ( Lattice A,
int  dimension 
)

◆ EmptyLattice()

Lattice * EmptyLattice ( int  dimension)

◆ ExtractLinearPart()

Lattice * ExtractLinearPart ( Lattice A)

Definition at line 423 of file Lattice.c.

References Matrix_Alloc(), matrix::NbColumns, matrix::NbRows, matrix::p, and value_assign.

Referenced by Lattice2LatticeUnion().

◆ FindHermiteBasisofDomain()

◆ Homogenise()

Lattice * Homogenise ( Lattice A,
Bool  Forward 
)

◆ intcompare()

int intcompare ( const void *  a,
const void *  b 
)

Definition at line 1681 of file Lattice.c.

Referenced by allfactors().

◆ isEmptyLattice()

◆ isfulldim()

Bool isfulldim ( Matrix m)

Definition at line 1262 of file Lattice.c.

References False, Hermite(), m, Matrix_Free(), matrix::NbRows, matrix::p, True, and value_zero_p.

Referenced by ZPolyhedron_Alloc().

◆ IsLattice()

Bool IsLattice ( Matrix m)

Definition at line 1234 of file Lattice.c.

References False, m, True, value_notone_p, and value_notzero_p.

Referenced by ZPolyhedron_Alloc().

◆ isLinear()

Bool isLinear ( Lattice A)

Definition at line 127 of file Lattice.c.

References False, matrix::NbColumns, matrix::NbRows, matrix::p, True, and value_notzero_p.

Referenced by AffineHermite().

◆ Lattice2LatticeUnion()

◆ LatticeDifference()

◆ LatticeImage()

◆ LatticeIncludes()

Bool LatticeIncludes ( Lattice A,
Lattice B 
)

Definition at line 324 of file Lattice.c.

References AffineHermite(), False, LatticeIntersection(), Matrix_Free(), sameLattice(), and True.

Referenced by main(), and ZPolyhedronIncludes().

◆ LatticeIntersection()

◆ LatticePreimage()

◆ LatticeSimplify()

LatticeUnion * LatticeSimplify ( LatticeUnion latlist)

◆ LatticeUnion_Alloc()

LatticeUnion * LatticeUnion_Alloc ( void  )

Definition at line 42 of file Lattice.c.

References LatticeUnion::M, and LatticeUnion::next.

Referenced by main().

◆ LatticeUnion_Free()

void LatticeUnion_Free ( LatticeUnion Head)

Definition at line 26 of file Lattice.c.

References LatticeUnion::M, Matrix_Free(), and LatticeUnion::next.

Referenced by main(), and ZDomainSimplify().

◆ PrintLatticeUnion()

void PrintLatticeUnion ( FILE *  fp,
char *  format,
LatticeUnion Head 
)

Definition at line 14 of file Lattice.c.

References LatticeUnion::M, Matrix_Print(), and LatticeUnion::next.

Referenced by main().

◆ sameAffinepart()

Bool sameAffinepart ( Lattice A,
Lattice B 
)

Definition at line 56 of file Lattice.c.

References False, matrix::NbColumns, matrix::NbRows, matrix::p, True, and value_ne.

◆ sameLattice()

Bool sameLattice ( Lattice A,
Lattice B 
)