Macaulay2 » Documentation
Packages » NCAlgebra :: twoSidedNCGroebnerBasisBergman
next | previous | forward | backward | up | index | toc

twoSidedNCGroebnerBasisBergman -- Calls Bergman to compute a two sided noncommutative Groebner Basis.

Synopsis

Description

This command calls the computer algebra system Bergman to compute a noncommutative Groebner basis.

Since Groebner bases in the tensor algebra need not be finitely generated, one should specify a degree limit on the computation unless one has a reason to believe the Groebner basis is finite.

i1 : A = QQ{x,y,z}

o1 = A

o1 : NCPolynomialRing
i2 : p = y*z + z*y - x^2

            2
o2 = zy+yz-x

o2 : A
i3 : q = x*z + z*x - y^2

         2
o3 = zx-y +xz

o3 : A
i4 : r = z^2 - x*y - y*x

      2
o4 = z -yx-xy

o4 : A
i5 : I = ncIdeal {p,q,r}

                             2      2      2
o5 = Two-sided ideal {zy+yz-x , zx-y +xz, z -yx-xy}

o5 : NCIdeal
i6 : Igb = twoSidedNCGroebnerBasisBergman I
--Calling Bergman for NCGB calculation.
Complete!

      2    2                2
o6 = y x-xy ; Lead Term = (y x, 1)
       2  2                  2
     yx -x y; Lead Term = (yx , 1)
         2
     zx-y +xz; Lead Term = (zx, 1)
            2
     zy+yz-x ; Lead Term = (zy, 1)
      2                      2
     z -yx-xy; Lead Term = (z , 1)

o6 : NCGroebnerBasis

Ways to use twoSidedNCGroebnerBasisBergman :

For the programmer

The object twoSidedNCGroebnerBasisBergman is a method function with options.