passagemath-gap-pkg-normalizinterface 10.6.42__cp312-abi3-macosx_13_0_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. gap/pkg/normalizinterface/CHANGES +113 -0
  2. gap/pkg/normalizinterface/LICENSE +351 -0
  3. gap/pkg/normalizinterface/PackageInfo.g +121 -0
  4. gap/pkg/normalizinterface/README.md +96 -0
  5. gap/pkg/normalizinterface/bin/x86_64-apple-darwin24-default64-kv10/NormalizInterface.so +0 -0
  6. gap/pkg/normalizinterface/etc/download.sh +85 -0
  7. gap/pkg/normalizinterface/etc/generate_cone_property_wrappers.g +380 -0
  8. gap/pkg/normalizinterface/examples/5x5.g +22 -0
  9. gap/pkg/normalizinterface/examples/demo.g +53 -0
  10. gap/pkg/normalizinterface/examples/docs.g +43 -0
  11. gap/pkg/normalizinterface/examples/dual_mode.g +26 -0
  12. gap/pkg/normalizinterface/examples/magic_square.g +36 -0
  13. gap/pkg/normalizinterface/init.g +7 -0
  14. gap/pkg/normalizinterface/lib/cone_property_wrappers.gd +682 -0
  15. gap/pkg/normalizinterface/lib/cone_property_wrappers.gi +132 -0
  16. gap/pkg/normalizinterface/lib/normaliz.gd +130 -0
  17. gap/pkg/normalizinterface/lib/normaliz.gi +153 -0
  18. gap/pkg/normalizinterface/makedoc.g +13 -0
  19. gap/pkg/normalizinterface/read.g +3 -0
  20. gap/pkg/normalizinterface/tst/InhomIneq.tst +20 -0
  21. gap/pkg/normalizinterface/tst/bugfix.tst +37 -0
  22. gap/pkg/normalizinterface/tst/conversion.tst +87 -0
  23. gap/pkg/normalizinterface/tst/cube-incidence.tst +62 -0
  24. gap/pkg/normalizinterface/tst/descent.tst +173 -0
  25. gap/pkg/normalizinterface/tst/dual.tst +533 -0
  26. gap/pkg/normalizinterface/tst/fractions.tst +29 -0
  27. gap/pkg/normalizinterface/tst/gorenstein.tst +22 -0
  28. gap/pkg/normalizinterface/tst/normalizinterface01.tst +46 -0
  29. gap/pkg/normalizinterface/tst/normalizinterface02.tst +107 -0
  30. gap/pkg/normalizinterface/tst/project.tst +136 -0
  31. gap/pkg/normalizinterface/tst/rational.tst +151 -0
  32. gap/pkg/normalizinterface/tst/rees.tst +544 -0
  33. gap/pkg/normalizinterface/tst/rp2poly.tst +351 -0
  34. gap/pkg/normalizinterface/tst/rproj2.tst +548 -0
  35. gap/pkg/normalizinterface/tst/testall.g +3 -0
  36. gap/pkg/normalizinterface/tst/verticesfloat.tst +11 -0
  37. passagemath_gap_pkg_normalizinterface/.dylibs/libeantic.3.dylib +0 -0
  38. passagemath_gap_pkg_normalizinterface/.dylibs/libeanticxx.3.dylib +0 -0
  39. passagemath_gap_pkg_normalizinterface/.dylibs/libflint.22.0.dylib +0 -0
  40. passagemath_gap_pkg_normalizinterface/.dylibs/libgmp.10.dylib +0 -0
  41. passagemath_gap_pkg_normalizinterface/.dylibs/libgmpxx.4.dylib +0 -0
  42. passagemath_gap_pkg_normalizinterface/.dylibs/libmpfr.6.dylib +0 -0
  43. passagemath_gap_pkg_normalizinterface/.dylibs/libnormaliz.3.dylib +0 -0
  44. passagemath_gap_pkg_normalizinterface/__init__.py +3 -0
  45. passagemath_gap_pkg_normalizinterface-10.6.42.dist-info/METADATA +93 -0
  46. passagemath_gap_pkg_normalizinterface-10.6.42.dist-info/METADATA.bak +94 -0
  47. passagemath_gap_pkg_normalizinterface-10.6.42.dist-info/RECORD +52 -0
  48. passagemath_gap_pkg_normalizinterface-10.6.42.dist-info/WHEEL +6 -0
  49. passagemath_gap_pkg_normalizinterface-10.6.42.dist-info/top_level.txt +2 -0
  50. sage/all__sagemath_gap_pkg_normalizinterface.py +1 -0
  51. sage/libs/all__sagemath_gap_pkg_normalizinterface.py +1 -0
  52. sage/libs/gap_pkg_normalizinterface.abi3.so +0 -0
