Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 A B C D E F G H I Bib Ind
Top of Book Previous Chapter Next Chapter

I Overview of the homalg Package Source Code
I.1 Rings, Ring Maps, Matrices, Relations, and Generators
I.2 The Basic Objects
I.3 The Low Level Algorithms
I.4 The High Level Algorithms
I.5 Logical Implications for homalg Objects
I.6 The subpackage ResidueClassRingForHomalg
I.7 The homalgTable for GAP4 built-in rings

### I Overview of the homalg Package Source Code

The homalg package reached more than 50.000 lines of GAP4 code (excluding the documentation) before the first release was made. To keep this amount of code tracebale, the package was split in several files.

#### I.1 Rings, Ring Maps, Matrices, Relations, and Generators

Table: The homalg package files
Filename `.gd`/`.gi` | Content
`homalg` | definitions of the basic GAP4 categories
| and some tool functions (e.g. `homalgMode`)
`homalgTable` | dictionaries between homalg
| and the computing engines
`HomalgRing` | internal and external rings
`HomalgRingMap` | ring maps
`HomalgMatrix` | internal and external matrices
`HomalgRelations` | a set of relations
`SetsOfRelations` | several sets of relations
`HomalgGenerators` | a set of generators
`SetsOfGenerators` | several sets of generators

#### I.2 The Basic Objects

Table: The homalg package files (continued)
Filename `.gd`/`.gi` | Content
`HomalgModule` | modules and submodules allowing several
| presentations linked with transition matrices
`HomalgMap` | maps allowing several presentations
| of their source and target
`HomalgFiltration` | filtration of a module
`HomalgComplex` | (co)complexes of modules or of (co)complexes
`HomalgChainMap` | chain maps of (co)complexes
| consisting of maps or chain maps
`HomalgBicomplex` | bicomplexes of modules or of (co)complexes
`HomalgBigradedObject` | (differential) bigraded modules
`HomalgSpectralSequence` | homological and cohomological
| spectral sequences
`HomalgFunctor` | constructors of (multi) functors of
| module categories (yet over the same ring),
| left derivation of covariant functors,
| right derivation of contravariant functors,
| left satellites of covariant functors,
| right satellites of contravariant functors,
| and composition of functors
`HomalgDiagram` | Betti diagrams

#### I.3 The Low Level Algorithms

In the following CAS or CASystem mean computer algebra systems.

Table: The homalg package files (continued)
Filename `.gd`/`.gi` | Content
`Tools` | the elementary matrix operations that can be
| overwritten using the homalgTable
| (and hence delegable even to other CASystems)
`Service` | the three operations: basis, reduction, and syzygies;
| they can also be overwritten using the homalgTable
| (and hence delegable even to other CASystems)
`Basic` | higher level operations for matrices
| (cannot be overwritten using the homalgTable)

#### I.4 The High Level Algorithms

Table: The homalg package files (continued)
Filename `.gd`/`.gi` | Content
`Modules` | subfactors, resolutions, syzygy modules,
| parameterizations, intersections, annihilators
`Maps` | resolutions, (co)kernel sequences
`Complexes` | (co)homology, horse shoe lemma, connecting
| homomorphisms, Cartan-Eilenberg resolution
`ChainMaps` | (co)homology
`SpectralSequences` | Grothendieck bicomplexes associated to two
| composable functors, spectral sequences
| of bicomplexes, Grothendieck spectral sequences
`Filtrations` | spectral filtrations, i.e. filtrations induced
| by spectral sequences of bicomplexes,
| purity filtration
`ToolFunctors` | composition, addition, substraction,
| stacking, augmentation, and post dividing maps
`BasicFunctors` | cokernel, image, kernel, tensor product, Hom,
| Ext, Tor, RHom, LTensorProduct, HomHom, LHomHom,
| BaseChange (preliminary)
`OtherFunctors` | torsion submodule, torsion free factor,
| direct sum, pullback, pushout, Auslander dual

#### I.5 Logical Implications for homalg Objects

Table: The homalg package files (continued)
Filename `.gd`/`.gi` | Content
`LIRNG` | logical implications for rings
`LIMAP` | logical implications for ring maps
`LIMAT` | logical implications for matrices
`COLEM` | clever operations for lazy evaluated matrices
`LIMOD` | logical implications for modules
`LIMOR` | logical implications for morphisms
`LICPX` | logical implications for complexes

#### I.6 The subpackage ResidueClassRingForHomalg

Table: The homalg package files (continued)
Filename `.gd`/`.gi` | Content
`ResidueClassRingForHomalg` | some global variables
`ResidueClassRing` | residue class rings, their elements, and matrices,
| together with their constructors and operations
`ResidueClassRingTools` | the elementary matrix operations for matrices
| over residue class rings
`ResidueClassRingBasic` | the three operations: basis, reduction, and syzygies
| for matrices over residue class rings

#### I.7 The homalgTable for GAP4 built-in rings

For the purposes of homalg, the ring of integers is, at least up till now, the only ring which is properly supported in GAP4. The GAP4 built-in cababilities for polynomial rings (also univariate) and group rings do not statisfy the minimum requirements of homalg. The GAP4 package Gauss enables GAP to fullfil the homalg requirements for prime fields, and ℤ / p^n.

Table: The homalg package files (continued)
Filename .gi | Content
`Integers` | the homalgTable for the ring of integers

Top of Book Previous Chapter Next Chapter
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 A B C D E F G H I Bib Ind

generated by GAPDoc2HTML