# Homological algebra

Homological algebra is the branch of mathematics that studies homology in a general algebraic setting. It is a relatively young discipline, whose origins can be traced to investigations in combinatorial topology (a precursor to algebraic topology) and abstract algebra (theory of modules and syzygies) at the end of the 19th century, chiefly by Henri Poincaré and David Hilbert.
Homological algebra is the study of homological functors and the intricate algebraic structures that they entail; its development was closely intertwined with the emergence of category theory. A central concept is that of chain complexes, which can be studied through their homology and cohomology.
Homological algebra affords the means to extract information contained in these complexes and present it in the form of homological invariants of rings, modules, topological spaces, and other "tangible" mathematical objects. A spectral sequence is a powerful tool for this.
It has played an enormous role in algebraic topology. Its influence has gradually expanded and presently includes commutative algebra, algebraic geometry, algebraic number theory, representation theory, mathematical physics, operator algebras, complex analysis, and the theory of partial differential equations. K-theory is an independent discipline which draws upon methods of homological algebra, as does the noncommutative geometry of Alain Connes.

## History

Homological algebra began to be studied in its most basic form in the late 19th century as a branch of topology and in the 1940s became an independent subject with the study of objects such as the ext functor and the tor functor, among others.

## Chain complexes and homology

The notion of chain complex is central in homological algebra. An abstract chain complex is a sequence $(C_{\bullet },d_{\bullet })$ of abelian groups and group homomorphisms, with the property that the composition of any two consecutive maps is zero:
    $C_{\bullet }:\cdots \longrightarrow C_{n+1}{\stackrel {d_{n+1}}{\longrightarrow }}C_{n}{\stackrel {d_{n}}{\longrightarrow }}C_{n-1}{\stackrel {d_{n-1}}{\longrightarrow }}\cdots ,\quad d_{n}\circ d_{n+1}=0.$
The elements of C$_n$ are called n-chains and the homomorphisms d$_n$ are called the boundary maps or differentials. The chain groups C$_n$ may be endowed with extra structure; for example, they may be vector spaces or modules over a fixed ring R. The differentials must preserve the extra structure if it exists; for example, they must be linear maps or homomorphisms of R-modules. For notational convenience, restrict attention to abelian groups (more correctly, to the category Ab of abelian groups); a celebrated theorem by Barry Mitchell implies the results will generalize to any abelian category. Every chain complex defines two further sequences of abelian groups, the cycles Z$_n$ = Ker d$_n$ and the boundaries B$_n$ = Im d$_{n+1}$, where Ker d and Im d denote the kernel and the image of d. Since the composition of two consecutive boundary maps is zero, these groups are embedded into each other as
    $B_{n}\subseteq Z_{n}\subseteq C_{n}.$
Subgroups of abelian groups are automatically normal; therefore we can define the nth homology group H$_n$(C) as the factor group of the n-cycles by the n-boundaries,
    $H_{n}(C)=Z_{n}/B_{n}=\operatorname {Ker} \,d_{n}/\operatorname {Im} \,d_{n+1}.$
A chain complex is called acyclic or an exact sequence if all its homology groups are zero.
Chain complexes arise in abundance in algebra and algebraic topology. For example, if X is a topological space then the singular chains C$_n$(X) are formal linear combinations of continuous maps from the standard n-simplex into X; if K is a simplicial complex then the simplicial chains C$_n$(K) are formal linear combinations of the n-simplices of K; if A = F/R is a presentation of an abelian group A by generators and relations, where F is a free abelian group spanned by the generators and R is the subgroup of relations, then letting C$_1$(A) = R, C$_0$(A) = F, and C$_n$(A) = 0 for all other n defines a sequence of abelian groups. In all these cases, there are natural differentials d$_n$ making C$_n$ into a chain complex, whose homology reflects the structure of the topological space X, the simplicial complex K, or the abelian group A. In the case of topological spaces, we arrive at the notion of singular homology, which plays a fundamental role in investigating the properties of such spaces, for example, manifolds.
On a philosophical level, homological algebra teaches us that certain chain complexes associated with algebraic or geometric objects (topological spaces, simplicial complexes, R-modules) contain a lot of valuable algebraic information about them, with the homology being only the most readily available part. On a technical level, homological algebra provides the tools for manipulating complexes and extracting this information. Here are two general illustrations.
* Two objects X and Y are connected by a map f between them. Homological algebra studies the relation, induced by the map f, between chain complexes associated with X and Y and their homology. This is generalized to the case of several objects and maps connecting them. Phrased in the language of category theory, homological algebra studies the functorial properties of various constructions of chain complexes and of the homology of these complexes.
* An object X admits multiple descriptions (for example, as a topological space and as a simplicial complex) or the complex $C_{\bullet }(X)$ is constructed using some 'presentation' of X, which involves non-canonical choices. It is important to know the effect of change in the description of X on chain complexes associated with X. Typically, the complex and its homology $H_{\bullet }(C)$ are functorial with respect to the presentation; and the homology (although not the complex itself) is actually independent of the presentation chosen, thus it is an invariant of X.

