Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 30 additions & 25 deletions tst/descent.tst
Original file line number Diff line number Diff line change
Expand Up @@ -137,31 +137,36 @@ 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 ]
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> NmzConeProperty(cone, "BasicTriangulation");
fail
gap> NmzConeProperty(cone, "EmbeddingDim");
7
gap> NmzConeProperty(cone, "Grading");
[ 1, 1, 1, 1, 1, 1, -2 ]
gap> NmzConeProperty(cone, "GradingDenom");
1
gap> NmzConeProperty(cone, "IsDeg1ExtremeRays");
true
gap> NmzConeProperty(cone, "IsDeg1HilbertBasis");
false
gap> NmzConeProperty(cone, "IsInhomogeneous");
false
gap> NmzConeProperty(cone, "IsPointed");
true
gap> NmzConeProperty(cone, "IsTriangulationNested");
false
gap> NmzConeProperty(cone, "IsTriangulationPartial");
true
gap> NmzConeProperty(cone, "MaximalSubspace");
[ ]
gap> NmzConeProperty(cone, "Multiplicity");
72
gap> NmzConeProperty(cone, "Rank");
7
gap> NmzConeProperty(cone, "TriangulationDetSum");
2
gap> NmzConeProperty(cone, "TriangulationSize");
1

#
gap> NmzVolume(cone);
Expand Down
68 changes: 38 additions & 30 deletions tst/dual.tst
Original file line number Diff line number Diff line change
Expand Up @@ -496,38 +496,46 @@ 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 ]
gap> _NmzPrintSomeConeProperties(cone, [
> "Generators",
> "ExtremeRays",
> "SupportHyperplanes",
> "HilbertBasis",
> "Deg1Elements",
> "Sublattice",
> "NumberLatticePoints",
> "OriginalMonoidGenerators",
> ]);
BasicTriangulation = fail
ClassGroup = [ 17 ]
EhrhartQuasiPolynomial = [ [ 60, 194, 284, 245, 130, 41, 6 ], 60 ]
EmbeddingDim = 7
Grading = [ 1, 1, 1, 1, 1, 1, -2 ]
GradingDenom = 1
HilbertQuasiPolynomial =
gap> NmzConeProperty(cone, "BasicTriangulation");
fail
gap> NmzConeProperty(cone, "ClassGroup");
[ 17 ]
gap> NmzConeProperty(cone, "EhrhartQuasiPolynomial");
[ [ 60, 194, 284, 245, 130, 41, 6 ], 60 ]
gap> NmzConeProperty(cone, "EmbeddingDim");
7
gap> NmzConeProperty(cone, "Grading");
[ 1, 1, 1, 1, 1, 1, -2 ]
gap> NmzConeProperty(cone, "GradingDenom");
1
gap> NmzConeProperty(cone, "HilbertQuasiPolynomial");
[ 1/10*t^6+41/60*t^5+13/6*t^4+49/12*t^3+71/15*t^2+97/30*t+1 ]
HilbertQuasiPolynomial =
gap> NmzConeProperty(cone, "HilbertQuasiPolynomial");
[ 1/10*t^6+41/60*t^5+13/6*t^4+49/12*t^3+71/15*t^2+97/30*t+1 ]
HilbertSeries = [ 6*t^4+25*t^3+31*t^2+9*t+1, [ [ 1, 7 ] ] ]
IsDeg1ExtremeRays = true
IsDeg1HilbertBasis = false
IsInhomogeneous = false
IsPointed = true
IsTriangulationNested = false
IsTriangulationPartial = false
MaximalSubspace = [ ]
Multiplicity = 72
Rank = 7
TriangulationDetSum = 72
TriangulationSize = 69
gap> NmzConeProperty(cone, "HilbertSeries");
[ 6*t^4+25*t^3+31*t^2+9*t+1, [ [ 1, 7 ] ] ]
gap> NmzConeProperty(cone, "IsDeg1ExtremeRays");
true
gap> NmzConeProperty(cone, "IsDeg1HilbertBasis");
false
gap> NmzConeProperty(cone, "IsInhomogeneous");
false
gap> NmzConeProperty(cone, "IsPointed");
true
gap> NmzConeProperty(cone, "IsTriangulationNested");
false
gap> NmzConeProperty(cone, "IsTriangulationPartial");
false
gap> NmzConeProperty(cone, "MaximalSubspace");
[ ]
gap> NmzConeProperty(cone, "Multiplicity");
72
gap> NmzConeProperty(cone, "Rank");
7
gap> NmzConeProperty(cone, "TriangulationDetSum");
72
gap> NmzConeProperty(cone, "TriangulationSize");
69

