Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 A B C D E F Bib Ind

### 1 Introduction

#### 1.1 What is the role of the homalg package in the homalg project?

##### 1.1-1 Philosophy

The package homalg is meant to be the first part of a continuously growing open source multi volume book about homological and homotopical algebra. homalg is an attempt to translate as much as possible of homological algebra, as can be found in books like [CE99], [ML63], [HS97], [Rot79], [Wei94], and [GM03], into a language that a computer can directly understand. But just like the aforementioned books, homalg should, to a great extent, be readable by a mathematician, even without deep programming knowledge. For the reasons mentioned in (--> Appendix Why GAP4?) GAP4 was chosen as the language of homalg.

##### 1.1-2 homalg provides ...

The package homalg is the foundational part of the project. It provides procedures to construct basic objects in homological algebra:

• filtrations of objects

• complexes (of objects and of complexes)

• chain morphisms

• bicomplexes

• spectral sequences

• functors

Beside these so-called constructors homalg provides operations to perform computations with these objects. The list of operations includes:

• computation of subfactor objects

• applying functors (like Ext, Tor, ...) to objects, morphisms, complexes and chain morphisms

• derivation and composition of functors

• horse shoe resolution of short exact sequences of objects

• connecting homomorphisms and long exact sequences

• Cartan-Eilenberg resolution of complexes

• hyper (co)homology

• spectral sequences of bicomplexes

• the Grothendieck spectral sequences associated to two composable functors

• test if an object is torsion-free, reflexive, projective, stably free, pure

• determine the rank, grade, projective dimension, degree of torsion-freeness, and codegree of purity of an object

Using the philosophy of GAP4, one or more methods are installed for each operation, depending on properties and attributes of these objects. These properties and attributes can themselves be computed by methods installed for this purpose.

##### 1.1-3 Building upon the homalg package

As mentioned above, the package homalg should only be the first and foundational part of the homalg 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 RingsForHomalg) heavily rely on existing, well tested, and optimized systems like Singular, Macaulay2, or MAGMA. On the other hand other packages can be built upon or extend the homalg package in different ways:

• add constructors (sheaves, schemes, simplicial sets, ...)

• add methods for basic operation (Yoneda products, Massey products, Steenrod operations, ...)

• add methods to compute sheaf cohomology, local cohomology, Hochschild (co)homology, cyclic (co)homology...

• provide algorithms for holonomic $$D$$-modules based on the restriction algorithm: localization, computing tensor products, Hom, Ext, de Rham cohomology, ...

• support change of rings, Lyndon/Hochschild-Serre spectral sequence, base change spectral sequences, ...

• support perturbation techniques, Serre and Eilenberg-Moore spectral sequence of simplicial spaces of infinite type, ...

• ...

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 "homalg team", i.e. the authors and contributers of all packages in the project.

#### 1.2 This manual

Chapter 2 describes the installation of this package. The remaining chapters are each devoted to one of the homalg objects (--> 1.1-2) with its constructors, properties, attributes, and operations.

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 A B C D E F Bib Ind

generated by GAPDoc2HTML