## Standard tools
### Exact sequences

In the context of group theory, a sequence
    $G_{0}\;{\xrightarrow {f_{1}}}\;G_{1}\;{\xrightarrow {f_{2}}}\;G_{2}\;{\xrightarrow {f_{3}}}\;\cdots \;{\xrightarrow {f_{n}}}\;G_{n}$
of groups and group homomorphisms is called exact if the image of each homomorphism is equal to the kernel of the next:
    $\mathrm {im} (f_{k})=\mathrm {ker} (f_{k+1}).\!$
Note that the sequence of groups and homomorphisms may be either finite or infinite.
A similar definition can be made for certain other algebraic structures. For example, one could have an exact sequence of vector spaces and linear maps, or of modules and module homomorphisms. More generally, the notion of an exact sequence makes sense in any category with kernels and cokernels.

#### Short

The most common type of exact sequence is the short exact sequence. This is an exact sequence of the form
    $A\;{\overset {f}{\hookrightarrow }}\;B\;{\overset {g}{\twoheadrightarrow }}\;C$
where ƒ is a monomorphism and g is an epimorphism. In this case, A is a subobject of B, and the corresponding quotient is isomorphic to C:
    $C\cong B/f(A).$
(where f(A) = im(f)).
A short exact sequence of abelian groups may also be written as an exact sequence with five terms:
    $0\;{\xrightarrow}\;A\;{\xrightarrow {f}}\;B\;{\xrightarrow {g}}\;C\;{\xrightarrow}\;0$
where 0 represents the zero object, such as the trivial group or a zero-dimensional vector space. The placement of the 0's forces ƒ to be a monomorphism and g to be an epimorphism (see below).

#### Long

A long exact sequence is an exact sequence indexed by the natural numbers.

### Five lemma

Consider the following commutative diagram in any abelian category (such as the category of abelian groups or the category of vector spaces over a given field) or in the category of groups.
The five lemma states that, if the rows are exact, m and p are isomorphisms, l is an epimorphism, and q is a monomorphism, then n is also an isomorphism.

### Snake lemma

In an abelian category (such as the category of abelian groups or the category of vector spaces over a given field), consider a commutative diagram:
where the rows are exact sequences and 0 is the zero object. Then there is an exact sequence relating the kernels and cokernels of a, b, and c:
    $\ker a\to \ker b\to \ker c{\overset {d}{\to }}\operatorname {coker} a\to \operatorname {coker} b\to \operatorname {coker} c$
Furthermore, if the morphism f is a monomorphism, then so is the morphism ker a → ker b, and if g' is an epimorphism, then so is coker b → coker c.

### Abelian categories

In mathematics, an abelian category is a category in which morphisms and objects can be added and in which kernels and cokernels exist and have desirable properties. The motivating prototype example of an abelian category is the category of abelian groups, Ab. The theory originated in a tentative attempt to unify several cohomology theories by Alexander Grothendieck. Abelian categories are very stable categories, for example they are regular and they satisfy the snake lemma. The class of Abelian categories is closed under several categorical constructions, for example, the category of chain complexes of an Abelian category, or the category of functors from a small category to an Abelian category are Abelian as well. These stability properties make them inevitable in homological algebra and beyond; the theory has major applications in algebraic geometry, cohomology and pure category theory. Abelian categories are named after Niels Henrik Abel.
More concretely, a category is abelian if
* it has a zero object,
* it has all binary products and binary coproducts, and
* it has all kernels and cokernels.
* all monomorphisms and epimorphisms are normal.

### Derived functor

Suppose we are given a covariant left exact functor F : A → B between two abelian categories A and B. If 0 → A → B → C → 0 is a short exact sequence in A, then applying F yields the exact sequence 0 → F(A) → F(B) → F(C) and one could ask how to continue this sequence to the right to form a long exact sequence. Strictly speaking, this question is ill-posed, since there are always numerous different ways to continue a given exact sequence to the right. But it turns out that (if A is "nice" enough) there is one canonical way of doing so, given by the right derived functors of F. For every i≥1, there is a functor R$^i$F: A → B, and the above sequence continues like so: 0 → F(A) → F(B) → F(C) → R$^1$F(A) → R$^1$F(B) → R$^1$F(C) → R$^2$F(A) → R$^2$F(B) → ... . From this we see that F is an exact functor if and only if R$^1$F = 0; so in a sense the right derived functors of F measure "how far" F is from being exact.

