<h4>1.1 <span class="Heading">What is the role of the <strong class="pkg">homalg</strong> package in the <strong class="pkg">homalg</strong> project?</span></h4>
<p>The package <strong class="pkg">homalg</strong> is meant to be the first part of a continuously growing <span class="URL"><a href="http://www.opensource.org/">open source</a></span> multi volume book about <span class="URL"><a href="http://en.wikipedia.org/wiki/Homological_algebra">homological</a></span> and <span class="URL"><a href="http://en.wikipedia.org/wiki/Homotopical_algebra">homotopical algebra</a></span>. <strong class="pkg">homalg</strong> is an attempt to translate as much as possible of homological algebra, as can be found in books like <a href="chapBib_mj.html#biBce">[CE99]</a>, <a href="chapBib_mj.html#biBML">[ML63]</a>, <a href="chapBib_mj.html#biBHS">[HS97]</a>, <a href="chapBib_mj.html#biBrot">[Rot79]</a>, <a href="chapBib_mj.html#biBweihom">[Wei94]</a>, and <a href="chapBib_mj.html#biBGM">[GM03]</a>, into a language that a computer can directly understand. But just like the aforementioned books, <strong class="pkg">homalg</strong> should, to a great extent, be readable by a mathematician, even without deep programming knowledge. For the reasons mentioned in (--> Appendix <a href="chapB_mj.html#X7D2A5B127A68AB58"><span class="RefLink">Why GAP4?</span></a>) <strong class="pkg">GAP4</strong> was chosen as the language of <strong class="pkg">homalg</strong>.</p>
<p>The package <strong class="pkg">homalg</strong> is the foundational part of the project. It provides procedures to construct basic objects in homological algebra:</p>
<ul>
<li><p>filtrations of objects</p>
</li>
<li><p>complexes (of objects and of complexes)</p>
</li>
<li><p>chain morphisms</p>
</li>
<li><p>bicomplexes</p>
</li>
<li><p>bigraded (differential) objects</p>
</li>
<li><p>spectral sequences</p>
</li>
<li><p>functors</p>
</li>
</ul>
<p>Beside these so-called constructors <strong class="pkg">homalg</strong> provides <a href="../../../doc/tut/chap8_mj.html#X7DF5DBF9868B02C0"><span class="RefLink">operations</span></a> to perform computations with these objects. The list of operations includes:</p>
<ul>
<li><p>computation of subfactor objects</p>
</li>
<li><p>applying functors (like <code class="code">Ext</code>, <code class="code">Tor</code>, ...) to objects, morphisms, complexes and chain morphisms</p>
</li>
<li><p>derivation and composition of functors</p>
</li>
<li><p>horse shoe resolution of short exact sequences of objects</p>
</li>
<li><p>connecting homomorphisms and long exact sequences</p>
</li>
<li><p>Cartan-Eilenberg resolution of complexes</p>
</li>
<li><p>hyper (co)homology</p>
</li>
<li><p>spectral sequences of bicomplexes</p>
</li>
<li><p>the Grothendieck spectral sequences associated to two composable functors</p>
</li>
<li><p>test if an object is torsion-free, reflexive, projective, stably free, pure</p>
</li>
<li><p>determine the rank, grade, projective dimension, degree of torsion-freeness, and codegree of purity of an object</p>
</li>
</ul>
<p>Using the philosophy of <strong class="pkg">GAP4</strong>, one or more <a href="../../../doc/tut/chap8_mj.html#X7AEED9AB824CD4DA"><span class="RefLink">methods</span></a> are <a href="../../../doc/ref/chap78_mj.html#X795EE8257848B438"><span class="RefLink">installed</span></a> for each operation, depending on <a href="../../../doc/tut/chap8_mj.html#X81C430C37B2F16D8"><span class="RefLink">properties</span></a> and <a href="../../../doc/tut/chap8_mj.html#X7C701DBF7BAE649A"><span class="RefLink">attributes</span></a> of these objects. These properties and attributes can themselves be computed by methods installed for this purpose.</p>
<h5>1.1-3 <span class="Heading">Building upon the <strong class="pkg">homalg</strong> package</span></h5>
<p>As mentioned above, the package <strong class="pkg">homalg</strong> should only be the first and foundational part of the <strong class="pkg">homalg</strong> project. On the one hand it is designed independently of the details of the different matrix operations, which other packages are meant to provide. Typically, these packages (like <strong class="pkg">RingsForHomalg</strong>) heavily rely on existing, well tested, and optimized systems like <strong class="pkg">Singular</strong>, <strong class="pkg">Macaulay2</strong>, or <strong class="pkg">MAGMA</strong>. On the other hand other packages can be built upon or extend the <strong class="pkg">homalg</strong> package in different ways:</p>
</li>
<li><p>add methods to compute sheaf cohomology, local cohomology, Hochschild (co)homology, cyclic (co)homology...</p>
</li>
<li><p>provide algorithms for holonomic <span class="SimpleMath">\(D\)</span>-modules based on the restriction algorithm: localization, computing tensor products, <code class="code">Hom</code>, <code class="code">Ext</code>, de Rham cohomology, ...</p>
</li>
<li><p>support change of rings, Lyndon/Hochschild-Serre spectral sequence, base change spectral sequences, ...</p>
</li>
<li><p>support perturbation techniques, Serre and Eilenberg-Moore spectral sequence of simplicial spaces of infinite type, ...</p>
</li>
<li><p>...</p>
</li>
</ul>
<p>The project will remain open and contributions are highly welcome. The different packages will be attributed to their respective authors. The whole project will be attributed to the "<strong class="pkg">homalg</strong> team", i.e. the authors and contributers of all packages in the project.</p>
<p>Chapter <a href="chap2_mj.html#X855C716578E12A0B"><span class="RefLink">2</span></a> describes the installation of this package. The remaining chapters are each devoted to one of the <strong class="pkg">homalg</strong> objects (--> <a href="chap1_mj.html#X82A79A2A78AED00B"><span class="RefLink">1.1-2</span></a>) with its constructors, properties, attributes, and operations.</p>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.