<?xml version="1.0" encoding="utf-8" ?> <!-- for emacs: -*- coding: utf-8 -*- --> <!-- Apache may like this line in the file .htaccess: AddCharset utf-8 .html --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head><title>reductionNumber -- reduction number of one ideal with respect to another</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="_rees__Algebra.html">next</a> | <a href="_normal__Cone.html">previous</a> | <a href="_rees__Algebra.html">forward</a> | <a href="_normal__Cone.html">backward</a> | up | <a href="index.html">top</a> | <a href="master.html">index</a> | <a href="toc.html">toc</a> | <a href="http://www.math.uiuc.edu/Macaulay2/">Macaulay2 web site</a></div> </td> </tr> </table> <hr/> <div><h1>reductionNumber -- reduction number of one ideal with respect to another</h1> <div class="single"><h2>Synopsis</h2> <ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>k = reductionNumber(I,J)</tt></div> </dd></dl> </div> </li> <li><div class="single">Inputs:<ul><li><span><tt>I</tt>, <span>an <a href="../../Macaulay2Doc/html/___Ideal.html">ideal</a></span></span></li> <li><span><tt>J</tt>, <span>an <a href="../../Macaulay2Doc/html/___Ideal.html">ideal</a></span></span></li> </ul> </div> </li> <li><div class="single">Outputs:<ul><li><span><span>an <a href="../../Macaulay2Doc/html/___Z__Z.html">integer</a></span>, the reduction number of <i>I</i> (defined below)</span></li> </ul> </div> </li> </ul> </div> <div class="single"><h2>Description</h2> <div><p>reductionNumber takes a pair of ideals <i>I,J</i>, 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.). The ideal <i>J</i> must be a reduction of <i>I</i> (that is, <i>J⊂I</i> and <i>I</i> is integrally dependent on <i>J</i>. This condition is checked by the function <tt>isReduction</tt> (missing documentation<!-- tag: isReduction -->). It returns the smallest integer <i>k</i> such that <i>JI<sup>k</sup> = I<sup>k+1</sup></i>.</p> <div>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.</div> <table class="examples"><tr><td><pre>i1 : setRandomSeed()</pre> </td></tr> <tr><td><pre>i2 : kk = ZZ/101;</pre> </td></tr> <tr><td><pre>i3 : S = kk[a..c];</pre> </td></tr> <tr><td><pre>i4 : m = ideal vars S; o4 : Ideal of S</pre> </td></tr> <tr><td><pre>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</pre> </td></tr> <tr><td><pre>i6 : analyticSpread i o6 = 3</pre> </td></tr> <tr><td><pre>i7 : j=minimalReduction i 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</pre> </td></tr> <tr><td><pre>i8 : reductionNumber (i,j) o8 = 1</pre> </td></tr> </table> </div> </div> <div class="single"><h2>Caveat</h2> <div><div>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 <a href="_minimal__Reduction.html" title="minimal reduction of an ideal">minimalReduction</a> 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.</div> </div> </div> <div class="single"><h2>See also</h2> <ul><li><span><a href="_analytic__Spread.html" title="compute the analytic spread of a module or ideal">analyticSpread</a> -- compute the analytic spread of a module or ideal</span></li> <li><span><a href="_minimal__Reduction.html" title="minimal reduction of an ideal">minimalReduction</a> -- minimal reduction of an ideal</span></li> <li><span><a href="_which__Gm.html" title="largest Gm satisfied by an ideal">whichGm</a> -- largest Gm satisfied by an ideal</span></li> </ul> </div> <div class="waystouse"><h2>Ways to use <tt>reductionNumber</tt> :</h2> <ul><li>reductionNumber(Ideal,Ideal)</li> </ul> </div> </div> </body> </html>