### Ext functor

Let R be a ring and let Mod$_R$ be the category of modules over R. Let B be in Mod$_R$ and set T(B) = Hom$_R$(A,B), for fixed A in Mod$_R$. This is a left exact functor and thus has right derived functors R$^n$T. The Ext functor is defined by
    $\operatorname {Ext} _{R}^{n}(A,B)=(R^{n}T)(B).$
This can be calculated by taking any injective resolution
    $0\rightarrow B\rightarrow I^{0}\rightarrow I^{1}\rightarrow \cdots ,$
and computing
    $0\rightarrow \operatorname {Hom} _{R}(A,I^{0})\rightarrow \operatorname {Hom} _{R}(A,I^{1})\rightarrow \cdots .$
Then (R$^n$T)(B) is the cohomology of this complex. Note that Hom$_R$(A,B) is excluded from the complex.
An alternative definition is given using the functor G(A)=Hom$_R$(A,B). For a fixed module B, this is a contravariant left exact functor, and thus we also have right derived functors R$^n$G, and can define
    $\operatorname {Ext} _{R}^{n}(A,B)=(R^{n}G)(A).$
This can be calculated by choosing any projective resolution
    $\dots \rightarrow P^{1}\rightarrow P^{0}\rightarrow A\rightarrow 0,$
and proceeding dually by computing
    $0\rightarrow \operatorname {Hom} _{R}(P^{0},B)\rightarrow \operatorname {Hom} _{R}(P^{1},B)\rightarrow \cdots .$
Then (R$^n$G)(A) is the cohomology of this complex. Again note that Hom$_R$(A,B) is excluded.
These two constructions turn out to yield isomorphic results, and so both may be used to calculate the Ext functor.

### Tor functor

Suppose R is a ring, and denoted by R-Mod the category of left R-modules and by Mod-R the category of right R-modules (if R is commutative, the two categories coincide). Fix a module B in R-Mod. For A in Mod-R, set T(A) = A⊗$_R$B. Then T is a right exact functor from Mod-R to the category of abelian groups Ab (in the case when R is commutative, it is a right exact functor from Mod-R to Mod-R) and its left derived functors L$_n$T are defined. We set
    $\mathrm {Tor} _{n}^{R}(A,B)=(L_{n}T)(A)$
i.e., we take a projective resolution
    $\cdots \rightarrow P_{2}\rightarrow P_{1}\rightarrow P_{0}\rightarrow A\rightarrow 0$
then remove the A term and tensor the projective resolution with B to get the complex
    $\cdots \rightarrow P_{2}\otimes _{R}B\rightarrow P_{1}\otimes _{R}B\rightarrow P_{0}\otimes _{R}B\rightarrow 0$
(note that A⊗$_R$B does not appear and the last arrow is just the zero map) and take the homology of this complex.

### Spectral sequence

Fix an abelian category, such as a category of modules over a ring. A spectral sequence is a choice of a nonnegative integer r$_0$ and a collection of three sequences:
* For all integers r ≥ r$_0$, an object E$_r$, called a sheet (as in a sheet of paper), or sometimes a page or a term,
* Endomorphisms d$_r$ : E$_r$ → E$_r$ satisfying d$_r$ o d$_r$ = 0, called boundary maps or differentials,
* Isomorphisms of E$_{r+1}$ with H(E$_r$), the homology of E$_r$ with respect to d$_r$.
A doubly graded spectral sequence has a tremendous amount of data to keep track of, but there is a common visualization technique which makes the structure of the spectral sequence clearer. We have three indices, r, p, and q. For each r, imagine that we have a sheet of graph paper. On this sheet, we will take p to be the horizontal direction and q to be the vertical direction. At each lattice point we have the object $E_{r}^{p,q}$.
It is very common for n = p + q to be another natural index in the spectral sequence. n runs diagonally, northwest to southeast, across each sheet. In the homological case, the differentials have bidegree (−r, r − 1), so they decrease n by one. In the cohomological case, n is increased by one. When r is zero, the differential moves objects one space down or up. This is similar to the differential on a chain complex. When r is one, the differential moves objects one space to the left or right. When r is two, the differential moves objects just like a knight's move in chess. For higher r, the differential acts like a generalized knight's move.

## Functoriality