#
gap> STOP_TEST("dual.tst", 0);
129 changes: 62 additions & 67 deletions tst/project.tst
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,6 @@ gap> proj:=NmzProjectCone(cone);
# check what was computed for the input cone
gap> tmp := NmzKnownConeProperties(cone);;
gap> RemoveSet(tmp, "NumberLatticePoints");
gap> Perform(tmp, Display);
EmbeddingDim
ExtremeRays
Generators
IsInhomogeneous
IsPointed
MaximalSubspace
ProjectCone
Rank
Sublattice
SupportHyperplanes
gap> Display(NmzTriangulation(cone));
[ [ rec(
Excluded := [ ],
Expand All @@ -41,33 +30,38 @@ gap> Display(NmzDeg1Elements(cone));
gap> Display(NmzSublattice(cone));
[ [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ] ],
[ [ 1, 0 ], [ 0, 1 ], [ 0, 0 ], [ 0, 0 ] ], 1 ]
gap> _NmzPrintSomeConeProperties(cone, [
> "Generators",
> "ExtremeRays",
> "SupportHyperplanes",
> "HilbertBasis",
> "Deg1Elements",
> "Sublattice",
> "NumberLatticePoints",
> "OriginalMonoidGenerators",
> ]);
BasicTriangulation = fail
EmbeddingDim = 4
Grading = [ 0, 1, 0, 0 ]
GradingDenom = 1
IsDeg1ExtremeRays = true
IsDeg1HilbertBasis = true
IsInhomogeneous = false
IsPointed = false
IsTriangulationNested = false
IsTriangulationPartial = true
MaximalSubspace =
[ [ 1, 0, 0, 0 ] ]
Multiplicity = 1
ProjectCone = <object>
Rank = 2
TriangulationDetSum = 0
TriangulationSize = 0
gap> NmzConeProperty(cone, "BasicTriangulation");
fail
gap> NmzConeProperty(cone, "EmbeddingDim");
4
gap> NmzConeProperty(cone, "Grading");
[ 0, 1, 0, 0 ]
gap> NmzConeProperty(cone, "GradingDenom");
1
gap> NmzConeProperty(cone, "IsDeg1ExtremeRays");
true
gap> NmzConeProperty(cone, "IsDeg1HilbertBasis");
true
gap> NmzConeProperty(cone, "IsInhomogeneous");
false
gap> NmzConeProperty(cone, "IsPointed");
false
gap> NmzConeProperty(cone, "IsTriangulationNested");
false
gap> NmzConeProperty(cone, "IsTriangulationPartial");
true
gap> NmzConeProperty(cone, "MaximalSubspace");
[ [ 1, 0, 0, 0 ] ]
gap> NmzConeProperty(cone, "Multiplicity");
1
gap> NmzConeProperty(cone, "ProjectCone");
<a Normaliz cone>
gap> NmzConeProperty(cone, "Rank");
2
gap> NmzConeProperty(cone, "TriangulationDetSum");
0
gap> NmzConeProperty(cone, "TriangulationSize");
0

# check what was computed for the projected cone
gap> Perform(NmzKnownConeProperties(proj), Display);
Expand Down Expand Up @@ -102,35 +96,36 @@ gap> Display(NmzDeg1Elements(proj));
[ [ 0, 1, 0 ] ]
gap> Display(NmzSublattice(proj));
[ [ [ 1, 0, 0 ], [ 0, 1, 0 ] ], [ [ 1, 0 ], [ 0, 1 ], [ 0, 0 ] ], 1 ]
gap> _NmzPrintSomeConeProperties(proj, [
> "Generators",
> "ExtremeRays",
> "SupportHyperplanes",
> "HilbertBasis",
> "Deg1Elements",
> "Sublattice",
> "NumberLatticePoints",
> "OriginalMonoidGenerators",
> ]);
BasicTriangulation = fail
EmbeddingDim = 3
Grading = [ 0, 1, 0 ]
GradingDenom = 1
InternalIndex = 1
IsDeg1ExtremeRays = true
IsDeg1HilbertBasis = true
IsInhomogeneous = false
IsIntegrallyClosed = true
IsPointed = false
IsTriangulationNested = false
IsTriangulationPartial = true
MaximalSubspace =
[ [ 1, 0, 0 ] ]
Multiplicity = 1
Rank = 2
TriangulationDetSum = 0
TriangulationSize = 0
UnitGroupIndex = 1
gap> NmzConeProperty(cone, "BasicTriangulation");
fail
gap> NmzConeProperty(cone, "EmbeddingDim");
4
gap> NmzConeProperty(cone, "Grading");
[ 0, 1, 0, 0 ]
gap> NmzConeProperty(cone, "GradingDenom");
1
gap> NmzConeProperty(cone, "IsDeg1ExtremeRays");
true
gap> NmzConeProperty(cone, "IsDeg1HilbertBasis");
true
gap> NmzConeProperty(cone, "IsInhomogeneous");
false
gap> NmzConeProperty(cone, "IsPointed");
false
gap> NmzConeProperty(cone, "IsTriangulationNested");
false
gap> NmzConeProperty(cone, "IsTriangulationPartial");
true
gap> NmzConeProperty(cone, "MaximalSubspace");
[ [ 1, 0, 0, 0 ] ]
gap> NmzConeProperty(cone, "Multiplicity");
1
gap> NmzConeProperty(cone, "Rank");
2
gap> NmzConeProperty(cone, "TriangulationDetSum");
0
gap> NmzConeProperty(cone, "TriangulationSize");
0

#
gap> STOP_TEST("project.tst", 0);
98 changes: 54 additions & 44 deletions tst/rational.tst
Original file line number Diff line number Diff line change
Expand Up @@ -73,51 +73,61 @@ gap> Display(NmzOriginalMonoidGenerators(cone));
[ [ 1, 1, 2 ],
[ -1, -1, 3 ],
[ 1, -2, 4 ] ]
gap> _NmzPrintSomeConeProperties(cone, [
> "Generators",
> "ExtremeRays",
> "SupportHyperplanes",
> "HilbertBasis",
> "Deg1Elements",
> "Sublattice",
> "NumberLatticePoints",
> "OriginalMonoidGenerators",
> ]);
BasicTriangulation = fail
ClassGroup = [ 0, 3, 15 ]
EhrhartQuasiPolynomial = [ [ 48, 28, 15 ], [ 11, 22, 15 ], [ -20, 28, 15 ],
[ 39, 22, 15 ], [ 32, 28, 15 ], [ -5, 22, 15 ], [ 12, 28, 15 ],
[ 23, 22, 15 ], [ 16, 28, 15 ], [ 27, 22, 15 ], [ -4, 28, 15 ],
[ 7, 22, 15 ], 48 ]
EmbeddingDim = 3
Grading = [ 0, 0, 1 ]
GradingDenom = 1
HilbertQuasiPolynomial = [ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48,
5/16*t^2+7/12*t-5/12, 5/16*t^2+11/24*t+13/16, 5/16*t^2+7/12*t+2/3,
5/16*t^2+11/24*t-5/48, 5/16*t^2+7/12*t+1/4, 5/16*t^2+11/24*t+23/48,
5/16*t^2+7/12*t+1/3, 5/16*t^2+11/24*t+9/16, 5/16*t^2+7/12*t-1/12,
5/16*t^2+11/24*t+7/48 ]
HilbertQuasiPolynomial = [ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48,
5/16*t^2+7/12*t-5/12, 5/16*t^2+11/24*t+13/16, 5/16*t^2+7/12*t+2/3,
5/16*t^2+11/24*t-5/48, 5/16*t^2+7/12*t+1/4, 5/16*t^2+11/24*t+23/48,
5/16*t^2+7/12*t+1/3, 5/16*t^2+11/24*t+9/16, 5/16*t^2+7/12*t-1/12,
5/16*t^2+11/24*t+7/48 ]
HilbertSeries = [ 2*t^12+t^11+t^10+t^9+t^8+2*t^7+2*t^6-t^5+2*t^4+3*t^3+1,
gap> NmzConeProperty(cone, "BasicTriangulation");
fail
gap> NmzConeProperty(cone, "ClassGroup");
[ 0, 3, 15 ]
gap> NmzConeProperty(cone, "EhrhartQuasiPolynomial");
[ [ 48, 28, 15 ], [ 11, 22, 15 ], [ -20, 28, 15 ], [ 39, 22, 15 ],
[ 32, 28, 15 ], [ -5, 22, 15 ], [ 12, 28, 15 ], [ 23, 22, 15 ],
[ 16, 28, 15 ], [ 27, 22, 15 ], [ -4, 28, 15 ], [ 7, 22, 15 ], 48 ]
gap> NmzConeProperty(cone, "EmbeddingDim");
3
gap> NmzConeProperty(cone, "Grading");
[ 0, 0, 1 ]
gap> NmzConeProperty(cone, "GradingDenom");
1
gap> NmzConeProperty(cone, "HilbertQuasiPolynomial");
[ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48, 5/16*t^2+7/12*t-5/12,
5/16*t^2+11/24*t+13/16, 5/16*t^2+7/12*t+2/3, 5/16*t^2+11/24*t-5/48,
5/16*t^2+7/12*t+1/4, 5/16*t^2+11/24*t+23/48, 5/16*t^2+7/12*t+1/3,
5/16*t^2+11/24*t+9/16, 5/16*t^2+7/12*t-1/12, 5/16*t^2+11/24*t+7/48 ]
gap> NmzConeProperty(cone, "HilbertQuasiPolynomial");
[ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48, 5/16*t^2+7/12*t-5/12,
5/16*t^2+11/24*t+13/16, 5/16*t^2+7/12*t+2/3, 5/16*t^2+11/24*t-5/48,
5/16*t^2+7/12*t+1/4, 5/16*t^2+11/24*t+23/48, 5/16*t^2+7/12*t+1/3,
5/16*t^2+11/24*t+9/16, 5/16*t^2+7/12*t-1/12, 5/16*t^2+11/24*t+7/48 ]
gap> NmzConeProperty(cone, "HilbertSeries");
[ 2*t^12+t^11+t^10+t^9+t^8+2*t^7+2*t^6-t^5+2*t^4+3*t^3+1,
[ [ 1, 1 ], [ 2, 1 ], [ 12, 1 ] ] ]
InternalIndex = 15
IsDeg1ExtremeRays = false
IsDeg1HilbertBasis = false
IsInhomogeneous = false
IsIntegrallyClosed = false
IsPointed = true
IsTriangulationNested = false
IsTriangulationPartial = false
MaximalSubspace = [ ]
Multiplicity = 5/8
Rank = 3
TriangulationDetSum = 15
TriangulationSize = 1
UnitGroupIndex = 1
gap> NmzConeProperty(cone, "InternalIndex");
15
gap> NmzConeProperty(cone, "IsDeg1ExtremeRays");
false
gap> NmzConeProperty(cone, "IsDeg1HilbertBasis");
false
gap> NmzConeProperty(cone, "IsInhomogeneous");
false
gap> NmzConeProperty(cone, "IsIntegrallyClosed");
false
gap> NmzConeProperty(cone, "IsPointed");
true
gap> NmzConeProperty(cone, "IsTriangulationNested");
false
gap> NmzConeProperty(cone, "IsTriangulationPartial");
false
gap> NmzConeProperty(cone, "MaximalSubspace");
[ ]
gap> NmzConeProperty(cone, "Multiplicity");
5/8
gap> NmzConeProperty(cone, "Rank");
3
gap> NmzConeProperty(cone, "TriangulationDetSum");
15
gap> NmzConeProperty(cone, "TriangulationSize");
1
gap> NmzConeProperty(cone, "UnitGroupIndex");
1
gap> Display(NmzConeDecomposition(cone));
[ [ rec(
Excluded := [ false, false, false ],
Expand Down
Loading
Loading