<?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>annihilator -- the annihilator ideal</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="_annihilator_spof_spa_spmodule.html">next</a> | <a href="_ancestors.html">previous</a> | <a href="_annihilator_spof_spa_spmodule.html">forward</a> | <a href="_ancestors.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>annihilator -- the annihilator ideal</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>annihilator M</tt></div> </dd></dl> </div> </li> <li><div class="single">Inputs:<ul><li><span><tt>M</tt>, a module, an ideal, a ring element, or a coherent sheaf</span></li> </ul> </div> </li> <li><div class="single">Outputs:<ul><li><span>the annihilator ideal, <tt>ann(M) = { f in R | fM = 0 }</tt> where <tt>R</tt> is the ring of <tt>M</tt></span></li> </ul> </div> </li> <li><div class="single"><a href="_using_spfunctions_spwith_spoptional_spinputs.html">Optional inputs</a>:<ul><li><span><tt>Strategy => </tt><span><span>default value Intersection</span>, <a href="___Quotient.html" title="value for an optional argument">Quotient</a> or <a href="___Intersection.html" title="value for an optional argument">Intersection</a></span></span></li> </ul> </div> </li> </ul> </div> <div class="single"><h2>Description</h2> <div>You may use <tt>ann</tt> as a synonym for <tt>annihilator</tt>.<p/> As an example, we compute the annihilator of the canonical module of the rational quartic curve.<table class="examples"><tr><td><pre>i1 : R = QQ[a..d];</pre> </td></tr> <tr><td><pre>i2 : J = monomialCurveIdeal(R,{1,3,4}) 3 2 2 2 3 2 o2 = ideal (b*c - a*d, c - b*d , a*c - b d, b - a c) o2 : Ideal of R</pre> </td></tr> <tr><td><pre>i3 : M = Ext^2(R^1/J, R) o3 = cokernel {-3} | c a 0 b 0 | {-3} | -d -b c 0 a | {-3} | 0 0 d c b | 3 o3 : R-module, quotient of R</pre> </td></tr> <tr><td><pre>i4 : annihilator M 3 2 2 2 3 2 o4 = ideal (b*c - a*d, c - b*d , a*c - b d, b - a c) o4 : Ideal of R</pre> </td></tr> </table> For another example, we compute the annihilator of an element in a quotient ring<table class="examples"><tr><td><pre>i5 : A = R/(a*b,a*c,a*d) o5 = A o5 : QuotientRing</pre> </td></tr> <tr><td><pre>i6 : ann a o6 = ideal (d, c, b) o6 : Ideal of A</pre> </td></tr> </table> Macaulay2 uses two algorithms to compute annihilators. The default version is to compute the annihilator of each generator of the module <tt>M</tt> and to intersect these two by two. Each annihilator is done using a submodule quotient. The other algorithm computes the annihilator in one large computation and is used if <tt>Strategy => Quotient</tt> is specified.<table class="examples"><tr><td><pre>i7 : annihilator(M, Strategy=>Quotient) 3 2 2 2 3 2 o7 = ideal (b*c - a*d, c - b*d , a*c - b d, b - a c) o7 : Ideal of R</pre> </td></tr> </table> </div> </div> <div class="single"><h2>See also</h2> <ul><li><span><a href="_quotient_lp__Ideal_cm__Ideal_rp.html" title="ideal or submodule quotient">quotient(Module,Module)</a> -- ideal or submodule quotient</span></li> <li><span><a href="___Ext.html" title="compute an Ext module">Ext</a> -- compute an Ext module</span></li> </ul> </div> <div class="waystouse"><h2>Ways to use <tt>annihilator</tt> :</h2> <ul><li>annihilator(CoherentSheaf)</li> <li>annihilator(Ideal)</li> <li>annihilator(Module)</li> <li>annihilator(RingElement)</li> </ul> </div> </div> </body> </html>