Sophie

Sophie

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

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>resolution(Module) -- compute a projective resolution of a module</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="___Result.html">next</a> | <a href="_resolution_lp__Matrix_rp.html">previous</a> | <a href="___Result.html">forward</a> | <a href="_resolution_lp__Matrix_rp.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>resolution(Module) -- compute a projective resolution of a module</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>resolution M</tt><br/><tt>res M</tt></div>
</dd></dl>
</div>
</li>
<li><span>Function: <a href="_resolution.html" title="projective resolution">resolution</a></span></li>
<li><div class="single">Inputs:<ul><li><span><tt>M</tt>, <span>a <a href="___Module.html">module</a></span></span></li>
</ul>
</div>
</li>
<li><div class="single">Outputs:<ul><li><span><span>a <a href="___Chain__Complex.html">chain complex</a></span>, a free resolution 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><a href="_resolution_lp..._cm_sp__Degree__Limit_sp_eq_gt_sp..._rp.html">DegreeLimit => ...</a>,  -- compute only up to this degree</span></li>
<li><span><a href="_resolution_lp..._cm_sp__Hard__Degree__Limit_sp_eq_gt_sp..._rp.html">HardDegreeLimit => ...</a>, </span></li>
<li><span><a href="_resolution_lp..._cm_sp__Length__Limit_sp_eq_gt_sp..._rp.html">LengthLimit => ...</a>,  -- stop when the resolution reaches this length</span></li>
<li><span><a href="_resolution_lp..._cm_sp__Pair__Limit_sp_eq_gt_sp..._rp.html">PairLimit => ...</a>,  -- stop when this number of pairs has been handled</span></li>
<li><span><a href="_resolution_lp..._cm_sp__Sort__Strategy_sp_eq_gt_sp..._rp.html">SortStrategy => ...</a>, </span></li>
<li><span><a href="_resolution_lp..._cm_sp__Stop__Before__Computation_sp_eq_gt_sp..._rp.html">StopBeforeComputation => ...</a>,  -- whether to stop the computation immediately</span></li>
<li><span><a href="_resolution_lp..._cm_sp__Strategy_sp_eq_gt_sp..._rp.html">Strategy => ...</a>, </span></li>
<li><span><a href="_resolution_lp..._cm_sp__Syzygy__Limit_sp_eq_gt_sp..._rp.html">SyzygyLimit => ...</a>,  -- stop when this number of syzygies are obtained</span></li>
</ul>
</div>
</li>
</ul>
</div>
<div class="single"><h2>Description</h2>
<div>Warning: the resolution can have free modules with unexpected ranks when the module <tt>M</tt> is not homogeneous.  Here is an example where even the lengths of the resolutions differ.  We compute a resolution of the kernel of a ring map in two ways.  The ring <tt>R</tt> is constructed naively, but the ring <tt>S</tt> is constructed with variables of the right degrees so the ring map <tt>g</tt> will turn out to be homogeneous.<table class="examples"><tr><td><pre>i1 : k = ZZ/101; T = k[v..z];</pre>
</td></tr>
<tr><td><pre>i3 : m = matrix {{x,y,z,x^2*v,x*y*v,y^2*v,z*v,x*w,y^3*w,z*w}}

o3 = | x y z vx2 vxy vy2 vz wx wy3 wz |

             1       10
o3 : Matrix T  &lt;--- T</pre>
</td></tr>
<tr><td><pre>i4 : n = rank source m

o4 = 10</pre>
</td></tr>
<tr><td><pre>i5 : R = k[u_1 .. u_n]

o5 = R

o5 : PolynomialRing</pre>
</td></tr>
<tr><td><pre>i6 : S = k[u_1 .. u_n,Degrees => degrees source m]

o6 = S

o6 : PolynomialRing</pre>
</td></tr>
<tr><td><pre>i7 : f = map(T,R,m)

                          2            2               3
o7 = map(T,R,{x, y, z, v*x , v*x*y, v*y , v*z, w*x, w*y , w*z})

o7 : RingMap T &lt;--- R</pre>
</td></tr>
<tr><td><pre>i8 : g = map(T,S,m)

                          2            2               3
o8 = map(T,S,{x, y, z, v*x , v*x*y, v*y , v*z, w*x, w*y , w*z})

o8 : RingMap T &lt;--- S</pre>
</td></tr>
<tr><td><pre>i9 : res ker f

      1      17      57      76      46      12      1
o9 = R  &lt;-- R   &lt;-- R   &lt;-- R   &lt;-- R   &lt;-- R   &lt;-- R  &lt;-- 0
                                                            
     0      1       2       3       4       5       6      7

o9 : ChainComplex</pre>
</td></tr>
<tr><td><pre>i10 : res ker g

       1      14      35      35      15      2
o10 = S  &lt;-- S   &lt;-- S   &lt;-- S   &lt;-- S   &lt;-- S  &lt;-- 0
                                                     
      0      1       2       3       4       5      6

o10 : ChainComplex</pre>
</td></tr>
<tr><td><pre>i11 : isHomogeneous f

o11 = false</pre>
</td></tr>
<tr><td><pre>i12 : isHomogeneous g

o12 = true</pre>
</td></tr>
</table>
<table class="examples"><tr><td><pre>i13 : R = ZZ/32003[a..d]/(a^2+b^2+c^2+d^2);</pre>
</td></tr>
<tr><td><pre>i14 : M = coker vars R

o14 = cokernel | a b c d |

                             1
o14 : R-module, quotient of R</pre>
</td></tr>
<tr><td><pre>i15 : C = resolution(M, LengthLimit=>6)

       1      4      7      8      8      8      8
o15 = R  &lt;-- R  &lt;-- R  &lt;-- R  &lt;-- R  &lt;-- R  &lt;-- R
                                                 
      0      1      2      3      4      5      6

o15 : ChainComplex</pre>
</td></tr>
</table>
For an overview of resolutions, in order of increasing detail, see<ul><li><span><a href="___Hilbert_spfunctions_spand_spfree_spresolutions.html" title="including degree and betti numbers">Hilbert functions and free resolutions</a></span></li>
<li><span><a href="_free_spresolutions_spof_spmodules.html" title="">free resolutions of modules</a></span></li>
<li><span><a href="_computing_spresolutions.html" title="">computing resolutions</a> -- most detailed</span></li>
</ul>
Some useful related functions<ul><li><span><a href="_betti_lp__Graded__Module_rp.html" title="display of degrees in a graded module">betti(GradedModule)</a> -- display of degrees in a graded module</span></li>
<li><span><a href="_status.html" title="status of a resolution computation">status(Resolution)</a> -- status of a resolution computation</span></li>
</ul>
</div>
</div>
</div>
</body>
</html>