Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 7ebd25ac536d248d499a3ce2acda963a > files > 4746

Macaulay2-1.3.1-8.fc15.i686.rpm

<?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>methods for normal forms and remainder -- calculate the normal form of ring elements and matrices</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="_min.html">next</a> | <a href="_methods.html">previous</a> | <a href="_min.html">forward</a> | <a href="_methods.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>methods for normal forms and remainder -- calculate the normal form of ring elements and matrices</h1>
<div><div><h2>Synopsis</h2>
<ul><li><div class="list"><dl class="element"><dt class="heading">Usage: </dt><dd class="value"><div><tt>f % I</tt></div>
</dd></dl>
</div>
</li>
<li>Inputs:<ul><li><span><tt>f</tt>, <span>a <a href="___Ring__Element.html">ring element</a></span>, or <span>a <a href="___Matrix.html">matrix</a></span></span></li>
<li><span><tt>I</tt>, <span>an <a href="___Ideal.html">ideal</a></span>, <span>a <a href="___Matrix.html">matrix</a></span>, or <span>a <a href="___Ring__Element.html">ring element</a></span></span></li>
</ul>
</li>
<li>Outputs:<ul><li><span>the normal form of <tt>f</tt> with respect to a Gröbner basis of I</span></li>
</ul>
</li>
</ul>
</div>
The result has the same type as <tt>f</tt>.  The normal form of a matrix is a matrix of the same shape whose columns have been reduced to normal form by the Gröbner basis of <tt>I</tt>.<p/>
To reduce <tt>f</tt> with respect to <tt>I</tt>, a (partial) Gröbner basis of <tt>I</tt> is computed, unless it has already been done, or unless <tt>I</tt> is a <a href="___Monomial__Ideal.html" title="the class of all monomial ideals handled by the engine">MonomialIdeal</a>.<table class="examples"><tr><td><pre>i1 : R = ZZ/1277[x,y];</pre>
</td></tr>
<tr><td><pre>i2 : I = ideal(x^3 - 2*x*y, x^2*y - 2*y^2 + x);

o2 : Ideal of R</pre>
</td></tr>
<tr><td><pre>i3 : (x^3 - 2*x) % I

o3 = -2x

o3 : R</pre>
</td></tr>
<tr><td><pre>i4 : (x^3) % I

o4 = 0

o4 : R</pre>
</td></tr>
<tr><td><pre>i5 : S = ZZ[x,y];</pre>
</td></tr>
<tr><td><pre>i6 : 144*x^2*y^2 % (7*x*y-2)

         2 2
o6 = - 3x y  + 12

o6 : S</pre>
</td></tr>
</table>
<p/>
If <tt>I</tt> is a matrix between free modules, then a Gröbner basis of <tt>I</tt> is a Gröbner basis of the submodule generated by the columns of the matrix.<table class="examples"><tr><td><pre>i7 : S = QQ[a..f]

o7 = S

o7 : PolynomialRing</pre>
</td></tr>
<tr><td><pre>i8 : J = ideal(a*b*c-d*e*f,a*b*d-c*e*f, a*c*e-b*d*f)

o8 = ideal (a*b*c - d*e*f, a*b*d - c*e*f, a*c*e - b*d*f)

o8 : Ideal of S</pre>
</td></tr>
<tr><td><pre>i9 : C = res J

      1      3      6      6      2
o9 = S  &lt;-- S  &lt;-- S  &lt;-- S  &lt;-- S  &lt;-- 0
                                         
     0      1      2      3      4      5

o9 : ChainComplex</pre>
</td></tr>
<tr><td><pre>i10 : F = syz transpose C.dd_4

o10 = {-8} | 0 0 a de  ce bd  bc  0   0   0  0   |
      {-8} | 0 b 0 df  cf 0   0   ad  ac  0  0   |
      {-8} | c 0 0 -ef 0  -bf 0   -ae 0   ab 0   |
      {-8} | d 0 0 0   ef 0   bf  0   ae  0  ab  |
      {-8} | 0 e 0 0   0  -df -cf 0   0   ad -ac |
      {-8} | 0 0 f 0   0  0   0   -de -ce bd -bc |

              6       11
o10 : Matrix S  &lt;--- S</pre>
</td></tr>
<tr><td><pre>i11 : G = transpose C.dd_3

