next | previous | forward | backward | up | top | index | toc | Macaulay2 web site

reductionNumber -- reduction number of an ideal

Synopsis

Description

reductionNumber takes an ideal I that is homogeneous or inhomogeneous (in the latter case the ideal is to be regarded as an ideal in the localization of the polynomial ring at the origin.). It returns the integer k such that for a generic minimal reduction J of I, JIk = Ik+1.

The routine is probabilistic, since it depends on the routine minimalReduction.

See the book Huneke, Craig; Swanson, Irena: Integral closure of ideals, rings, and modules. London Mathematical Society Lecture Note Series, 336. Cambridge University Press, Cambridge, 2006. for further information.
i1 : setRandomSeed()
i2 : kk = ZZ/101;
i3 : S = kk[a..c];
i4 : m = ideal vars S;

o4 : Ideal of S
i5 : i = (ideal"a,b")*m+ideal"c3"

             2                  2        3
o5 = ideal (a , a*b, a*c, a*b, b , b*c, c )

o5 : Ideal of S
i6 : analyticSpread i

o6 = 3
i7 : minimalReduction i
Warning: minimal reduction is not necessarily homogeneous

               3      2              2                    3      2        
o7 = ideal (50c  + 42a  - 41a*b - 15b  + 39a*c - 22b*c, 2c  + 45a  + a*b +
     ------------------------------------------------------------------------
        2                       3     2              2
     19b  - 39a*c - 38b*c, - 32c  - 4a  - 42a*b - 32b  - 16a*c + 31b*c)

o7 : Ideal of S
i8 : reductionNumber i
Warning: minimal reduction is not necessarily homogeneous

o8 = 1

Caveat

It is possible for the routine to not finish in reasonable time, due to the probabilistic nature of the routine. What happens is that the routine minimalReduction occasionally, but rarely, returns an ideal which is not a minimal reduction. In this case, the routine goes into an infinite loop. This will be addressed in a future version of the package. In the meantime, simply interrupt the routine, and restart the computation.

See also

Ways to use reductionNumber :