Macaulay2 » Documentation
Packages » AssociativeAlgebras :: NCGB
next | previous | forward | backward | up | index | toc

NCGB -- Compute a two-sided Groebner basis of an ideal to a specified degree



This method performs a two-sided Groebner basis calculation of the ideal $I$ to the degree $n$ given. Possible strategies are "Naive", "F4" and "F4Parallel". If no integer is given, the Groebner basis is computed to twice the maximal degree of a generator. As usual, one must take care not to provide too high of a degree here, as Groebner bases may be infinite in the noncommutative case.

The current state of the algorithm requires the FreeAlgebra to be defined over a field, and the "F4" or "F4Parallel" strategies require the base ring to be a finite prime field $\Z/p$.

In order to control the number of cores used in the parallel algorithm, see parallelism in engine computations.

i1 : A = ZZ/101<|x,y,z|>

o1 = A

o1 : FreeAlgebra
i2 : I = ideal { x*y + y*x - 2*z^2,
                 y*z + z*y - 2*x^2,
                 z*x + x*z - 2*y^2}

                          2      2                      2
o2 = ideal (x*y + y*x - 2z , - 2x  + y*z + z*y, x*z - 2y  + z*x)

o2 : Ideal of A
i3 : Igb = NCGB(I,10)

o3 = | xy+yx-2z2 x2+50yz+50zy xz-2y2+zx y2z-zy2 yz2-z2y |

             1      5
o3 : Matrix A  <-- A

See also

Ways to use NCGB :

For the programmer

The object NCGB is a method function with options.