Minimalizes first, then replaces each of the values of a hash table H by its remainder on the division by the remaining values H.
If values H constitute a Groebner basis of the ideal they generate, this method returns a reduced Groebner basis.
i1 : R = ZZ/101[a,b,c]; |
i2 : T = tgb( ideal "abc+c2,ab2-b3c+ac,b2",2)
3
o2 = HashTable{((0-2)-0) => -c }
2
((1-2)-0) => -c
2
(0-1) => a c
2
(0-2) => b*c
(1-2) => -a*c
2
0 => a*b*c + c
3 2
1 => - b c + a*b + a*c
2
2 => b
o2 : HashTable
|
i3 : reduce T
o3 = HashTable{((0-2)-0) => null}
2
((1-2)-0) => c
(0-1) => null
(0-2) => null
(1-2) => a*c
0 => null
1 => null
2
2 => b
o3 : HashTable
|
Polynomials are normalized so that the leading coefficient is 1. Note that keys of non-minimal entries are retained, and the corresponding table value is null.
The object reduce is a method function.