CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
1
<?xml version="1.0" encoding="UTF-8"?>
2
3
<!-- This is an automatically generated file. -->
4
<Chapter Label="Chapter_Functions">
5
<Heading>Functions</Heading>
6
7
<P/>
8
In this chapter we describe the functions offered by <A>NormalizInterface</A>.
9
All functions supplied by this package start with <Q>Nmz</Q>.
10
For examples see the chapter <Ref Chap="Chapter_Examples" Style="Text"/>.
11
<P/>
12
<Section Label="Chapter_Functions_Section_Create_a_NmzCone">
13
<Heading>Create a NmzCone</Heading>
14
15
<P/>
16
To create a cone object use <A>NmzCone</A>.
17
<P/>
18
<ManSection>
19
<Func Arg="list" Name="NmzCone" />
20
<Returns>NmzCone
21
</Returns>
22
<Description>
23
Creates a NmzCone. The <A>list</A> argument should contain an even number of
24
elements, alternating between a string and a integer matrix. The string has to
25
correspond to a Normaliz input type string and the following matrix will be
26
interpreted as input of that type.
27
<P/>
28
Currently the following strings are recognized:
29
<List>
30
<Item><C>integral_closure</C>,</Item>
31
<Item><C>polyhedron</C>,</Item>
32
<Item><C>normalization</C>,</Item>
33
<Item><C>polytope</C>,</Item>
34
<Item><C>rees_algebra</C>,</Item>
35
<Item><C>inequalities</C>,</Item>
36
<Item><C>strict_inequalities</C>,</Item>
37
<Item><C>signs</C>,</Item>
38
<Item><C>strict_signs</C>,</Item>
39
<Item><C>equations</C>,</Item>
40
<Item><C>congruences</C>,</Item>
41
<Item><C>inhom_inequalities</C>,</Item>
42
<Item><C>inhom_equations</C>,</Item>
43
<Item><C>inhom_congruences</C>,</Item>
44
<Item><C>dehomogenization</C>,</Item>
45
<Item><C>lattice_ideal</C>,</Item>
46
<Item><C>grading</C>,</Item>
47
<Item><C>excluded_faces</C>,</Item>
48
<Item><C>lattice</C>,</Item>
49
<Item><C>saturation</C>,</Item>
50
<Item><C>cone</C>,</Item>
51
<Item><C>offset</C>,</Item>
52
<Item><C>vertices</C>,</Item>
53
<Item><C>support_hyperplanes</C>,</Item>
54
<Item><C>cone_and_lattice</C>,</Item>
55
<Item><C>subspace</C>.</Item>
56
</List>
57
<P/>
58
See the Normaliz manual for a detailed description.
59
<P/>
60
<Example><![CDATA[
61
gap> cone := NmzCone(["integral_closure",[[2,1],[1,3]]]);
62
<a Normaliz cone>
63
]]></Example>
64
65
66
67
</Description>
68
</ManSection>
69
70
71
</Section>
72
73
74
<Section Label="Chapter_Functions_Section_Use_a_NmzCone">
75
<Heading>Use a NmzCone</Heading>
76
77
<P/>
78
<ManSection>
79
<Func Arg="cone property" Name="NmzHasConeProperty" />
80
<Returns>whether the cone has already computed the given property
81
</Returns>
82
<Description>
83
See <Ref Func="NmzConeProperty"/> for a list of recognized properties.
84
<P/>
85
<Example><![CDATA[
86
gap> NmzHasConeProperty(cone, "ExtremeRays");
87
false
88
]]></Example>
89
90
91
92
</Description>
93
</ManSection>
94
95
96
<ManSection>
97
<Func Arg="cone" Name="NmzKnownConeProperties" />
98
<Returns>a list of strings representing the known (computed) cone properties
99
</Returns>
100
<Description>
101
Given a Normaliz cone object, return a list of all properties already
102
computed for the cone.
103
<P/>
104
<Example><![CDATA[
105
gap> NmzKnownConeProperties(cone);
106
[ "Generators", "OriginalMonoidGenerators", "Sublattice" ]
107
]]></Example>
108
109
110
111
</Description>
112
</ManSection>
113
114
115
<ManSection>
116
<Func Arg="verboseFlag" Name="NmzSetVerboseDefault" />
117
<Returns>the previous verbosity
118
</Returns>
119
<Description>
120
Set the global default verbosity state in libnormaliz.
121
This will influence all NmzCone created afterwards, but not any existing ones.
122
<P/>
123
See also <Ref Func="NmzSetVerbose"/>
124
</Description>
125
</ManSection>
126
127
128
<ManSection>
129
<Func Arg="cone verboseFlag" Name="NmzSetVerbose" />
130
<Returns>the previous verbosity
131
</Returns>
132
<Description>
133
Set the verbosity state for a cone.
134
<P/>
135
See also <Ref Func="NmzSetVerboseDefault"/>
136
</Description>
137
</ManSection>
138
139
140
<ManSection>
141
<Func Arg="cone[, propnames]" Name="NmzCompute" />
142
<Returns>a boolean indicating success
143
</Returns>
144
<Description>
145
Start computing properties of the given cone.
146
The first parameter indicates a cone object, the second parameter
147
is either a single string, or a list of strings, which indicate
148
what should be computed.
149
<P/>
150
<P/>
151
The single parameter version is equivalent to
152
<C>NmzCone(cone, ["DefaultMode"])</C>.
153
See <Ref Func="NmzConeProperty"/> for a list of recognized properties.
154
<Example><![CDATA[
155
gap> NmzKnownConeProperties(cone);
156
[ "Generators", "OriginalMonoidGenerators", "Sublattice" ]
157
gap> NmzCompute(cone, ["SupportHyperplanes", "IsPointed"]);
158
true
159
gap> NmzKnownConeProperties(cone);
160
[ "Generators", "ExtremeRays", "SupportHyperplanes", "IsPointed",
161
"IsDeg1ExtremeRays", "OriginalMonoidGenerators", "Sublattice",
162
"MaximalSubspace" ]
163
gap> NmzCompute(cone);
164
true
165
gap> NmzKnownConeProperties(cone);
166
[ "Generators", "ExtremeRays", "SupportHyperplanes", "TriangulationSize",
167
"TriangulationDetSum", "HilbertBasis", "IsPointed", "IsDeg1ExtremeRays",
168
"IsIntegrallyClosed", "OriginalMonoidGenerators", "Sublattice",
169
"ClassGroup", "MaximalSubspace"]
170
]]></Example>
171
172
173
174
</Description>
175
</ManSection>
176
177
178
<ManSection>
179
<Func Arg="cone, property" Name="NmzConeProperty" />
180
<Returns>the result of the computation, type depends on the property
181
</Returns>
182
<Description>
183
Triggers the computation of the property of the cone and returns the result.
184
If the property was already known, it is not recomputed.
185
Currently the following strings are recognized as properties:
186
<List>
187
<Item><C>Generators</C> see <Ref Func="NmzGenerators"/>,</Item>
188
<Item><C>ExtremeRays</C> see <Ref Func="NmzExtremeRays"/>,</Item>
189
<Item><C>VerticesOfPolyhedron</C> see <Ref Func="NmzVerticesOfPolyhedron"/>,</Item>
190
<Item><C>SupportHyperplanes</C> see <Ref Func="NmzSupportHyperplanes"/>,</Item>
191
<Item><C>TriangulationSize</C> see <Ref Func="NmzTriangulationSize"/>,</Item>
192
<Item><C>TriangulationDetSum</C> see <Ref Func="NmzTriangulationDetSum"/>,</Item>
193
<Item><C>Triangulation</C> see <Ref Func="NmzTriangulation"/>,</Item>
194
<Item><C>Multiplicity</C> see <Ref Func="NmzMultiplicity"/>,</Item>
195
<Item><C>RecessionRank</C> see <Ref Func="NmzRecessionRank"/>,</Item>
196
<Item><C>AffineDim</C> see <Ref Func="NmzAffineDim"/>,</Item>
197
<Item><C>ModuleRank</C> see <Ref Func="NmzModuleRank"/>,</Item>
198
<Item><C>HilbertBasis</C> see <Ref Func="NmzHilbertBasis"/>,</Item>
199
<Item><C>ModuleGenerators</C> see <Ref Func="NmzModuleGenerators"/>,</Item>
200
<Item><C>Deg1Elements</C> see <Ref Func="NmzDeg1Elements"/>,</Item>
201
<Item><C>HilbertSeries</C> see <Ref Func="NmzHilbertSeries"/>,</Item>
202
<Item><C>HilbertQuasiPolynomial</C> see <Ref Func="NmzHilbertQuasiPolynomial"/>,</Item>
203
<Item><C>Grading</C> see <Ref Func="NmzGrading"/>,</Item>
204
<Item><C>IsPointed</C> see <Ref Func="NmzIsPointed"/>,</Item>
205
<Item><C>IsDeg1ExtremeRays</C> see <Ref Func="NmzIsDeg1ExtremeRays"/>,</Item>
206
<Item><C>IsDeg1HilbertBasis</C> see <Ref Func="NmzIsDeg1HilbertBasis"/>,</Item>
207
<Item><C>IsIntegrallyClosed</C> see <Ref Func="NmzIsIntegrallyClosed"/>,</Item>
208
<Item><C>OriginalMonoidGenerators</C> see <Ref Func="NmzOriginalMonoidGenerators"/>,</Item>
209
<Item><C>IsReesPrimary</C> see <Ref Func="NmzIsReesPrimary"/>,</Item>
210
<Item><C>ReesPrimaryMultiplicity</C> see <Ref Func="NmzReesPrimaryMultiplicity"/>,</Item>
211
<Item><C>ExcludedFaces</C> see <Ref Func="NmzExcludedFaces"/>,</Item>
212
<Item><C>Dehomogenization</C> see <Ref Func="NmzDehomogenization"/>,</Item>
213
<Item><C>InclusionExclusionData</C> see <Ref Func="NmzInclusionExclusionData"/>,</Item>
214
<Item><C>ClassGroup</C> see <Ref Func="NmzClassGroup"/>,</Item>
215
<Item><C>ModuleGeneratorsOverOriginalMonoid</C> see <Ref Func="NmzModuleGeneratorsOverOriginalMonoid"/>,</Item>
216
<Item><C>Sublattice</C> computes the efficient sublattice and returns a bool signaling
217
whether the computation was successful. Actual data connected to
218
it can be accessed by <Ref Func="NmzRank"/>, <Ref Func="NmzEquations"/>,
219
<Ref Func="NmzCongruences"/>, and <Ref Func="NmzBasisChange"/>.</Item>
220
</List>
221
<P/>
222
Additionally also the following compute options are accepted as property. They modify what and how should be computed, and return True after a successful computation.
223
<List>
224
<Item><C>Approximate</C> approximate the rational polytope by an integral polytope, currently only useful in combination with <C>Deg1Elements</C>.</Item>
225
<Item><C>BottomDecomposition</C> use the best possible triangulation (with respect to the sum of determinants) using the given generators.</Item>
226
<Item><C>DefaultMode</C> try to compute what is possible and do not throw an exception when something cannot be computed.</Item>
227
<Item><C>DualMode</C>activates the dual algorithm for the computation of the Hilbert basis and degree
228
1 elements. Includes <C>HilbertBasis</C>, unless <C>Deg1Elements</C> is set. Often a good choice if you start from constraints.</Item>
229
<Item><C>KeepOrder</C> forbids to reorder the generators. Blocks <C>BottomDecomposition</C>.</Item>
230
</List>
231
<P/>
232
All the properties above can be given to <Ref Func="NmzCompute"/>. There you can
233
combine different properties, e.g. give some properties that you would like to know and add some compute options.
234
<P/>
235
See the Normaliz manual for a detailed description.
236
<P/>
237
</Description>
238
</ManSection>
239
240
241
<ManSection>
242
<Func Arg="cone" Name="NmzPrintConeProperties" />
243
<Description>
244
Print an overview of all known properties of the given cone,
245
as well as their values.
246
</Description>
247
</ManSection>
248
249
250
</Section>
251
252
253
<Section Label="Chapter_Functions_Section_Cone_properties">
254
<Heading>Cone properties</Heading>
255
256
<P/>
257
<ManSection>
258
<Func Arg="cone" Name="NmzAffineDim" />
259
<Returns>the affine dimension
260
</Returns>
261
<Description>
262
The affine dimension of the polyhedron in inhomogeneous computations. Its computation is triggered if necessary.
263
<P/>
264
This is an alias for <C>NmzConeProperty( cone, "AffineDim" );</C> see <Ref Func="NmzConeProperty"/>.
265
</Description>
266
</ManSection>
267
268
269
<ManSection>
270
<Func Arg="cone" Name="NmzClassGroup" />
271
<Returns>the class group in a special format
272
</Returns>
273
<Description>
274
A normal affine monoid <Math>M</Math> has a well-defined divisor class group.
275
It is naturally isomorphic to the divisor class group of <Math>K[M]</Math> where <Math>K</Math>
276
is a field (or any unique factorization domain).
277
We represent it as a vector where the first entry is the rank. It is
278
followed by sequence of pairs of entries <M>n,m</M>. Such two entries
279
represent a free cyclic summand <M>(\mathbb{Z}/n\mathbb{Z})^m</M>.
280
Not allowed in inhomogeneous computations.
281
<P/>
282
This is an alias for <C>NmzConeProperty( cone, "ClassGroup" );</C> see <Ref Func="NmzConeProperty"/>.
283
</Description>
284
</ManSection>
285
286
287
<ManSection>
288
<Func Arg="cone" Name="NmzCongruences" />
289
<Returns>a matrix whose rows represent the congruences
290
</Returns>
291
<Description>
292
The equations, congruences and support hyperplanes together
293
describe the lattice points of the cone.
294
<P/>
295
This is part of the cone property <Q>Sublattice</Q>.
296
</Description>
297
</ManSection>
298
299
300
<ManSection>
301
<Func Arg="cone" Name="NmzDeg1Elements" />
302
<Returns>a matrix whose rows are the degree 1 elements
303
</Returns>
304
<Description>
305
Requires the presence of a grading. Not allowed in inhomogeneous computations.
306
<P/>
307
This is an alias for <C>NmzConeProperty( cone, "Deg1Elements" );</C> see <Ref Func="NmzConeProperty"/>.
308
</Description>
309
</ManSection>
310
311
312
<ManSection>
313
<Func Arg="cone" Name="NmzDehomogenization" />
314
<Returns>the dehomgenization vector
315
</Returns>
316
<Description>
317
Only for inhomogeneous computations.
318
<P/>
319
This is an alias for <C>NmzConeProperty( cone, "Dehomogenization" );</C> see <Ref Func="NmzConeProperty"/>.
320
</Description>
321
</ManSection>
322
323
324
<ManSection>
325
<Func Arg="cone" Name="NmzEmbeddingDimension" />
326
<Returns>the embedding dimension of the cone
327
</Returns>
328
<Description>
329
The embedding dimension is the dimension of the space in which the
330
computation is done. It is the number of components of the output vectors.
331
This value is always known directly after the creation of the cone.
332
</Description>
333
</ManSection>
334
335
336
<ManSection>
337
<Func Arg="cone" Name="NmzEquations" />
338
<Returns>a matrix whose rows represent the equations
339
</Returns>
340
<Description>
341
The equations cut out the linear space generated by the cone.
342
The equations, congruences and support hyperplanes together
343
describe the lattice points of the cone.
344
</Description>
345
</ManSection>
346
347
348
<ManSection>
349
<Func Arg="cone" Name="NmzExcludedFaces" />
350
<Returns>a matrix whose rows represent the excluded faces
351
</Returns>
352
<Description>
353
This is an alias for <C>NmzConeProperty( cone, "ExcludedFaces" );</C> see <Ref Func="NmzConeProperty"/>.
354
</Description>
355
</ManSection>
356
357
358
<ManSection>
359
<Func Arg="cone" Name="NmzExtremeRays" />
360
<Returns>a matrix whose rows are the extreme rays
361
</Returns>
362
<Description>
363
This is an alias for <C>NmzConeProperty( cone, "ExtremeRays" );</C> see <Ref Func="NmzConeProperty"/>.
364
</Description>
365
</ManSection>
366
367
368
<ManSection>
369
<Func Arg="cone" Name="NmzGenerators" />
370
<Returns>a matrix whose rows are the generators of <A>cone</A>
371
</Returns>
372
<Description>
373
This is an alias for <C>NmzConeProperty( cone, "Generators" );</C> see <Ref Func="NmzConeProperty"/>.
374
</Description>
375
</ManSection>
376
377
378
<ManSection>
379
<Func Arg="cone" Name="NmzGeneratorOfInterior" />
380
<Returns>a vector representing the generator of the interior of <A>cone</A>
381
</Returns>
382
<Description>
383
If <A>cone</A> is Gorenstein, this function returns the generator of the interior of <A>cone</A>.
384
If <A>cone</A> is not Gorenstein, an error is raised.
385
</Description>
386
</ManSection>
387
388
389
<ManSection>
390
<Func Arg="cone" Name="NmzGrading" />
391
<Returns>the grading vector
392
</Returns>
393
<Description>
394
This is an alias for <C>NmzConeProperty( cone, "Grading" );</C> see <Ref Func="NmzConeProperty"/>.
395
</Description>
396
</ManSection>
397
398
399
<ManSection>
400
<Func Arg="cone" Name="NmzHilbertBasis" />
401
<Returns>a matrix whose rows are the Hilbert basis elements
402
</Returns>
403
<Description>
404
This is an alias for <C>NmzConeProperty( cone, "HilbertBasis" );</C> see <Ref Func="NmzConeProperty"/>.
405
</Description>
406
</ManSection>
407
408
409
<ManSection>
410
<Func Arg="cone" Name="NmzHilbertQuasiPolynomial" />
411
<Returns>the Hilbert function as a quasipolynomial
412
</Returns>
413
<Description>
414
The Hilbert function counts the lattice points degreewise. The result is a
415
quasipolynomial <M>Q</M>, that is, a polynomial with periodic coefficients. It is
416
given as list of polynomials <M>P_0, \ldots, P_{(p-1)}</M> such that <M>Q(i) = P_{(i \bmod p)} (i)</M>.
417
<P/>
418
This is an alias for <C>NmzConeProperty( cone, "HilbertQuasiPolynomial" );</C> see <Ref Func="NmzConeProperty"/>.
419
</Description>
420
</ManSection>
421
422
423
<ManSection>
424
<Func Arg="cone" Name="NmzHilbertSeries" />
425
<Returns>the Hilbert series as rational function
426
</Returns>
427
<Description>
428
The result consists of a list with two entries. The first is the numerator
429
polynomial. In inhomogeneous computations this can also be a Laurent
430
polynomial. The second list entry represents the denominator. It is a list
431
of pairs <M>[k_i, l_i]</M>. Such a pair represents the factor <M>(1-t^{k_i})^{l_i}</M>.
432
<P/>
433
This is an alias for <C>NmzConeProperty( cone, "HilbertSeries" );</C> see <Ref Func="NmzConeProperty"/>.
434
</Description>
435
</ManSection>
436
437
438
<ManSection>
439
<Func Arg="cone" Name="NmzInclusionExclusionData" />
440
<Returns>inclusion-exclusion data
441
</Returns>
442
<Description>
443
List of faces which are internally have been used in the inclusion-exclusion
444
scheme. Given as a list pairs. The first pair entry is a key of generators
445
contained in the face (compare also <Ref Func="NmzTriangulation"/>) and the
446
multiplicity with which it was considered.
447
Only available with excluded faces or strict constraints as input.
448
<P/>
449
This is an alias for <C>NmzConeProperty( cone, "InclusionExclusionData" );</C> see <Ref Func="NmzConeProperty"/>.
450
</Description>
451
</ManSection>
452
453
454
<ManSection>
455
<Func Arg="cone" Name="NmzIsDeg1ExtremeRays" />
456
<Returns><K>true</K> if all extreme rays have degree 1; <K>false</K> otherwise
457
</Returns>
458
<Description>
459
This is an alias for <C>NmzConeProperty( cone, "IsDeg1ExtremeRays" );</C> see <Ref Func="NmzConeProperty"/>.
460
</Description>
461
</ManSection>
462
463
464
<ManSection>
465
<Func Arg="cone" Name="NmzIsDeg1HilbertBasis" />
466
<Returns><K>true</K> if all Hilbert basis elements have degree 1; <K>false</K> otherwise
467
</Returns>
468
<Description>
469
This is an alias for <C>NmzConeProperty( cone, "IsDeg1HilbertBasis" );</C> see <Ref Func="NmzConeProperty"/>.
470
</Description>
471
</ManSection>
472
473
474
<ManSection>
475
<Func Arg="cone" Name="NmzIsGorenstein" />
476
<Returns>whether the cone is Gorenstein
477
</Returns>
478
<Description>
479
Returns true if <A>cone</A> is Gorenstein, false otherwise.
480
</Description>
481
</ManSection>
482
483
484
<ManSection>
485
<Func Arg="cone" Name="NmzIsInhomogeneous" />
486
<Returns>whether the cone is inhomogeneous
487
</Returns>
488
<Description>
489
This value is always known directly after the creation of the cone.
490
</Description>
491
</ManSection>
492
493
494
<ManSection>
495
<Func Arg="cone" Name="NmzIsIntegrallyClosed" />
496
<Returns><K>true</K> if the cone is integrally closed; <K>false</K> otherwise
497
</Returns>
498
<Description>
499
It is integrally closed when the Hilbert basis is a subset of the original monoid generators. So it is only computable if we have original monoid generators.
500
<P/>
501
This is an alias for <C>NmzConeProperty( cone, "IsIntegrallyClosed" );</C> see <Ref Func="NmzConeProperty"/>.
502
</Description>
503
</ManSection>
504
505
506
<ManSection>
507
<Func Arg="cone" Name="NmzIsPointed" />
508
<Returns><K>true</K> if the cone is pointed; <K>false</K> otherwise
509
</Returns>
510
<Description>
511
This is an alias for <C>NmzConeProperty( cone, "IsPointed" );</C> see <Ref Func="NmzConeProperty"/>.
512
</Description>
513
</ManSection>
514
515
516
<ManSection>
517
<Func Arg="cone" Name="NmzIsReesPrimary" />
518
<Returns><K>true</K> if is the monomial ideal is primary to the irrelevant maximal ideal, <K>false</K> otherwise
519
</Returns>
520
<Description>
521
Only used with the input type <C>rees_algebra</C>.
522
<P/>
523
This is an alias for <C>NmzConeProperty( cone, "IsReesPrimary" );</C> see <Ref Func="NmzConeProperty"/>.
524
</Description>
525
</ManSection>
526
527
528
<ManSection>
529
<Func Arg="cone" Name="NmzMaximalSubspace" />
530
<Returns>a matrix whose rows generate the maximale linear subspace
531
</Returns>
532
<Description>
533
This is an alias for <C>NmzConeProperty( cone, "MaximalSubspace" );</C> see <Ref Func="NmzConeProperty"/>.
534
</Description>
535
</ManSection>
536
537
538
<ManSection>
539
<Func Arg="cone" Name="NmzModuleGenerators" />
540
<Returns>a matrix whose rows are the module generators
541
</Returns>
542
<Description>
543
This is an alias for <C>NmzConeProperty( cone, "ModuleGenerators" );</C> see <Ref Func="NmzConeProperty"/>.
544
</Description>
545
</ManSection>
546
547
548
<ManSection>
549
<Func Arg="cone" Name="NmzModuleGeneratorsOverOriginalMonoid" />
550
<Returns>a matrix whose rows are the module generators over the original monoid
551
</Returns>
552
<Description>
553
A minimal system of generators of the integral closure over the original monoid.
554
Requires the existence of original monoid generators. Not allowed in inhomogeneous computations.
555
<P/>
556
This is an alias for <C>NmzConeProperty( cone, "ModuleGeneratorsOverOriginalMonoid" );</C> see <Ref Func="NmzConeProperty"/>.
557
</Description>
558
</ManSection>
559
560
561
<ManSection>
562
<Func Arg="cone" Name="NmzModuleRank" />
563
<Returns>the rank of the module of lattice points in the polyhedron as a module over the recession monoid
564
</Returns>
565
<Description>
566
Only for inhomogeneous computations.
567
<P/>
568
This is an alias for <C>NmzConeProperty( cone, "ModuleRank" );</C> see <Ref Func="NmzConeProperty"/>.
569
</Description>
570
</ManSection>
571
572
573
<ManSection>
574
<Func Arg="cone" Name="NmzMultiplicity" />
575
<Description>
576
This is an alias for <C>NmzConeProperty( cone, "Multiplicity" );</C> see <Ref Func="NmzConeProperty"/>.
577
</Description>
578
</ManSection>
579
580
581
<ManSection>
582
<Func Arg="cone" Name="NmzOriginalMonoidGenerators" />
583
<Returns>a matrix whose rows are the original monoid generators
584
</Returns>
585
<Description>
586
This is an alias for <C>NmzConeProperty( cone, "OriginalMonoidGenerators" );</C> see <Ref Func="NmzConeProperty"/>.
587
</Description>
588
</ManSection>
589
590
591
<ManSection>
592
<Func Arg="cone" Name="NmzRank" />
593
<Returns>the rank of the cone
594
</Returns>
595
<Description>
596
This value is the rank of the lattice generated by the lattice points of the cone.
597
<P/>
598
This is part of the cone property <Q>Sublattice</Q>.
599
</Description>
600
</ManSection>
601
602
603
<ManSection>
604
<Func Arg="cone" Name="NmzRecessionRank" />
605
<Returns>the rank of the recession cone
606
</Returns>
607
<Description>
608
Only for inhomogeneous computations.
609
<P/>
610
This is an alias for <C>NmzConeProperty( cone, "RecessionRank" );</C> see <Ref Func="NmzConeProperty"/>.
611
</Description>
612
</ManSection>
613
614
615
<ManSection>
616
<Func Arg="cone" Name="NmzReesPrimaryMultiplicity" />
617
<Description>
618
the multiplicity of a monomial ideal, provided it is primary to the maximal
619
ideal generated by the indeterminates. Used only with the input type
620
<C>rees_algebra</C>.
621
<P/>
622
This is an alias for <C>NmzConeProperty( cone, "ReesPrimaryMultiplicity" );</C> see <Ref Func="NmzConeProperty"/>.
623
</Description>
624
</ManSection>
625
626
627
<ManSection>
628
<Func Arg="cone" Name="NmzSupportHyperplanes" />
629
<Returns>a matrix whose rows represent the support hyperplanes
630
</Returns>
631
<Description>
632
The equations cut out the linear space generated by the cone.
633
The equations, congruences and support hyperplanes together
634
describe the lattice points of the cone.
635
<P/>
636
This is an alias for <C>NmzConeProperty( cone, "SupportHyperplanes" );</C> see <Ref Func="NmzConeProperty"/>.
637
</Description>
638
</ManSection>
639
640
641
<ManSection>
642
<Func Arg="cone" Name="NmzTriangulation" />
643
<Returns>the triangulation
644
</Returns>
645
<Description>
646
This returns a list of the maximal simplicial cones in a triangulation, i.e., a list of cones dividing the
647
cone into simplicial cones. Each cone in the list is represented by a pair.
648
The first entry of such a pair is the key of the simplex, i.e., a list of integers <Math>a_1,\dots,a_n</Math>
649
referring to the <Ref Func="NmzGenerators"/> (counting from 0) which are used in this simplicial cone.
650
The second entry of each pair in the list is the absolute value of the determinant of the generator matrix of the simplicial cone.
651
<P/>
652
This is an alias for <C>NmzConeProperty( cone, "Triangulation" );</C> see <Ref Func="NmzConeProperty"/>.
653
</Description>
654
</ManSection>
655
656
657
<ManSection>
658
<Func Arg="cone" Name="NmzTriangulationDetSum" />
659
<Returns>sum of the absolute values of the determinants of the simplicial cones in the used triangulation
660
</Returns>
661
<Description>
662
This is an alias for <C>NmzConeProperty( cone, "TriangulationDetSum" );</C> see <Ref Func="NmzConeProperty"/>.
663
</Description>
664
</ManSection>
665
666
667
<ManSection>
668
<Func Arg="cone" Name="NmzTriangulationSize" />
669
<Returns>the number of simplicial cones in the used triangulation
670
</Returns>
671
<Description>
672
This is an alias for <C>NmzConeProperty( cone, "TriangulationSize" );</C> see <Ref Func="NmzConeProperty"/>.
673
</Description>
674
</ManSection>
675
676
677
<ManSection>
678
<Func Arg="cone" Name="NmzVerticesFloat" />
679
<Returns>a matrix whose rows are the vertices of the polyhedron <A>cone</A> with float coordinates
680
</Returns>
681
<Description>
682
The rows of this matrix represent the vertices of <A>cone</A>, printed as floats for better readability.
683
The result might be inexact, and should therefore not be used for computations.
684
</Description>
685
</ManSection>
686
687
688
<ManSection>
689
<Func Arg="cone" Name="NmzVerticesOfPolyhedron" />
690
<Returns>a matrix whose rows are the vertices of the polyhedron
691
</Returns>
692
<Description>
693
This is an alias for <C>NmzConeProperty( cone, "VerticesOfPolyhedron" );</C> see <Ref Func="NmzConeProperty"/>.
694
</Description>
695
</ManSection>
696
697
698
<ManSection>
699
<Func Arg="cone" Name="NmzConeDecomposition" />
700
<Description>
701
This is an alias for NmzConeProperty( cone, "ConeDecomposition" );
702
</Description>
703
</ManSection>
704
705
706
<ManSection>
707
<Func Arg="cone" Name="NmzEmbeddingDim" />
708
<Description>
709
This is an alias for NmzConeProperty( cone, "EmbeddingDim" );
710
</Description>
711
</ManSection>
712
713
714
<ManSection>
715
<Func Arg="cone" Name="NmzExternalIndex" />
716
<Description>
717
This is an alias for NmzConeProperty( cone, "ExternalIndex" );
718
</Description>
719
</ManSection>
720
721
722
<ManSection>
723
<Func Arg="cone" Name="NmzGradingDenom" />
724
<Description>
725
This is an alias for NmzConeProperty( cone, "GradingDenom" );
726
</Description>
727
</ManSection>
728
729
730
<ManSection>
731
<Func Arg="cone" Name="NmzIntegerHull" />
732
<Description>
733
This is an alias for NmzConeProperty( cone, "IntegerHull" );
734
</Description>
735
</ManSection>
736
737
738
<ManSection>
739
<Func Arg="cone" Name="NmzInternalIndex" />
740
<Description>
741
This is an alias for NmzConeProperty( cone, "InternalIndex" );
742
</Description>
743
</ManSection>
744
745
746
<ManSection>
747
<Func Arg="cone" Name="NmzStanleyDec" />
748
<Description>
749
This is an alias for NmzConeProperty( cone, "StanleyDec" );
750
</Description>
751
</ManSection>
752
753
754
<ManSection>
755
<Func Arg="cone" Name="NmzSublattice" />
756
<Description>
757
This is an alias for NmzConeProperty( cone, "Sublattice" );
758
</Description>
759
</ManSection>
760
761
762
<ManSection>
763
<Func Arg="cone" Name="NmzUnitGroupIndex" />
764
<Description>
765
This is an alias for NmzConeProperty( cone, "UnitGroupIndex" );
766
</Description>
767
</ManSection>
768
769
770
<ManSection>
771
<Func Arg="cone" Name="NmzWeightedEhrhartQuasiPolynomial" />
772
<Description>
773
This is an alias for NmzConeProperty( cone, "NmzWeightedEhrhartQuasiPolynomial" );
774
</Description>
775
</ManSection>
776
777
778
<ManSection>
779
<Func Arg="cone" Name="NmzWeightedEhrhartSeries" />
780
<Description>
781
This is an alias for NmzConeProperty( cone, "NmzWeightedEhrhartSeries" );
782
</Description>
783
</ManSection>
784
785
786
<ManSection>
787
<Func Arg="cone" Name="NmzWitnessNotIntegrallyClosed" />
788
<Description>
789
This is an alias for NmzConeProperty( cone, "WitnessNotIntegrallyClosed" );
790
</Description>
791
</ManSection>
792
793
794
<ManSection>
795
<Func Arg="cone" Name="NmzBasisChange" />
796
<Returns>a record describing the basis change
797
</Returns>
798
<Description>
799
The result record <C>r</C> has three components:
800
<C>r.Embedding</C>, <C>r.Projection</C>, and <C>r.Annihilator</C>,
801
where the embedding <C>A</C> and the projection <C>B</C>
802
are matrices, and the annihilator <C>c</C> is an integer.
803
They represent the mapping into the effective lattice
804
<M>\mathbb{Z}^n \to \mathbb{Z}^r, u \mapsto (uB)/c</M>
805
and the inverse operation
806
<M>\mathbb{Z}^r \to \mathbb{Z}^n, v \mapsto vA</M>.
807
<P/>
808
This is part of the cone property <Q>Sublattice</Q>.
809
</Description>
810
</ManSection>
811
812
813
</Section>
814
815
816
817
</Chapter>
818
819
820