<?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>Module ^ Array -- projection onto summand</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="___Module_sp^_sp__List.html">next</a> | <a href="___Module_sp_sl_sp__Module.html">previous</a> | <a href="___Module_sp^_sp__List.html">forward</a> | <a href="___Module_sp_sl_sp__Module.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>Module ^ Array -- projection onto summand</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>M^[i,j,...,k]</tt></div> </dd></dl> </div> </li> <li><span>Operator: <a href="_^.html" title="a binary operator, usually used for powers">^</a></span></li> <li><div class="single">Inputs:<ul><li><span><tt>M</tt>, <span>a <a href="___Module.html">module</a></span>, or <span>a <a href="___Chain__Complex.html">chain complex</a></span></span></li> <li><span><tt>[i,j,...,k]</tt>, an array of indices</span></li> </ul> </div> </li> <li><div class="single">Outputs:<ul><li><span><span>a <a href="___Matrix.html">matrix</a></span>, or <span>a <a href="___Chain__Complex__Map.html">chain complex map</a></span></span></li> </ul> </div> </li> </ul> </div> <div class="single"><h2>Description</h2> <div><p/> The module <tt>M</tt> should be a direct sum, and the result is the map obtained by projection onto the sum of the components numbered or named <tt>i, j, ..., k</tt>. Free modules are regarded as direct sums of modules.<p/> <table class="examples"><tr><td><pre>i1 : M = ZZ^2 ++ ZZ^3 5 o1 = ZZ o1 : ZZ-module, free</pre> </td></tr> <tr><td><pre>i2 : M^[0] o2 = | 1 0 0 0 0 | | 0 1 0 0 0 | 2 5 o2 : Matrix ZZ <--- ZZ</pre> </td></tr> <tr><td><pre>i3 : M^[1] o3 = | 0 0 1 0 0 | | 0 0 0 1 0 | | 0 0 0 0 1 | 3 5 o3 : Matrix ZZ <--- ZZ</pre> </td></tr> <tr><td><pre>i4 : M^[1,0] o4 = | 0 0 1 0 0 | | 0 0 0 1 0 | | 0 0 0 0 1 | | 1 0 0 0 0 | | 0 1 0 0 0 | 5 5 o4 : Matrix ZZ <--- ZZ</pre> </td></tr> </table> <p/> If the components have been given names (see <a href="_direct__Sum.html" title="direct sum of modules or maps">directSum</a>), use those instead.<table class="examples"><tr><td><pre>i5 : R = QQ[a..d];</pre> </td></tr> <tr><td><pre>i6 : M = (a => image vars R) ++ (b => coker vars R) o6 = subquotient (| a b c d 0 |, | 0 0 0 0 |) | 0 0 0 0 1 | | a b c d | 2 o6 : R-module, subquotient of R</pre> </td></tr> <tr><td><pre>i7 : M^[a] o7 = {1} | 1 0 0 0 0 | {1} | 0 1 0 0 0 | {1} | 0 0 1 0 0 | {1} | 0 0 0 1 0 | o7 : Matrix</pre> </td></tr> <tr><td><pre>i8 : isWellDefined oo o8 = true</pre> </td></tr> <tr><td><pre>i9 : M^[b] o9 = | 0 0 0 0 1 | o9 : Matrix</pre> </td></tr> <tr><td><pre>i10 : isWellDefined oo o10 = true</pre> </td></tr> <tr><td><pre>i11 : isWellDefined(M^{2}) o11 = false</pre> </td></tr> </table> <p/> This works the same way for chain complexes.<table class="examples"><tr><td><pre>i12 : C = res coker vars R 1 4 6 4 1 o12 = R <-- R <-- R <-- R <-- R <-- 0 0 1 2 3 4 5 o12 : ChainComplex</pre> </td></tr> <tr><td><pre>i13 : D = (a=>C) ++ (b=>C) 2 8 12 8 2 o13 = R <-- R <-- R <-- R <-- R <-- 0 0 1 2 3 4 5 o13 : ChainComplex</pre> </td></tr> <tr><td><pre>i14 : D^[a] 1 2 o14 = 0 : R <----------- R : 0 | 1 0 | 4 8 1 : R <--------------------------- R : 1 {1} | 1 0 0 0 0 0 0 0 | {1} | 0 1 0 0 0 0 0 0 | {1} | 0 0 1 0 0 0 0 0 | {1} | 0 0 0 1 0 0 0 0 | 6 12 2 : R <----------------------------------- R : 2 {2} | 1 0 0 0 0 0 0 0 0 0 0 0 | {2} | 0 1 0 0 0 0 0 0 0 0 0 0 | {2} | 0 0 1 0 0 0 0 0 0 0 0 0 | {2} | 0 0 0 1 0 0 0 0 0 0 0 0 | {2} | 0 0 0 0 1 0 0 0 0 0 0 0 | {2} | 0 0 0 0 0 1 0 0 0 0 0 0 | 4 8 3 : R <--------------------------- R : 3 {3} | 1 0 0 0 0 0 0 0 | {3} | 0 1 0 0 0 0 0 0 | {3} | 0 0 1 0 0 0 0 0 | {3} | 0 0 0 1 0 0 0 0 | 1 2 4 : R <--------------- R : 4 {4} | 1 0 | 5 : 0 <----- 0 : 5 0 o14 : ChainComplexMap</pre> </td></tr> </table> </div> </div> <div class="single"><h2>See also</h2> <ul><li><span><a href="_direct__Sum.html" title="direct sum of modules or maps">directSum</a> -- direct sum of modules or maps</span></li> <li><span><a href="___Matrix_sp^_sp__Array.html" title="component of map corresponding to summand of target">Matrix ^ Array</a> -- component of map corresponding to summand of target</span></li> <li><span><a href="___Module_sp_us_sp__Array.html" title="inclusion from summand">Module _ Array</a> -- inclusion from summand</span></li> <li><span><a href="___Module_sp^_sp__List.html" title="projection onto summand">Module ^ List</a> -- projection onto summand</span></li> </ul> </div> </div> </body> </html>