Sophie

Sophie

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

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>quotient rings</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="_manipulating_sppolynomials.html">next</a> | <a href="_graded_spand_spmultigraded_sppolynomial_springs.html">previous</a> | <a href="_manipulating_sppolynomials.html">forward</a> | <a href="_graded_spand_spmultigraded_sppolynomial_springs.html">backward</a> | <a href="_rings.html">up</a> | <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>
<div><a href="index.html" title="">Macaulay2Doc</a> > <a href="_rings.html" title="">rings</a> > <a href="_quotient_springs.html" title="">quotient rings</a></div>
<hr/>
<div><h1>quotient rings</h1>
<div>The usual notation is used to form quotient rings.  For quotients of polynomial rings, a Gröbner basis is computed and used to reduce ring elements to normal form after arithmetic operations.<table class="examples"><tr><td><pre>i1 : R = ZZ/11

o1 = R

o1 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i2 : 6_R + 7_R

o2 = 2

o2 : R</pre>
</td></tr>
</table>
<table class="examples"><tr><td><pre>i3 : S = QQ[x,y,z]/(x^2-y, y^3-z)

o3 = S

o3 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i4 : {1,x,x^2,x^3,x^4,x^5,x^6,x^7,x^8}

                     2     2
o4 = {1, x, y, x*y, y , x*y , z, x*z, y*z}

o4 : List</pre>
</td></tr>
</table>
In the example above you might have wondered whether typing <tt>x</tt> would give an element of <tt>S</tt> or an element of <tt>QQ[x,y,z]</tt>.  Our convention is that typing <tt>x</tt> gives an element of the last ring that has been assigned to a global variable.  Here is another example.<table class="examples"><tr><td><pre>i5 : T = ZZ/101[r,s,t]

o5 = T

o5 : PolynomialRing</pre>
</td></tr>
<tr><td><pre>i6 : T/(r^3+s^3+t^3)

           T
o6 = ------------
      3    3    3
     r  + s  + t

o6 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i7 : r^3+s^3+t^3

      3    3    3
o7 = r  + s  + t

o7 : T</pre>
</td></tr>
</table>
Notice that this time, the variables end up in the ring <tt>T</tt>, because we didn't assign the quotient ring to a global variable.  The command <a href="_use.html" title="install or activate object">use</a> would install the variables for us, or we could assign the ring to a global variable.<table class="examples"><tr><td><pre>i8 : U = ooo

o8 = U

o8 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i9 : r^3+s^3+t^3

o9 = 0

o9 : U</pre>
</td></tr>
</table>
The functions <a href="_lift.html" title="lift to another ring">lift</a> and <a href="_substitute.html" title="substituting values for variables">substitute</a> can be used to transfer elements between the polynomial ring and its quotient ring.<table class="examples"><tr><td><pre>i10 : lift(U_"r",T)

o10 = r

o10 : T</pre>
</td></tr>
<tr><td><pre>i11 : substitute(T_"r",U)

o11 = r

o11 : U</pre>
</td></tr>
</table>
A random element of degree <tt>n</tt> can be obtained with <a href="_random.html" title="get a random element">random</a>.<table class="examples"><tr><td><pre>i12 : random(2,S)

      1      1 2   4            7 2
o12 = -x*y + -y  + -x*z + y*z + -z
      4      2     5            6

o12 : S</pre>
</td></tr>
</table>
In a program we can tell whether a ring is a quotient ring.<table class="examples"><tr><td><pre>i13 : isQuotientRing ZZ

o13 = false</pre>
</td></tr>
<tr><td><pre>i14 : isQuotientRing S

o14 = true</pre>
</td></tr>
</table>
We can recover the ring of which a given ring is a quotient.<table class="examples"><tr><td><pre>i15 : ambient S

o15 = QQ[x, y, z]

o15 : PolynomialRing</pre>
</td></tr>
</table>
We can also recover the coefficient ring, as we could for the original polynomial ring.<table class="examples"><tr><td><pre>i16 : coefficientRing S

o16 = QQ

o16 : Ring</pre>
</td></tr>
</table>
Here's how we can tell whether the defining relations of a quotient ring were homogeneous.<table class="examples"><tr><td><pre>i17 : isHomogeneous S

o17 = false</pre>
</td></tr>
<tr><td><pre>i18 : isHomogeneous U

o18 = true</pre>
</td></tr>
</table>
We can obtain the characteristic of a ring with <a href="_char.html" title="computes the characteristic of the ring or field">char</a>.<table class="examples"><tr><td><pre>i19 : char (ZZ/11)

o19 = 11</pre>
</td></tr>
<tr><td><pre>i20 : char S

o20 = 0</pre>
</td></tr>
<tr><td><pre>i21 : char U

o21 = 101</pre>
</td></tr>
</table>
The presentation of the quotient ring can be obtained as a matrix with <a href="_presentation.html" title="presentation of a module or ring">presentation</a>.<table class="examples"><tr><td><pre>i22 : presentation S

o22 = | x2-y y3-z |

                          1                   2
o22 : Matrix (QQ[x, y, z])  &lt;--- (QQ[x, y, z])</pre>
</td></tr>
</table>
If a quotient ring has redundant defining relations, a new ring can be made in which these are eliminated with <a href="_trim.html" title="minimize generators and relations">trim</a>.<table class="examples"><tr><td><pre>i23 : R = ZZ/101[x,y,z]/(x-y,y-z,z-x)

o23 = R

o23 : QuotientRing</pre>
</td></tr>
<tr><td><pre>i24 : trim R

        ZZ
       ---[x, y, z]
       101
o24 = --------------
      (y - z, x - z)

o24 : QuotientRing</pre>
</td></tr>
</table>
For more information see <a href="___Quotient__Ring.html" title="the class of all quotient rings">QuotientRing</a>.</div>
</div>
</body>
</html>