EnumerateIntegerPoints - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


PolyhedralSets[ZPolyhedralSets]

  

EnumerateIntegerPoints

  

enumerate integer points in a bounded ZPolyhedralSet

 

Calling Sequence

Parameters

Description

Examples

References

Compatibility

Calling Sequence

EnumerateIntegerPoints(zpoly)

Parameters

zpoly

-

ZPolyhedralSet

Description

• 

EnumerateIntegerPoints(zpoly) returns a list of all the integer points in zpoly.

• 

This requires zpoly to be bounded and non-parametric. If one of these assumptions does not hold, then an error is raised.

Examples

> 

with⁡PolyhedralSets:

> 

with⁡ZPolyhedralSets:

> 

ineqs≔0≤−16+2⁢y+z,0≤−72+4⁢x+4⁢y+3⁢z,0≤2⁢y−z,0≤−24+4⁢x+4⁢y−3⁢z,0≤−4⁢x+4⁢y+3⁢z,0≤48−4⁢x+4⁢y−3⁢z,0≤48−4⁢x−4⁢y+3⁢z,0≤8−2⁢y+z,0≤−24+4⁢x−4⁢y+3⁢z,0≤24−2⁢y−z,0≤24+4⁢x−4⁢y−3⁢z,0≤96−4⁢x−4⁢y−3⁢z

ineqs≔0≤−16+2⁢y+z,0≤−72+4⁢x+4⁢y+3⁢z,0≤2⁢y−z,0≤−24+4⁢x+4⁢y−3⁢z,0≤−4⁢x+4⁢y+3⁢z,0≤48−4⁢x+4⁢y−3⁢z,0≤48−4⁢x−4⁢y+3⁢z,0≤8−2⁢y+z,0≤−24+4⁢x−4⁢y+3⁢z,0≤24−2⁢y−z,0≤24+4⁢x−4⁢y−3⁢z,0≤96−4⁢x−4⁢y−3⁢z

(1)
> 

L≔Lattice⁡Matrix⁡1,0,2,0,−1,1,0,0,2,Vector⁡0,0,1

L≔Lattice⁡1020−11002,001

(2)
> 

vars≔x,y,z

vars≔x,y,z

(3)
> 

zp≔ZPolyhedralSet⁡ineqs,vars,lattice=L

zp≔Relations:0≤2⁢y−z0≤−16+2⁢y+z0≤8−2⁢y+z0≤24−2⁢y−z0≤−4⁢x+4⁢y+3⁢z0≤−72+4⁢x+4⁢y+3⁢z0≤−24+4⁢x−4⁢y+3⁢z0≤−24+4⁢x+4⁢y−3⁢z0≤24+4⁢x−4⁢y−3⁢z0≤48−4⁢x−4⁢y+3⁢z0≤48−4⁢x+4⁢y−3⁢z0≤96−4⁢x−4⁢y−3⁢zVariables:x,y,zParameters:ParameterConstraints:Lattice:ZSpan1020−11002,,,001

(4)
> 

points≔EnumerateIntegerPoints⁡zp

points≔x=9,y=6,z=5,x=8,y=5,z=7,x=9,y=5,z=7,x=10,y=5,z=7,x=7,y=6,z=7,x=8,y=6,z=7,x=9,y=6,z=7,x=10,y=6,z=7,x=11,y=6,z=7,x=8,y=7,z=7,x=9,y=7,z=7,x=10,y=7,z=7,x=8,y=5,z=9,x=9,y=5,z=9,x=10,y=5,z=9,x=7,y=6,z=9,x=8,y=6,z=9,x=9,y=6,z=9,x=10,y=6,z=9,x=11,y=6,z=9,x=8,y=7,z=9,x=9,y=7,z=9,x=10,y=7,z=9,x=9,y=6,z=11

(5)

References

  

Rachid Seghir, Vincent Loechner, and Benoı̂t Meister. "Integer affine transformations of parametric Z-polytopes and applications to loop nest optimization." Proceedings of TACO, Vol. 9(2):8:1–8:27, 2012.

  

Rui-Juan Jing and Marc Moreno Maza. "Computing the Integer Points of a Polyhedron, I: Algorithm." Proceedings of CASC 2017: 225-241, Springer.

  

Rui-Juan Jing and Marc Moreno Maza. "Computing the Integer Points of a Polyhedron, II: Complexity Estimates." Proceedings of CASC 2017: 242-256, Springer.

Compatibility

• 

The PolyhedralSets:-ZPolyhedralSets:-EnumerateIntegerPoints command was introduced in Maple 2023.

• 

For more information on Maple 2023 changes, see Updates in Maple 2023.

See Also

ZPolyhedralSets:-IsEmpty

ZPolyhedralSets:-IsIntegerPointOf

ZPolyhedralSets:-SamplePoint

ZPolyhedralSets:-IntegerPointDecomposition

ZPolyhedralSets:-IsContained

ZPolyhedralSets:-ZPolyhedralSet

ZPolyhedralSets

PolyhedralSets