@@ -0,0 +1,29 @@
1
+ gap> START_TEST("fractions.tst");
2
+
3
+ #
4
+ gap> M:=[[0, 0], [7/2, 0], [0, 9/4]];
5
+ [ [ 0, 0 ], [ 7/2, 0 ], [ 0, 9/4 ] ]
6
+ gap> cone := NmzCone(["polytope", M]);
7
+ <a Normaliz cone>
8
+ gap> NmzCompute(cone);
9
+ true
10
+ gap> NmzDeg1Elements(cone);
11
+ [ [ 0, 0, 1 ], [ 0, 1, 1 ], [ 0, 2, 1 ], [ 1, 0, 1 ], [ 1, 1, 1 ],
12
+ [ 2, 0, 1 ], [ 3, 0, 1 ] ]
13
+
14
+ #
15
+ gap> NmzVolume(cone);
16
+ 63/8
17
+ gap> NmzEuclideanVolume(cone);
18
+ 3.9375
19
+ gap> Display(NmzSupportHyperplanes(cone));
20
+ [ [ -18, -28, 63 ],
21
+ [ 0, 1, 0 ],
22
+ [ 1, 0, 0 ] ]
23
+ gap> Display(NmzSuppHypsFloat(cone));
24
+ [ [ -0.2857142857142857, -0.44444444444444442, 1. ],
25
+ [ 0., 1., 0. ],
26
+ [ 1., 0., 0. ] ]
27
+
28
+ #
29
+ gap> STOP_TEST("fractions.tst", 0);
@@ -0,0 +1,22 @@
1
+ gap> START_TEST("gorenstein.tst");
2
+ gap> 5x5eq := [
3
+ > [1, 1, 1, 1, 1, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
4
+ > [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
5
+ > [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 0, 0, 0, 0, 0],
6
+ > [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1],
7
+ > [0, 1, 1, 1, 1, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0],
8
+ > [1, 0, 1, 1, 1, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0],
9
+ > [1, 1, 0, 1, 1, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0],
10
+ > [1, 1, 1, 0, 1, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0],
11
+ > [1, 1, 1, 1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1, 0, 0, 0, 0, -1],
12
+ > [0, 1, 1, 1, 1, 0, -1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, -1],
13
+ > [1, 1, 1, 1, 0, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, 0]
14
+ > ];;
15
+ gap> 5x5grading := [[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]];;
16
+ gap> 5x5cone := NmzCone(["equations", 5x5eq,"grading",5x5grading]);
17
+ <a Normaliz cone>
18
+ gap> NmzIsGorenstein(5x5cone);
19
+ true
20
+ gap> NmzGeneratorOfInterior(5x5cone);
21
+ [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
22
+ gap> STOP_TEST("gorenstein.tst", 0);
@@ -0,0 +1,46 @@
1
+ # NormalizInterface, chapter 2
2
+ #
3
+ # DO NOT EDIT THIS FILE - EDIT EXAMPLES IN THE SOURCE INSTEAD!
4
+ #
5
+ # This file has been generated by AutoDoc. It contains examples extracted from
6
+ # the package documentation. Each example is preceded by a comment which gives
7
+ # the name of a GAPDoc XML file and a line range from which the example were
8
+ # taken. Note that the XML file in turn may have been generated by AutoDoc
9
+ # from some other input.
10
+ #
11
+ gap> START_TEST("normalizinterface01.tst");
12
+
13
+ # doc/_Chunks.xml:163-166
14
+ gap> cone := NmzCone(["integral_closure",[[2,1],[1,3]]]);
15
+ <a Normaliz cone>
16
+
17
+ # doc/_Chunks.xml:120-123
18
+ gap> NmzHasConeProperty(cone, "ExtremeRays");
19
+ false
20
+
21
+ # doc/_Chunks.xml:129-133
22
+ gap> NmzKnownConeProperties(cone);
23
+ [ "EmbeddingDim", "Generators", "InternalIndex", "IsInhomogeneous",
24
+ "OriginalMonoidGenerators", "Sublattice" ]
25
+
26
+ # doc/_Chunks.xml:139-157
27
+ gap> NmzKnownConeProperties(cone);
28
+ [ "EmbeddingDim", "Generators", "InternalIndex", "IsInhomogeneous",
29
+ "OriginalMonoidGenerators", "Sublattice" ]
30
+ gap> NmzCompute(cone, ["SupportHyperplanes", "IsPointed"]);
31
+ true
32
+ gap> NmzKnownConeProperties(cone);
33
+ [ "EmbeddingDim", "ExtremeRays", "Generators", "InternalIndex",
34
+ "IsDeg1ExtremeRays", "IsInhomogeneous", "IsPointed", "MaximalSubspace",
35
+ "OriginalMonoidGenerators", "Rank", "Sublattice", "SupportHyperplanes" ]
36
+ gap> NmzCompute(cone);;
37
+ gap> NmzKnownConeProperties(cone);
38
+ [ "ClassGroup", "EmbeddingDim", "ExtremeRays", "Generators", "HilbertBasis",
39
+ "InternalIndex", "IsDeg1ExtremeRays", "IsInhomogeneous",
40
+ "IsIntegrallyClosed", "IsPointed", "IsTriangulationNested",
41
+ "IsTriangulationPartial", "MaximalSubspace", "OriginalMonoidGenerators",
42
+ "Rank", "Sublattice", "SupportHyperplanes", "TriangulationDetSum",
43
+ "TriangulationSize", "UnitGroupIndex" ]
44
+
45
+ #
46
+ gap> STOP_TEST("normalizinterface01.tst", 1);
@@ -0,0 +1,107 @@
1
+ # NormalizInterface, chapter 3
2
+ #
3
+ # DO NOT EDIT THIS FILE - EDIT EXAMPLES IN THE SOURCE INSTEAD!
4
+ #
5
+ # This file has been generated by AutoDoc. It contains examples extracted from
6
+ # the package documentation. Each example is preceded by a comment which gives
7
+ # the name of a GAPDoc XML file and a line range from which the example were
8
+ # taken. Note that the XML file in turn may have been generated by AutoDoc
9
+ # from some other input.
10
+ #
11
+ gap> START_TEST("normalizinterface02.tst");
12
+
13
+ # doc/_Chunks.xml:2-15
14
+ gap> C := NmzCone(["integral_closure",[[2,1],[1,3]]]);
15
+ <a Normaliz cone>
16
+ gap> NmzHasConeProperty(C,"HilbertBasis");
17
+ false
18
+ gap> NmzHasConeProperty(C,"SupportHyperplanes");
19
+ false
20
+ gap> NmzConeProperty(C,"HilbertBasis");
21
+ [ [ 1, 1 ], [ 1, 2 ], [ 1, 3 ], [ 2, 1 ] ]
22
+ gap> NmzHasConeProperty(C,"SupportHyperplanes");
23
+ true
24
+ gap> NmzConeProperty(C,"SupportHyperplanes");
25
+ [ [ -1, 2 ], [ 3, -1 ] ]
26
+
27
+ # doc/_Chunks.xml:21-36
28
+ gap> D := NmzCone(["equations",[[1,2,-3]], "grading",[[0,-1,3]]]);
29
+ <a Normaliz cone>
30
+ gap> NmzCompute(D,["DualMode","HilbertSeries"]);
31
+ true
32
+ gap> NmzHilbertBasis(D);
33
+ [ [ 1, 1, 1 ], [ 0, 3, 2 ], [ 3, 0, 1 ] ]
34
+ gap> NmzHilbertSeries(D);
35
+ [ t^2-t+1, [ [ 1, 1 ], [ 3, 1 ] ] ]
36
+ gap> NmzHasConeProperty(D,"SupportHyperplanes");
37
+ true
38
+ gap> NmzSupportHyperplanes(D);
39
+ [ [ 0, 1, 0 ], [ 1, 0, 0 ] ]
40
+ gap> NmzEquations(D);
41
+ [ [ 1, 2, -3 ] ]
42
+
43
+ # doc/_Chunks.xml:42-53
44
+ gap> P := NmzCone(["inhom_equations",[[1,2,-3,1]], "grading", [[1,1,1]]]);
45
+ <a Normaliz cone>
46
+ gap> NmzIsInhomogeneous(C);
47
+ false
48
+ gap> NmzIsInhomogeneous(P);
49
+ true
50
+ gap> NmzHilbertBasis(P);
51
+ [ [ 1, 1, 1, 0 ], [ 3, 0, 1, 0 ], [ 0, 3, 2, 0 ] ]
52
+ gap> NmzModuleGenerators(P);
53
+ [ [ 0, 1, 1, 1 ], [ 2, 0, 1, 1 ] ]
54
+
55
+ # doc/_Chunks.xml:59-86
56
+ gap> Magic3x3even := NmzCone(["equations",
57
+ > [ [1, 1, 1, -1, -1, -1, 0, 0, 0],
58
+ > [1, 1, 1, 0, 0, 0, -1, -1, -1],
59
+ > [0, 1, 1, -1, 0, 0, -1, 0, 0],
60
+ > [1, 0, 1, 0, -1, 0, 0, -1, 0],
61
+ > [1, 1, 0, 0, 0, -1, 0, 0, -1],
62
+ > [0, 1, 1, 0, -1, 0, 0, 0, -1],
63
+ > [1, 1, 0, 0, -1, 0, -1, 0, 0] ],
64
+ > "congruences",
65
+ > [ [1, 0, 0, 0, 0, 0, 0, 0, 0, 2],
66
+ > [0, 0, 1, 0, 0, 0, 0, 0, 0, 2],
67
+ > [0, 0, 0, 0, 0, 0, 1, 0, 0, 2],
68
+ > [0, 0, 0, 0, 0, 0, 0, 0, 1, 2] ],
69
+ > "grading",
70
+ > [ [1, 1, 1, 0, 0, 0, 0, 0, 0] ] ] );
71
+ <a Normaliz cone>
72
+ gap> NmzHilbertBasis(Magic3x3even);
73
+ [ [ 0, 4, 2, 4, 2, 0, 2, 0, 4 ], [ 2, 0, 4, 4, 2, 0, 0, 4, 2 ],
74
+ [ 2, 2, 2, 2, 2, 2, 2, 2, 2 ], [ 2, 4, 0, 0, 2, 4, 4, 0, 2 ],
75
+ [ 4, 0, 2, 0, 2, 4, 2, 4, 0 ], [ 2, 3, 4, 5, 3, 1, 2, 3, 4 ],
76
+ [ 2, 5, 2, 3, 3, 3, 4, 1, 4 ], [ 4, 1, 4, 3, 3, 3, 2, 5, 2 ],
77
+ [ 4, 3, 2, 1, 3, 5, 4, 3, 2 ] ]
78
+ gap> NmzHilbertSeries(Magic3x3even);
79
+ [ t^3+3*t^2-t+1, [ [ 1, 1 ], [ 2, 2 ] ] ]
80
+ gap> NmzHilbertQuasiPolynomial(Magic3x3even);
81
+ [ 1/2*t^2+t+1, 1/2*t^2-1/2 ]
82
+
83
+ # doc/_Chunks.xml:92-114
84
+ gap> M := [
85
+ > [ 8, 8, 8, 7 ],
86
+ > [ 0, 4, 0, 1 ],
87
+ > [ 0, 1, 0, 7 ],
88
+ > [ 0, -2, 0, 7 ],
89
+ > [ 0, -2, 0, 1 ],
90
+ > [ 8, 48, 8, 17 ],
91
+ > [ 1, 6, 1, 34 ],
92
+ > [ 2,-12, -2, 37 ],
93
+ > [ 4,-24, -4, 14 ]
94
+ > ];;
95
+ gap> D := NmzCone(["inhom_inequalities", M,
96
+ > "signs", [[1,1,1]],
97
+ > "grading", [[1,1,1]]]);
98
+ <a Normaliz cone>
99
+ gap> NmzCompute(D,["DualMode","HilbertBasis","ModuleGenerators"]);
100
+ true
101
+ gap> NmzHilbertBasis(D);
102
+ [ [ 1, 0, 0, 0 ], [ 1, 0, 1, 0 ] ]
103
+ gap> NmzModuleGenerators(D);
104
+ [ [ 0, 0, 0, 1 ], [ 0, 0, 1, 1 ], [ 0, 0, 2, 1 ], [ 0, 0, 3, 1 ] ]
105
+
106
+ #
107
+ gap> STOP_TEST("normalizinterface02.tst", 1);
@@ -0,0 +1,136 @@
1
+ gap> START_TEST("project.tst");
2
+
3
+ #
4
+ gap> # Based on nonpointed.in
5
+ gap> cone := NmzCone([
6
+ > "equations", [[0, 0, 1, 0], [0, 0, 0, 1]],
7
+ > "inequalities", [[0, 1, 0, 0]],
8
+ > "projection_coordinates", [[1, 1, 1, 0]]]);;
9
+ gap> proj:=NmzProjectCone(cone);
10
+ <a Normaliz cone>
11
+
12
+ # check what was computed for the input cone
13
+ gap> tmp := NmzKnownConeProperties(cone);;
14
+ gap> RemoveSet(tmp, "NumberLatticePoints");
15
+ gap> Perform(tmp, Display);
16
+ EmbeddingDim
17
+ ExtremeRays
18
+ Generators
19
+ IsInhomogeneous
20
+ IsPointed
21
+ MaximalSubspace
22
+ ProjectCone
23
+ Rank
24
+ Sublattice
25
+ SupportHyperplanes
26
+ gap> Display(NmzTriangulation(cone));
27
+ [ [ rec(
28
+ Excluded := [ ],
29
+ height := 0,
30
+ key := [ 0 ],
31
+ mult := 0,
32
+ vol := 1 ) ], [ [ 0, 1, 0, 0 ] ] ]
33
+ gap> Display(NmzExtremeRays(cone));
34
+ [ [ 0, 1, 0, 0 ] ]
35
+ gap> Display(NmzSupportHyperplanes(cone));
36
+ [ [ 0, 1, 0, 0 ] ]
37
+ gap> Display(NmzHilbertBasis(cone));
38
+ [ [ 0, 1, 0, 0 ] ]
39
+ gap> Display(NmzDeg1Elements(cone));
40
+ [ [ 0, 1, 0, 0 ] ]
41
+ gap> Display(NmzSublattice(cone));
42
+ [ [ [ 1, 0, 0, 0 ], [ 0, 1, 0, 0 ] ],
43
+ [ [ 1, 0 ], [ 0, 1 ], [ 0, 0 ], [ 0, 0 ] ], 1 ]
44
+ gap> _NmzPrintSomeConeProperties(cone, [
45
+ > "Generators",
46
+ > "ExtremeRays",
47
+ > "SupportHyperplanes",
48
+ > "HilbertBasis",
49
+ > "Deg1Elements",
50
+ > "Sublattice",
51
+ > "NumberLatticePoints",
52
+ > "OriginalMonoidGenerators",
53
+ > ]);
54
+ BasicTriangulation = fail
55
+ EmbeddingDim = 4
56
+ Grading = [ 0, 1, 0, 0 ]
57
+ GradingDenom = 1
58
+ IsDeg1ExtremeRays = true
59
+ IsDeg1HilbertBasis = true
60
+ IsInhomogeneous = false
61
+ IsPointed = false
62
+ IsTriangulationNested = false
63
+ IsTriangulationPartial = true
64
+ MaximalSubspace =
65
+ [ [ 1, 0, 0, 0 ] ]
66
+ Multiplicity = 1
67
+ ProjectCone = <object>
68
+ Rank = 2
69
+ TriangulationDetSum = 0
70
+ TriangulationSize = 0
71
+
72
+ # check what was computed for the projected cone
73
+ gap> Perform(NmzKnownConeProperties(proj), Display);
74
+ EmbeddingDim
75
+ ExtremeRays
76
+ Generators
77
+ Grading
78
+ GradingDenom
79
+ InternalIndex
80
+ IsDeg1ExtremeRays
81
+ IsInhomogeneous
82
+ IsPointed
83
+ MaximalSubspace
84
+ OriginalMonoidGenerators
85
+ Rank
86
+ Sublattice
87
+ SupportHyperplanes
88
+ gap> Display(NmzTriangulation(proj));
89
+ [ [ rec(
90
+ Excluded := [ ],
91
+ height := 0,
92
+ key := [ 0 ],
93
+ mult := 0,
94
+ vol := 1 ) ], [ [ 0, 1, 0 ] ] ]
95
+ gap> Display(NmzExtremeRays(proj));
96
+ [ [ 0, 1, 0 ] ]
97
+ gap> Display(NmzSupportHyperplanes(proj));
98
+ [ [ 0, 1, 0 ] ]
99
+ gap> Display(NmzHilbertBasis(proj));
100
+ [ [ 0, 1, 0 ] ]
101
+ gap> Display(NmzDeg1Elements(proj));
102
+ [ [ 0, 1, 0 ] ]
103
+ gap> Display(NmzSublattice(proj));
104
+ [ [ [ 1, 0, 0 ], [ 0, 1, 0 ] ], [ [ 1, 0 ], [ 0, 1 ], [ 0, 0 ] ], 1 ]
105
+ gap> _NmzPrintSomeConeProperties(proj, [
106
+ > "Generators",
107
+ > "ExtremeRays",
108
+ > "SupportHyperplanes",
109
+ > "HilbertBasis",
110
+ > "Deg1Elements",
111
+ > "Sublattice",
112
+ > "NumberLatticePoints",
113
+ > "OriginalMonoidGenerators",
114
+ > ]);
115
+ BasicTriangulation = fail
116
+ EmbeddingDim = 3
117
+ Grading = [ 0, 1, 0 ]
118
+ GradingDenom = 1
119
+ InternalIndex = 1
120
+ IsDeg1ExtremeRays = true
121
+ IsDeg1HilbertBasis = true
122
+ IsInhomogeneous = false
123
+ IsIntegrallyClosed = true
124
+ IsPointed = false
125
+ IsTriangulationNested = false
126
+ IsTriangulationPartial = true
127
+ MaximalSubspace =
128
+ [ [ 1, 0, 0 ] ]
129
+ Multiplicity = 1
130
+ Rank = 2
131
+ TriangulationDetSum = 0
132
+ TriangulationSize = 0
133
+ UnitGroupIndex = 1
134
+
135
+ #
136
+ gap> STOP_TEST("project.tst", 0);
@@ -0,0 +1,151 @@
1
+ gap> START_TEST("rational.tst");
2
+
3
+ #
4
+ gap> M := [
5
+ > [ 1, 1, 2 ],
6
+ > [ -1, -1, 3 ],
7
+ > [ 1, -2, 4 ],
8
+ > ];;
9
+ gap> gr := [ [ 0, 0, 1 ] ];;
10
+ gap> cone := NmzCone(["integral_closure", M, "grading", gr]);;
11
+ gap> NmzCompute(cone);
12
+ true
13
+ gap> tmp := NmzKnownConeProperties(cone);;
14
+ gap> RemoveSet(tmp, "NumberLatticePoints");
15
+ gap> Perform(tmp, Display);
16
+ ClassGroup
17
+ Deg1Elements
18
+ EmbeddingDim
19
+ ExtremeRays
20
+ Generators
21
+ Grading
22
+ GradingDenom
23
+ HilbertBasis
24
+ HilbertQuasiPolynomial
25
+ HilbertSeries
26
+ InternalIndex
27
+ IsDeg1ExtremeRays
28
+ IsDeg1HilbertBasis
29
+ IsInhomogeneous
30
+ IsIntegrallyClosed
31
+ IsPointed
32
+ IsTriangulationNested
33
+ IsTriangulationPartial
34
+ MaximalSubspace
35
+ Multiplicity
36
+ OriginalMonoidGenerators
37
+ Rank
38
+ Sublattice
39
+ SupportHyperplanes
40
+ TriangulationDetSum
41
+ TriangulationSize
42
+ UnitGroupIndex
43
+ gap> Display(NmzTriangulation(cone));
44
+ [ [ rec(
45
+ Excluded := [ ],
46
+ height := 0,
47
+ key := [ 0, 1, 2 ],
48
+ mult := 0,
49
+ vol := 15 ) ], [ [ 1, 1, 2 ], [ -1, -1, 3 ], [ 1, -2, 4 ] ] ]
50
+ gap> Display(NmzExtremeRays(cone));
51
+ [ [ 1, 1, 2 ],
52
+ [ -1, -1, 3 ],
53
+ [ 1, -2, 4 ] ]
54
+ gap> Display(NmzSupportHyperplanes(cone));
55
+ [ [ -8, 2, 3 ],
56
+ [ 1, -1, 0 ],
57
+ [ 2, 7, 3 ] ]
58
+ gap> Display(NmzHilbertBasis(cone));
59
+ [ [ 0, 0, 1 ],
60
+ [ 1, 1, 2 ],
61
+ [ -1, -1, 3 ],
62
+ [ 0, -1, 3 ],
63
+ [ 1, 0, 3 ],
64
+ [ 1, -2, 4 ],
65
+ [ 1, -1, 4 ],
66
+ [ 0, -2, 5 ] ]
67
+ gap> Display(NmzDeg1Elements(cone));
68
+ [ [ 0, 0, 1 ] ]
69
+ gap> Display(NmzSublattice(cone));
70
+ [ [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ],
71
+ [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ], 1 ]
72
+ gap> Display(NmzOriginalMonoidGenerators(cone));
73
+ [ [ 1, 1, 2 ],
74
+ [ -1, -1, 3 ],
75
+ [ 1, -2, 4 ] ]
76
+ gap> _NmzPrintSomeConeProperties(cone, [
77
+ > "Generators",
78
+ > "ExtremeRays",
79
+ > "SupportHyperplanes",
80
+ > "HilbertBasis",
81
+ > "Deg1Elements",
82
+ > "Sublattice",
83
+ > "NumberLatticePoints",
84
+ > "OriginalMonoidGenerators",
85
+ > ]);
86
+ BasicTriangulation = fail
87
+ ClassGroup = [ 0, 3, 15 ]
88
+ EhrhartQuasiPolynomial = [ [ 48, 28, 15 ], [ 11, 22, 15 ], [ -20, 28, 15 ],
89
+ [ 39, 22, 15 ], [ 32, 28, 15 ], [ -5, 22, 15 ], [ 12, 28, 15 ],
90
+ [ 23, 22, 15 ], [ 16, 28, 15 ], [ 27, 22, 15 ], [ -4, 28, 15 ],
91
+ [ 7, 22, 15 ], 48 ]
92
+ EmbeddingDim = 3
93
+ Grading = [ 0, 0, 1 ]
94
+ GradingDenom = 1
95
+ HilbertQuasiPolynomial = [ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48,
96
+ 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,
97
+ 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,
98
+ 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,
99
+ 5/16*t^2+11/24*t+7/48 ]
100
+ HilbertQuasiPolynomial = [ 5/16*t^2+7/12*t+1, 5/16*t^2+11/24*t+11/48,
101
+ 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,
102
+ 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,
103
+ 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,
104
+ 5/16*t^2+11/24*t+7/48 ]
105
+ 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,
106
+ [ [ 1, 1 ], [ 2, 1 ], [ 12, 1 ] ] ]
107
+ InternalIndex = 15
108
+ IsDeg1ExtremeRays = false
109
+ IsDeg1HilbertBasis = false
110
+ IsInhomogeneous = false
111
+ IsIntegrallyClosed = false
112
+ IsPointed = true
113
+ IsTriangulationNested = false
114
+ IsTriangulationPartial = false
115
+ MaximalSubspace = [ ]
116
+ Multiplicity = 5/8
117
+ Rank = 3
118
+ TriangulationDetSum = 15
119
+ TriangulationSize = 1
120
+ UnitGroupIndex = 1
121
+ gap> Display(NmzConeDecomposition(cone));
122
+ [ [ rec(
123
+ Excluded := [ false, false, false ],
124
+ height := 0,
125
+ key := [ 0, 1, 2 ],
126
+ mult := 0,
127
+ vol := 15 ) ], [ [ 1, 1, 2 ], [ -1, -1, 3 ], [ 1, -2, 4 ] ] ]
128
+ gap> ForAll(NmzConeDecomposition(cone), IsBlistRep);
129
+ false
130
+
131
+ #
132
+ gap> NmzStanleyDec(cone);
133
+ [ [ [ [ 0, 1, 2 ],
134
+ [ [ 0, 0, 0 ], [ 1, 11, 10 ], [ 2, 7, 5 ], [ 3, 3, 0 ],
135
+ [ 4, 14, 10 ], [ 5, 10, 5 ], [ 6, 6, 0 ], [ 7, 2, 10 ],
136
+ [ 8, 13, 5 ], [ 9, 9, 0 ], [ 10, 5, 10 ], [ 11, 1, 5 ],
137
+ [ 12, 12, 0 ], [ 13, 8, 10 ], [ 14, 4, 5 ] ] ] ],
138
+ [ [ 1, 1, 2 ], [ -1, -1, 3 ], [ 1, -2, 4 ] ] ]
139
+
140
+ #
141
+ gap> (_NmzVersion() < [3, 7, 0]) or (NmzFVector(cone) = [ 1, 3, 3, 1 ]);
142
+ true
143
+ gap> (_NmzVersion() < [3, 7, 0]) or (NmzFaceLattice(cone) =
144
+ > [ [ [ false, false, false ], 0 ], [ [ true, false, false ], 1 ],
145
+ > [ [ false, true, false ], 1 ], [ [ true, true, false ], 2 ],
146
+ > [ [ false, false, true ], 1 ], [ [ true, false, true ], 2 ],
147
+ > [ [ false, true, true ], 2 ], [ [ true, true, true ], 3 ] ]);
148
+ true
149
+
150
+ #
151
+ gap> STOP_TEST("rational.tst", 0);