<?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>directSum -- direct sum of modules or maps</title> <link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/> </head> <body> <table class="buttons"> <tr> <td><div><a href="_disassemble.html">next</a> | <a href="_dim_lp__Ring_rp.html">previous</a> | <a href="_disassemble.html">forward</a> | <a href="_dim_lp__Ring_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>directSum -- direct sum of modules or maps</h1> <div class="single"><h2>Description</h2> <div><tt>directSum(M,N,...)</tt> -- forms the direct sum of matrices or modules.<p/> The components can be recovered later with <a href="_components.html" title="list the components of a direct sum">components</a>.<p/> Projection and inclusion maps for direct sums:<ul><li><span><a href="___Module_sp^_sp__Array.html" title="projection onto summand">Module ^ Array</a> -- projection onto summand</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="___Matrix_sp^_sp__List.html" title="select rows">Matrix ^ List</a> -- select rows</span></li> <li><span><a href="___Matrix_sp_us_sp__List.html" title="select columns">Matrix _ List</a> -- select columns</span></li> </ul> <p/> It sometimes happens that the user has indices for the components of a direct sum preferable to the usual consecutive small integers. In this case the preferred indices can be specified with code like <tt>directSum(a=>M,b=>N,...)</tt>, as in the following example.<table class="examples"><tr><td><pre>i1 : F = directSum(a=>ZZ^1, b=>ZZ^2, c=>ZZ^3) 6 o1 = ZZ o1 : ZZ-module, free</pre> </td></tr> <tr><td><pre>i2 : F_[b] o2 = | 0 0 | | 1 0 | | 0 1 | | 0 0 | | 0 0 | | 0 0 | 6 2 o2 : Matrix ZZ <--- ZZ</pre> </td></tr> <tr><td><pre>i3 : F^[c] o3 = | 0 0 0 1 0 0 | | 0 0 0 0 1 0 | | 0 0 0 0 0 1 | 3 6 o3 : Matrix ZZ <--- ZZ</pre> </td></tr> </table> Similar syntax works with <a href="__pl_pl.html" title="a binary operator, usually used for direct sum">++</a>.<table class="examples"><tr><td><pre>i4 : F = (a => ZZ^1) ++ (b => ZZ^2) 3 o4 = ZZ o4 : ZZ-module, free</pre> </td></tr> <tr><td><pre>i5 : F_[b] o5 = | 0 0 | | 1 0 | | 0 1 | 3 2 o5 : Matrix ZZ <--- ZZ</pre> </td></tr> </table> </div> </div> <div class="single"><h2>See also</h2> <ul><li><span><a href="__pl_pl.html" title="a binary operator, usually used for direct sum">++</a> -- a binary operator, usually used for direct sum</span></li> <li><span><a href="_components.html" title="list the components of a direct sum">components</a> -- list the components of a direct sum</span></li> <li><span><a href="_index__Components.html" title="specify keys for components of a direct sum">indexComponents</a> -- specify keys for components of a direct sum</span></li> <li><span><a href="_indices.html" title="indices of a polynomial; also components for a direct sum">indices</a> -- indices of a polynomial; also components for a direct sum</span></li> </ul> </div> <div class="waystouse"><h2>Ways to use <tt>directSum</tt> :</h2> <ul><li>directSum(ChainComplex)</li> <li>directSum(GradedModule)</li> <li>directSum(List)</li> <li>directSum(Matrix)</li> <li>directSum(Module)</li> <li>directSum(Option)</li> <li>directSum(Sequence)</li> </ul> </div> </div> </body> </html>