# NCRingElement % NCGroebnerBasis -- Reduces a NCRingElement by a NCGroebnerBasis

## Synopsis

• Operator: %
• Usage:
fred = f % Igb
• Inputs:
• Outputs:

## Description

This command reduces the input modulo a noncommutative Groebner basis. It will either reduce it using top-level Macaulay code, or via a call to Bergman, depending on the size and degree of the input element.

 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 = ncGroebnerBasis 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 i7 : z^6 % Igb 2 2 3 3 o7 = yxyxyx+xyxyxy+3x yxy +3x y o7 : A