Go to the first, previous, next, last section, table of contents.


Controlling Groebner basis computations

One can cotrol a Groebner basis computation by setting various parameters. These parameters can be set and examined by a built-in function dp_gr_flags(). Without argument it returns the current settings.

[100] dp_gr_flags();
[Demand,0,NoSugar,0,NoCriB,0,NoGC,0,NoMC,0,NoRA,0,NoGCD,0,Top,0,ShowMag,1,
Print,1,Stat,0,Reverse,0,InterReduce,0,Multiple,0]
[101]

The return value is a list which contains the names of parameters and their values. The meaning of the parameters are as follows. `on' means that the parameter is not zero.

NoSugar
If `on', Buchberger's normal strategy is used instead of sugar strategy.
NoCriB
If `on', criterion B among the Gebauer-Moeller's criteria is not applied.
NoGC
If `on', the check that a Groebner basis candidate is indeed a Groebner basis, is not executed.
NoMC
If `on', the check that the resulting polynomials generates the same ideal as the ideal generated by the input, is not executed.
NoRA
If `on', the interreduction, which makes the Groebner basis reduced, is not executed.
NoGCD
If `on', content removals are not executed during a Groebner basis computation over a rational function field.
Top
If `on', Only the head term of the polynomial being reduced is reduced.
Reverse
If `on', the selection strategy of reducer in a normal form computation is such that a newer reducer is used first.
Print
If `on', various informations during a Groebner basis computation is displayed.
Stat
If `on', a summary of informations is shown after a Groebner basis computation. Note that the summary is always shown if Print is `on'.
ShowMag
If `on' and Print is `on', the sum of bit length of coefficients of a generated basis element, which we call magnitude, is shown after every normal computation. After comleting the computation the maximal value among the sums is shown.
Multiple
If a non-zero integer, in a normal form computation over the rationals, the integer content of the polynomial being reduced is removed when its magnitude becomes Multiple times larger than a registered value, which is set to the magnitude of the input polynomial. After each content removal the registered value is set to the magnitude of the resulting polynomial. Multiple is equal to 1, the simiplification is done after every normal form computation. It is empirically known that it is often efficient to set Multiple to 2 for the case where large integers appear during the computation.
Demand
If the value (a character string) is a valid directory name, then generated basis elements are put in the directory and are loaded on demand during normal form computations. Each elements is saved in the binary form and its name coincides with the index internally used in the computation. These binary files are not removed automatically and one should remove them by hand.

If Print is `on', the following informations are shown.

[93] gr(cyclic(4),[c0,c1,c2,c3],0)$
mod= 99999989, eval = []
(0)(0)<<0,2,0,0>>(2,3),nb=2,nab=5,rp=2,sugar=2,mag=4
(0)(0)<<0,1,2,0>>(1,2),nb=3,nab=6,rp=2,sugar=3,mag=4
(0)(0)<<0,1,1,2>>(0,1),nb=4,nab=7,rp=3,sugar=4,mag=6
.
(0)(0)<<0,0,3,2>>(5,6),nb=5,nab=8,rp=2,sugar=5,mag=4
(0)(0)<<0,1,0,4>>(4,6),nb=6,nab=9,rp=3,sugar=5,mag=4
(0)(0)<<0,0,2,4>>(6,8),nb=7,nab=10,rp=4,sugar=6,mag=6
....gb done
reduceall
.......
membercheck
(0,0)(0,0)(0,0)(0,0)
gbcheck total 8 pairs
........
UP=(0,0)SP=(0,0)SPM=(0,0)NF=(0,0)NFM=(0.010002,0)ZNFM=(0.010002,0)PZ=(0,0)
NP=(0,0)MP=(0,0)RA=(0,0)MC=(0,0)GC=(0,0)T=40,B=0 M=8 F=6 D=12 ZR=5 NZR=6
Max_mag=6
[94]

In this example mod and eval indicate moduli used in trace-lifting. mod is a prime and eval is a list of integers used for evaluation when the ground field is a field of rational functions.

The following information is shown after every normal form computation.

(TNF)(TCONT)HT(INDEX),nb=NB,nab=NAB,rp=RP,sugar=S,mag=M

Meaning of each component is as follows.

TNF
CPU time for normal form computation (second)
TCONT
CPU time for content removal(second)
HT
Head term of the generated basis element
INDEX
Pair of indices which corresponds to the reduced S-polynomial
NB
Number of basis elements after removing redundancy
NAB
Number of all the basis elements
RP
Number of remaining pairs
S
Sugar of the generated basis element
M
Magnitude of the genrated basis element (shown if ShowMag is `on'.)

The summary of the informations shown after a Groebner basis computation is as follows. If a component shows timings and it contains two numbers, they are a pair of time for computation and time for garbage colection.

UP
Time to manipulate the list of critical pairs
SP
Time to compute S-polynomials over the rationals
SPM
Time to compute S-polynomials over a finite field
NF
Time to compute normal forms over the rationals
NFM
Time to compute normal forms over a finite field
ZNFM
Time for zero reductions in NFM
PZ
Time to remove integer contets
NP
Time to compute remainders for coefficients of polynomials with coeffieints in the rationals
MP
Time to select pairs from which S-polynomials are computed
RA
Time to interreduce the Groebner basis candidate
MC
Time to check that each input polynomial is a member of the ideal generated by the Groebner basis candidate.
GC
Time to check that the Groebner basis candidate is a Groebner basis
T
Number of critical pairs generated
B, M, F, D
Number of critical pairs removed by using each criterion
ZR
Number of S-polynomials reduced to 0
NZR
Number of S-polynomials reduced to non-zero results
Max_mag
Maximal magnitude among all the generated polynomials


Go to the first, previous, next, last section, table of contents.