Homology (mathematics)

In mathematics (especially algebraic topology and abstract algebra), homology (in Greek homeos = identical and logos = word) is a certain general procedure to associate a sequence of abelian groups or modules to a given mathematical object (such as a topological space or a group). See homology theory for more background.
For a topological space, the homology groups are generally much easier to compute than the homotopy groups, and consequently one usually will have an easier time working with homology to aid in the classification of spaces.
Contents 
Construction of homology groups
The procedure works as follows: Given the object X, one first defines a chain complex that encodes information about X. A chain complex is a sequence of abelian groups or modules A_{0}, A_{1}, A_{2}... connected by homomorphisms d_{n} : A_{n} > A_{n1}, such that the composition of any two consecutive maps is zero: d_{n} o d_{n+1} = 0 for all n. This means that the image of the n+1th map is contained in the kernel of the nth, and we can define the nth homology group of X to be the factor group (or factor module)
 H_{n}(X) = ker(d_{n}) / im(d_{n+1}).
A chain complex is said to be exact if the image of the n+1th map is always equal to the kernel of the nth map. The homology groups of X therefore measure "how far" the chain complex associated to X is from being exact.
Examples
The motivating example comes from algebraic topology: the simplicial homology of a simplicial complex X. Here A_{n} is the free abelian group or module whose generators are the ndimensional oriented simplexes of X. The mappings are called the boundary mappings and send the simplex with vertices
 (a[1], a[2], ..., a[n])
to the sum of
 (−1)^{i} (a[1], ..., a[i −1], a[i+1], ..., a[n]) from i = 0 to i = n.
If we take the modules to be over a field, then the dimension of the nth homology of X turns out to be the number of "holes" in X at dimension n.
Using this example as a model, one can define a simplicial homology for any topological space X. We define a chain complex for X by taking A_{n} to be the free abelian group (or free module) whose generators are all continuous maps from ndimensional simplices into X. The homomorphisms d_{n} arise from the boundary maps of simplices.
In abstract algebra, one uses homology to define derived functors, for example the Tor functors. Here one starts with some covariant additive functor F and some module X. The chain complex for X is defined as follows: first find a free module F_{1} and a surjective homomorphism p_{1} : F_{1} > X. Then one finds a free module F_{2} and a surjective homomorphism p_{2} : F_{2} > ker(p_{1}). Continuing in this fashion, a sequence of free modules F_{n} and homomorphisms p_{n} can be defined. By applying the functor F to this sequence, one obtains a chain complex; the homology H_{n} of this complex depends only on F and X and is, by definition, the nth derived functor of F, applied to X.
Homology functors
Chain complexes form a category: A morphism from the chain complex (d_{n} : A_{n} > A_{n1}) to the chain complex (e_{n} : B_{n} > B_{n1}) is a sequence of homomorphisms f_{n} : A_{n} > B_{n} such that f_{n1} o d_{n} = e_{n1} o f_{n} for all n. The nth homology H_{n} can be viewed as a covariant functor from the category of chain complexes to the category of abelian groups (or modules).
If the chain complex depends on the object X in a covariant manner (meaning that any morphism X > Y induces a morphism from X's chain complex to Y's), then the H_{n} are covariant functors from the category that X belongs to into the category of abelian groups (or modules).
The only difference between homology and cohomology is that in cohomology the chain complexes depend in a contravariant manner on X, and that therefore the homology groups (which are called cohomology groups in this context and denoted by H^{n}) form contravariant functors from the category that X belongs to into the category of abelian groups or modules.
Properties
If (d_{n} : A_{n} > A_{n1}) is a chain complex such that all but finitely many A_{n} are zero, and the others are finitely generated abelian groups (or finite dimensional vector spaces), then we can define the Euler characteristic
 χ = ∑ (1)^{n} rank(A_{n})
(using the rank in the case of abelian groups and the Hamel dimension in the case of vector spaces). It turns out that the Euler characteristic can also be computed on the level of homology:
 χ = ∑ (1)^{n} rank(H_{n})
and, especially in algebraic topology, this provides two ways to compute the important invariant χ for the object X which gave rise to the chain complex.
Every short exact sequence
 0 > A > B > C > 0
of chain complexes gives rise to a long exact sequence of homology groups
 ... > H_{n}(A) > H_{n}(B) > H_{n}(C) > H_{n1}(A) > H_{n1}(B) > H_{n1}(C) > H_{n2}(A) > ...
All maps in this long exact sequence are induced by the maps between the chain complexes, except for the maps H_{n}(C) > H_{n1}(A). These latter are called connecting homomorphisms and are provided by the snake lemma.