A continuous map of topological spaces gives rise to a homomorphism between their nth homology groups for all n. This basic fact of algebraic topology finds a natural explanation through certain properties of chain complexes. Since it is very common to study several topological spaces simultaneously, in homological algebra one is led to simultaneous consideration of multiple chain complexes.
A morphism between two chain complexes, $F:C_{\bullet }\to D_{\bullet },$ is a family of homomorphisms of abelian groups $F_{n}:C_{n}\to D_{n}$ that commute with the differentials, in the sense that $F_{n-1}\circ d_{n}^{C}=d_{n}^{D}\circ F_{n}$ for all n. A morphism of chain complexes induces a morphism $H_{\bullet }(F)$ of their homology groups, consisting of the homomorphisms $H_{n}(F):H_{n}(C)\to H_{n}(D)$ for all n. A morphism F is called a quasi-isomorphism if it induces an isomorphism on the nth homology for all n.
Many constructions of chain complexes arising in algebra and geometry, including singular homology, have the following functoriality property: if two objects X and Y are connected by a map f, then the associated chain complexes are connected by a morphism $F=C(f):C_{\bullet }(X)\to C_{\bullet }(Y),$ and moreover, the composition $g\circ f$ of maps f: X → Y and g: Y → Z induces the morphism $C(g\circ f):C_{\bullet }(X)\to C_{\bullet }(Z)$ that coincides with the composition $C(g)\circ C(f).$ It follows that the homology groups $H_{\bullet }(C)$ are functorial as well, so that morphisms between algebraic or topological objects give rise to compatible maps between their homology.
The following definition arises from a typical situation in algebra and topology. A triple consisting of three chain complexes $L_{\bullet },M_{\bullet },N_{\bullet }$ and two morphisms between them, $f:L_{\bullet }\to M_{\bullet },g:M_{\bullet }\to N_{\bullet },$ is called an exact triple, or a short exact sequence of complexes, and written as
    $0\longrightarrow L_{\bullet }{\overset {f}{\longrightarrow }}M_{\bullet }{\overset {g}{\longrightarrow }}N_{\bullet }\longrightarrow 0,$
if for any n, the sequence
    $0\longrightarrow L_{n}{\overset {f_{n}}{\longrightarrow }}M_{n}{\overset {g_{n}}{\longrightarrow }}N_{n}\longrightarrow 0$
is a short exact sequence of abelian groups. By definition, this means that f$_n$ is an injection, g$_n$ is a surjection, and Im f$_n$ = Ker g$_n$. One of the most basic theorems of homological algebra, sometimes known as the zig-zag lemma, states that, in this case, there is a long exact sequence in homology
    $\cdots \longrightarrow H_{n}(L){\overset {H_{n}(f)}{\longrightarrow }}H_{n}(M){\overset {H_{n}(g)}{\longrightarrow }}H_{n}(N){\overset {\delta _{n}}{\longrightarrow }}H_{n-1}(L){\overset {H_{n-1}(f)}{\longrightarrow }}H_{n-1}(M)\longrightarrow \cdots ,$
where the homology groups of L, M, and N cyclically follow each other, and δ$_n$ are certain homomorphisms determined by f and g, called the connecting homomorphisms. Topological manifestations of this theorem include the Mayer–Vietoris sequence and the long exact sequence for relative homology.

## Foundational aspects

Cohomology theories have been defined for many different objects such as topological spaces, sheaves, groups, rings, Lie algebras, and C*-algebras. The study of modern algebraic geometry would be almost unthinkable without sheaf cohomology.
Central to homological algebra is the notion of exact sequence; these can be used to perform actual calculations. A classical tool of homological algebra is that of derived functor; the most basic examples are functors Ext and Tor.
With a diverse set of applications in mind, it was natural to try to put the whole subject on a uniform basis. There were several attempts before the subject settled down. An approximate history can be stated as follows:
* Cartan-Eilenberg: In their 1956 book "Homological Algebra", these authors used projective and injective module resolutions.
* 'Tohoku': The approach in a celebrated paper by Alexander Grothendieck which appeared in the Second Series of the Tohoku Mathematical Journal in 1957, using the abelian category concept (to include sheaves of abelian groups).
* The derived category of Grothendieck and Verdier. Derived categories date back to Verdier's 1967 thesis. They are examples of triangulated categories used in a number of modern theories.
These move from computability to generality.
The computational sledgehammer par excellence is the spectral sequence; these are essential in the Cartan-Eilenberg and Tohoku approaches where they are needed, for instance, to compute the derived functors of a composition of two functors. Spectral sequences are less essential in the derived category approach, but still play a role whenever concrete computations are necessary.
There have been attempts at 'non-commutative' theories which extend first cohomology as torsors (important in Galois cohomology).