o11 = {-8} | bd  -ce de  a 0  0  |
      {-8} | -ac -cf df  0 -b 0  |
      {-8} | -bf -ab -ef 0 0  -c |
      {-8} | -ae -ef -ab 0 0  -d |
      {-8} | -df -ad ac  0 -e 0  |
      {-8} | ce  -bd bc  f 0  0  |

              6       6
o11 : Matrix S  &lt;--- S</pre>
</td></tr>
</table>
Since <tt>C</tt> is a complex, we know that the image of <tt>G</tt> is contained in the image of <tt>F</tt>.<table class="examples"><tr><td><pre>i12 : G % F

o12 = 0

              6       6
o12 : Matrix S  &lt;--- S</pre>
</td></tr>
<tr><td><pre>i13 : F % G

o13 = {-8} | 0 0 0 de  ce bd  bc  0   bd  -ce de  |
      {-8} | 0 0 0 df  cf 0   0   ad  0   -cf df  |
      {-8} | 0 0 0 -ef 0  -bf 0   -ae -bf 0   -ef |
      {-8} | 0 0 0 0   ef 0   bf  0   0   -ef 0   |
      {-8} | 0 0 0 0   0  -df -cf 0   -df 0   0   |
      {-8} | 0 0 0 0   0  0   0   -de 0   0   0   |

              6       11
o13 : Matrix S  &lt;--- S</pre>
</td></tr>
</table>
The inclusion is strict since <tt>F % G != 0</tt> shows that the image of <tt>F</tt> is not contained in the image of <tt>G</tt>.<p/>
Normal forms work over quotient rings too.<table class="examples"><tr><td><pre>i14 : A = QQ[x,y,z]/(x^3-y^2-3)

o14 = A

o14 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i15 : I = ideal(x^4, y^4)

                2        4
o15 = ideal (x*y  + 3x, y )

o15 : Ideal of A</pre>
</td></tr>
<tr><td><pre>i16 : J = ideal(x^3*y^2, x^2*y^3)

              4     2   2 3
o16 = ideal (y  + 3y , x y )

o16 : Ideal of A</pre>
</td></tr>
<tr><td><pre>i17 : (gens J) % I

o17 = 0

              1       2
o17 : Matrix A  &lt;--- A</pre>
</td></tr>
</table>
<p/>
Here is an example involving rational functions.<table class="examples"><tr><td><pre>i18 : kk = frac(ZZ[a,b])

o18 = kk

o18 : FractionField</pre>
</td></tr>
<tr><td><pre>i19 : B = kk[x,y,z]

o19 = B

o19 : PolynomialRing</pre>
</td></tr>
<tr><td><pre>i20 : I = ideal(a*x^2-b*x-y-1, 1/b*y^2-z-1)

                2                1 2
o20 = ideal (a*x  - b*x - y - 1, -y  - z - 1)
                                 b

o20 : Ideal of B</pre>
</td></tr>
<tr><td><pre>i21 : gens gb I

o21 = | y2-bz-b x2-b/ax-1/ay-1/a |

              1       2
o21 : Matrix B  &lt;--- B</pre>
</td></tr>
<tr><td><pre>i22 : x^2*y^2 % I

       2              2
      b       b      b     b    b    b
o22 = --x*z + -y*z + --x + -y + -z + -
       a      a       a    a    a    a

o22 : B</pre>
</td></tr>
</table>
</div>
<div class="single"><h2>See also</h2>
<ul><li><span><a href="__pc.html" title="a binary operator, usually used for remainder and reduction">%</a> -- a binary operator, usually used for remainder and reduction</span></li>
<li><span><a href="___Gröbner_spbases.html" title="">Gröbner bases</a></span></li>
<li><span><a href="_generators.html" title="provide matrix or list of generators">generators</a> -- provide matrix or list of generators</span></li>
<li><span><a href="___Matrix_sp_pc_sp__Groebner__Basis.html" title="calculate the normal form of ring elements and matrices using a (partially computed) Gröbner basis">Matrix % GroebnerBasis</a> -- calculate the normal form of ring elements and matrices using a (partially computed) Gröbner basis</span></li>
</ul>
</div>
</div>
</body>
</html>