|
gap> START_TEST("descent.tst");
#
gap> # Based on dual.in
gap> M := [
> [ 0, 0, 0, 1, 0, 0, 0 ],
> [ 0, 0, 0, 0, 1, 0, 0 ],
> [ 0, 0, 0, 0, 0, 1, 0 ],
> [ 0, 0, 0, 0, 0, 0, 1 ],
> [ 0, 0, 1, 0, 0, 0, 0 ],
> [ 0, 1, 0, 0, 0, 0, 0 ],
> [ 0, 1, 0, 1, 1, 0, -1 ],
> [ 0, 1, 0, 0, 1, 1, -1 ],
> [ 0, 1, 1, 0, 0, 1, -1 ],
> [ 0, 0, 1, 1, 1, 0, -1 ],
> [ 0, 0, 1, 1, 0, 1, -1 ],
> [ 0, 1, 1, 1, 1, 1, -2 ],
> [ 1, 0, 0, 0, 0, 0, 0 ],
> [ 1, 1, 1, 1, 1, 1, -3 ],
> [ 1, 0, 0, 1, 0, 1, -1 ],
> [ 1, 0, 0, 0, 1, 1, -1 ],
> [ 1, 0, 1, 0, 1, 0, -1 ],
> [ 1, 0, 1, 1, 1, 1, -2 ],
> [ 1, 1, 0, 1, 0, 0, -1 ],
> [ 1, 1, 1, 0, 0, 0, -1 ],
> [ 1, 1, 1, 1, 0, 1, -2 ],
> [ 1, 1, 1, 0, 1, 1, -2 ],
> [ 1, 1, 1, 1, 1, 0, -2 ],
> [ 1, 1, 0, 1, 1, 1, -2 ],
> ];;
gap> cone := NmzCone(["inequalities", M]);;
gap> NmzCompute(cone, ["Descent"]);
true
gap> Perform(NmzKnownConeProperties(cone),Display);
EmbeddingDim
IsInhomogeneous
IsPointed
MaximalSubspace
gap> Display(NmzTriangulation(cone)[2]);
[ [ 0, 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 1, 1, 0, 1, 1 ],
[ 0, 0, 1, 1, 1, 0, 1 ],
[ 0, 1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, 0, 1, 1, 1 ],
[ 0, 1, 0, 1, 1, 0, 1 ],
[ 0, 1, 1, 0, 0, 1, 1 ],
[ 1, 0, 0, 0, 0, 0, 0 ],
[ 1, 0, 0, 0, 1, 1, 1 ],
[ 1, 0, 0, 1, 0, 1, 1 ],
[ 1, 0, 1, 0, 1, 0, 1 ],
[ 1, 1, 0, 1, 0, 0, 1 ],
[ 1, 1, 1, 0, 0, 0, 1 ] ]
gap> Display(NmzExtremeRays(cone));
[ [ 0, 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 1, 1, 0, 1, 1 ],
[ 0, 0, 1, 1, 1, 0, 1 ],
[ 0, 1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, 0, 1, 1, 1 ],
[ 0, 1, 0, 1, 1, 0, 1 ],
[ 0, 1, 1, 0, 0, 1, 1 ],
[ 1, 0, 0, 0, 0, 0, 0 ],
[ 1, 0, 0, 0, 1, 1, 1 ],
[ 1, 0, 0, 1, 0, 1, 1 ],
[ 1, 0, 1, 0, 1, 0, 1 ],
[ 1, 1, 0, 1, 0, 0, 1 ],
[ 1, 1, 1, 0, 0, 0, 1 ] ]
gap> Display(NmzSupportHyperplanes(cone));
[ [ 0, 0, 0, 0, 0, 0, 1 ],
[ 0, 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 1, 1, 0, 1, -1 ],
[ 0, 0, 1, 1, 1, 0, -1 ],
[ 0, 1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, 0, 1, 1, -1 ],
[ 0, 1, 0, 1, 1, 0, -1 ],
[ 0, 1, 1, 0, 0, 1, -1 ],
[ 0, 1, 1, 1, 1, 1, -2 ],
[ 1, 0, 0, 0, 0, 0, 0 ],
[ 1, 0, 0, 0, 1, 1, -1 ],
[ 1, 0, 0, 1, 0, 1, -1 ],
[ 1, 0, 1, 0, 1, 0, -1 ],
[ 1, 0, 1, 1, 1, 1, -2 ],
[ 1, 1, 0, 1, 0, 0, -1 ],
[ 1, 1, 0, 1, 1, 1, -2 ],
[ 1, 1, 1, 0, 0, 0, -1 ],
[ 1, 1, 1, 0, 1, 1, -2 ],
[ 1, 1, 1, 1, 0, 1, -2 ],
[ 1, 1, 1, 1, 1, 0, -2 ],
[ 1, 1, 1, 1, 1, 1, -3 ] ]
gap> Display(NmzHilbertBasis(cone));
[ [ 0, 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 1, 1, 0, 1, 1 ],
[ 0, 0, 1, 1, 1, 0, 1 ],
[ 0, 1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, 0, 1, 1, 1 ],
[ 0, 1, 0, 1, 1, 0, 1 ],
[ 0, 1, 1, 0, 0, 1, 1 ],
[ 1, 0, 0, 0, 0, 0, 0 ],
[ 1, 0, 0, 0, 1, 1, 1 ],
[ 1, 0, 0, 1, 0, 1, 1 ],
[ 1, 0, 1, 0, 1, 0, 1 ],
[ 1, 1, 0, 1, 0, 0, 1 ],
[ 1, 1, 1, 0, 0, 0, 1 ],
[ 1, 1, 1, 1, 1, 1, 2 ] ]
gap> Display(NmzDeg1Elements(cone));
[ [ 0, 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 1, 1, 0, 1, 1 ],
[ 0, 0, 1, 1, 1, 0, 1 ],
[ 0, 1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, 0, 1, 1, 1 ],
[ 0, 1, 0, 1, 1, 0, 1 ],
[ 0, 1, 1, 0, 0, 1, 1 ],
[ 1, 0, 0, 0, 0, 0, 0 ],
[ 1, 0, 0, 0, 1, 1, 1 ],
[ 1, 0, 0, 1, 0, 1, 1 ],
[ 1, 0, 1, 0, 1, 0, 1 ],
[ 1, 1, 0, 1, 0, 0, 1 ],
[ 1, 1, 1, 0, 0, 0, 1 ] ]
gap> Display(NmzSublattice(cone));
[ [ [ 1, 0, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 0, 1 ] ], 1 ]
gap> _NmzPrintSomeConeProperties(cone, [
> "Generators",
> "ExtremeRays",
> "SupportHyperplanes",
> "HilbertBasis",
> "Deg1Elements",
> "Sublattice",
> "NumberLatticePoints",
> "OriginalMonoidGenerators",
> ]);
BasicTriangulation = fail
EmbeddingDim = 7
Grading = [ 1, 1, 1, 1, 1, 1, -2 ]
GradingDenom = 1
IsDeg1ExtremeRays = true
IsDeg1HilbertBasis = false
IsInhomogeneous = false
IsPointed = true
IsTriangulationNested = false
IsTriangulationPartial = true
MaximalSubspace = [ ]
Multiplicity = 72
Rank = 7
TriangulationDetSum = 2
TriangulationSize = 1
#
gap> NmzVolume(cone);
72
gap> NmzEuclideanVolume(cone);
0.316228
#
gap> STOP_TEST("descent.tst", 0);
[ Dauer der Verarbeitung: 0.5 Sekunden
(vorverarbeitet)
]
|