In mathematics, the term homology, originally developed in algebraic topology, has three primary, closely-related usages. The most direct usage of the term is to take the homology of a chain complex, resulting in a sequence of abelian groups called homology groups. This operation, in turn, allows one to associate various named homologies or homology theories to various other types of mathematical objects. Lastly, since there are many homology theories for topological spaces that produce the same answer, one also often speaks of the homology of a topological space. (This latter notion of homology admits more intuitive descriptions for 1- or 2-dimensional topological spaces, and is sometimes referenced in popular mathematics.) There is also a related notion of the cohomology of a cochain complex, giving rise to various cohomology theories, in addition to the notion of the cohomology of a topological space.
To take the homology of a chain complex, one starts with a chain complex, which is a sequence
(C\bullet,d\bullet)
Cn
dn
C\bullet: … \longrightarrowCn+1\stackrel{dn+1
The
n
Hn
Hn=Zn/Bn
n
Zn
Zn:=\kerdn:=\{c\inCn| dn(c)=0\}
n
B n
Bn:=imdn+1:=\{dn+1(c)| c\inCn+1\}
Cn
R
dn
R
Hn
To associate a homology theory to other types of mathematical objects, one first gives a prescription for associating chain complexes to that object, and then takes the homology of such a chain complex. For the homology theory to be valid, all such chain complexes associated the same mathematical object must have the same homology. The resulting homology theory is often named according to the type of chain complex prescribed. For example, singular homology, Morse homology, Khovanov homology, and Hochschild homology are respectively obtained from singular chain complexes, Morse complexes, Khovanov complexes, and Hochschild complexes. In other cases, such as for group homology, there are multiple common methods to compute the same homology groups.
In the language of category theory, a homology theory is a type of functor from the category of the mathematical object being studied to the category of abelian groups and group homomorphisms, or more generally to the category corresponding to the associated chain complexes. One can also formulate homology theories as derived functors on appropriate abelian categories, measuring the failure of an appropriate functor to be exact. One can describe this latter construction explicitly in terms of resolutions, or more abstractly from the perspective of derived categories or model categories.
Regardless of how they are formulated, homology theories help provide information about the structure of the mathematical objects to which they are associated, and can sometimes help distinguish different objects.
Perhaps the most familiar usage of the term homology is for the homology of a topological space. For sufficiently nice topological spaces and compatible choices of coefficient rings, any homology theory satisfying the Eilenberg-Steenrod axioms yields the same homology groups as the singular homology (see below) of that topological space, with the consequence that one often simply refers to the "homology" of that space, instead of specifying which homology theory was used to compute the homology groups in question.
For 1-dimensional topological spaces, probably the simplest homology theory to use is graph homology, which could be regarded as a 1-dimensional special case of simplicial homology, the latter of which involves a decomposition of the topological space into simplices. (Simplices are a generalization of triangles to arbitrary dimension; for example, an edge in a graph is homeomorphic to a one-dimensional simplex, and a triangle-based pyramid is a 3-simplex.) Simplicial homology can in turn be generalized to singular homology, which allows more general maps of simplices into the topological space. Replacing simplices with disks of various dimensions results in a related construction called cellular homology.
There are also other ways of computing these homology groups, for example via Morse homology, or by taking the output of the Universal Coefficient Theorem when applied to a cohomology theory such as Čech cohomology or (in the case of real coefficients) De Rham cohomology.
One of the ideas that led to the development of homology was the observation that certain low-dimensional shapes can be topologically distinguished by examining their holes or cavities. For instance, a figure-eight shape has more holes than a circle
S1
T2
S2
Studying topological features such as these led to the notion of the cycles that represent homology classes (the elements of homology groups). For example, the two embedded circles in a figure-eight shape provide examples of one-dimensional cycles, or 1-cycles, and the 2-torus
T2
S2
However, the defining feature of a cycle is not that it is the boundary of a missing object, but rather that the cycle itself has no boundary. For example, the closed interval
[0,1]
\{0\}\amalg\{1\}
d1(1 ⋅ [0,1])=1 ⋅ \{1\}-1 ⋅ \{0\}
S1
D2
S1
T2
S2
(One technical point here that becomes more important if one wishes to study homology in earnest is that it is not the shape
S1
T2
X
S1
X
S1
T2
One might notice that for each of the 3 preceding examples we gave for cycles, from
S1
T2
S2
S2
B3
S2
S2
B3
S2
B3
Due to the above and similar examples, it is sometimes said that cycles can intuitively be thought of as holes. Any cycle at least admits a cone-shaped hole, since the boundary of the cone on a cycle is again that cycle. (For example, a cone on
S1
S1
RP2
CP2
The boundaries discussed in homology theory are different from the boundaries of "filled in" holes, however, because the former boundaries must be defined in terms of the original topological space, without recourse to attaching any extra pieces to that space. For example, any embedded circle
C
S2
D
S2
C
S2
By contrast, no embedding of
S1
X8
S1
X8
X8
X8
X8
X1+X2-X1-X2=0
X1
X2
X8
We have so far only given examples of boundaries instead of defining them rigorously. That is because the definition of boundary is part of the data of the type of chain complex chosen, which in turn depends on the choice of homology theory, although most of these are compatible with taking a topological boundary by deleting the interior of a space from the closure of a space. Once our chain complex, and hence our definition of boundary, are specified, the cycles are defined to be the elements with zero boundary. Since the boundary of a boundary is always zero in a chain complex, a boundary is always a cycle, regardless of choice of homology theory.
Given a topological space
X
n
Hn(X)
n
n
n
Hn(X)
n
Hn(X)
Hn(X)
n
Returning to the examples discussed above, the figure-eight
X8
H0(X8)=Z
H1(X8)=Z x Z
Hn(X8)=0
n>1
[X1],[X2]
H1(X8)
[pt]
D0
X8
H0(X8).
X
H0(X)=Z=\{c[pt]| c\inZ\}
pt:D0\toX
D0
X
S2
2)=Z | |
H | |
0(S |
2)=0 | |
H | |
1(S |
2)=Z | |
H | |
2(S |
2)=0 | |
H | |
n(S |
n>2
Homology theory can be said to start with the Euler polyhedron formula, or Euler characteristic. This was followed by Riemann's definition of genus and n-fold connectedness numerical invariants in 1857 and Betti's proof in 1871 of the independence of "homology numbers" from the choice of basis.
Homology itself was developed as a way to analyse and classify manifolds according to their cycles – closed loops (or more generally submanifolds) that can be drawn on a given n dimensional manifold but not continuously deformed into each other. These cycles are also sometimes thought of as cuts which can be glued back together, or as zippers which can be fastened and unfastened. Cycles are classified by dimension. For example, a line drawn on a surface represents a 1-cycle, a closed loop or
S1
S2
T2
If the torus surface is cut along both a and b, it can be opened out and flattened into a rectangle or, more conveniently, a square. One opposite pair of sides represents the cut along a, and the other opposite pair represents the cut along b.
The edges of the square may then be glued back together in different ways. The square can be twisted to allow edges to meet in the opposite direction, as shown by the arrows in the diagram. The various ways of gluing the sides yield just four topologically distinct surfaces:
K2
P2
Cycles can be joined or added together, as a and b on the torus were when it was cut open and flattened down. In the Klein bottle diagram, a goes round one way and -a goes round the opposite way. If a is thought of as a cut, then −a can be thought of as a gluing operation. Making a cut and then re-gluing it does not change the surface, so a + (−a) = 0.
But now consider two a-cycles. Since the Klein bottle is nonorientable, you can transport one of them all the way round the bottle (along the b-cycle), and it will come back as −a. This is because the Klein bottle is made from a cylinder, whose a-cycle ends are glued together with opposite orientations. Hence 2a = a + a = a + (−a) = 0. This phenomenon is called torsion. Similarly, in the projective plane, following the unshrinkable cycle b round twice remarkably creates a trivial cycle which can be shrunk to a point; that is, b + b = 0. Because b must be followed around twice to achieve a zero cycle, the surface is said to have a torsion coefficient of 2. However, following a b-cycle around twice in the Klein bottle gives simply b + b = 2b, since this cycle lives in a torsion-free homology class. This corresponds to the fact that in the fundamental polygon of the Klein bottle, only one pair of sides is glued with a twist, whereas in the projective plane both sides are twisted.
A square is a contractible topological space, which implies that it has trivial homology. Consequently, additional cuts disconnect it. The square is not the only shape in the plane that can be glued into a surface. Gluing opposite sides of an octagon, for example, produces a surface with two holes. In fact, all closed surfaces can be produced by gluing the sides of some polygon and all even-sided polygons (2n-gons) can be glued to make different manifolds. Conversely, a closed surface with n non-zero classes can be cut into a 2n-gon. Variations are also possible, for example a hexagon may also be glued to form a torus.
The first recognisable theory of homology was published by Henri Poincaré in his seminal paper "Analysis situs", J. Ecole polytech. (2) 1. 1–121 (1895). The paper introduced homology classes and relations. The possible configurations of orientable cycles are classified by the Betti numbers of the manifold (Betti numbers are a refinement of the Euler characteristic). Classifying the non-orientable cycles requires additional information about torsion coefficients.
The complete classification of 1- and 2-manifolds is given in the table.
Manifold | Euler no., χ | Orientability | Betti numbers | Torsion coefficient (1-dimensional) | ||||
---|---|---|---|---|---|---|---|---|
Symbol[1] | Name | b0 | b1 | b2 | ||||
S1 | Circle (1-manifold) | 0 | Orientable | 1 | 1 | |||
S2 | 2 | Orientable | 1 | 0 | 1 | None | ||
T2 | 0 | Orientable | 1 | 2 | 1 | None | ||
P2 | 1 | Non-orientable | 1 | 0 | 0 | 2 | ||
K2 | 0 | Non-orientable | 1 | 1 | 0 | 2 | ||
2-holed torus | −2 | Orientable | 1 | 4 | 1 | None | ||
g-holed torus (g is the genus) | 2 − 2g | Orientable | 1 | 2g | 1 | None | ||
Sphere with c cross-caps | 2 − c | Non-orientable | 1 | c − 1 | 0 | 2 | ||
2-Manifold with gholes and ccross-caps (c>0) | 2−(2g+c) | Non-orientable | 1 | (2g+c)−1 | 0 | 2 |
Notes
S2
In a search for increased rigour, Poincaré went on to develop the simplicial homology of a triangulated manifold and to create what is now called a simplicial chain complex. Chain complexes (since greatly generalized) form the basis for most modern treatments of homology.
Emmy Noether and, independently, Leopold Vietoris and Walther Mayer further developed the theory of algebraic homology groups in the period 1925–28.[2] [3] The new combinatorial topology formally treated topological classes as abelian groups. Homology groups are finitely generated abelian groups, and homology classes are elements of these groups. The Betti numbers of the manifold are the rank of the free part of the homology group, and the non-orientable cycles are described by the torsion part.
The subsequent spread of homology groups brought a change of terminology and viewpoint from "combinatorial topology" to "algebraic topology".[4] Algebraic homology remains the primary method of classifying manifolds.
The homology of a topological space X is a set of topological invariants of X represented by its homology groupswhere the
k\rm
Hk(X)
H0(X)
S1
\Z
\{0\}
1\right) | |
H | |
1\left(S |
=\Z
S2
In general for an n-dimensional sphere
Sn,
B2
2\right) | |
H | |
0\left(B |
=\Z
Bn,
The torus is defined as a product of two circles
T2=S1 x S1
If n products of a topological space X is written as
Xn
Tn=(S1)n
(see Torus#n-dimensional torus and Betti number#More examples for more details).
\Z x \Z.
For the projective plane P, a simple computation shows (where
\Z2
H0(P)=\Z
H1(P)=\Z2
The following text describes a general algorithm for constructing the homology groups. It may be easier for the reader to look at some simple examples first: graph homology and simplicial homology.
The general construction begins with an object such as a topological space X, on which one first defines a C(X) encoding information about X. A chain complex is a sequence of abelian groups or modules
C0,C1,C2,\ldots
\partialn:Cn\toCn-1,
...b \overset{\partialn+1
where 0 denotes the trivial group and
Ci\equiv0
\partialn\circ\partialn+1=0n+1,,
i.e., the constant map sending every element of
Cn+1
Cn-1.
The statement that the boundary of a boundary is trivial is equivalent to the statement that
im(\partialn+1)\subseteq\ker(\partialn)
im(\partialn+1)
\ker(\partialn)
Bn(X)=im(\partialn+1)
Zn(X)=\ker(\partialn)
Since each chain group Cn is abelian all its subgroups are normal. Then because
\ker(\partialn)
\ker(\partialn)
im(\partialn+1)\subseteq\ker(\partialn)
im(\partialn+1)
\ker(\partialn)
Hn(X):=\ker(\partialn)/im(\partialn+1)=Zn(X)/Bn(X),
called the nth homology group of X. The elements of Hn(X) are called homology classes. Each homology class is an equivalence class over cycles and two cycles in the same homology class are said to be homologous.
A chain complex is said to be exact if the image of the (n+1)th 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.
The reduced homology groups of a chain complex C(X) are defined as homologies of the augmented chain complex
...b \overset{\partialn+1
where the boundary operator
\epsilon
\epsilon\left(\sumini\sigmai\right)=\sumini
for a combination
\sumni\sigmai,
\sigmai,
\tilde{H}i(X)
Hi(X)
i ≠ 0.
\Z
[\emptyset]\longrightarrowX
Computing the cycle
Zn(X)
Bn(X)
The simplicial homology groups Hn(X) of a simplicial complex X are defined using the simplicial chain complex C(X), with Cn(X) the free abelian group generated by the n-simplices of X. See simplicial homology for details.
The singular homology groups Hn(X) are defined for any topological space X, and agree with the simplicial homology groups for a simplicial complex.
Cohomology groups are formally similar to homology groups: one starts with a cochain complex, which is the same as a chain complex but whose arrows, now denoted
dn,
\ker\left(dn\right)=Zn(X)
im\left(dn-1\right)=Bn(X)
Hn(X)=Zn(X)/Bn(X),
in analogy with the nth homology group.
Homotopy groups are similar to homology groups in that they can represent "holes" in a topological space. There is a close connection between the first homotopy group
\pi1(X)
H1(X)
As an example, let X be the figure eight. As usual, its first homotopy group, or fundamental group,
\pi1(X)
\pi1(X)\congZ*Z
H1(X)\congZ x Z
l
r
H1(X)
H1(X)=\{all+arr| al,ar\inZ\}
The different types of homology theory arise from functors mapping from various categories of mathematical objects to the category of chain complexes. In each case the composition of the functor from objects to chain complexes and the functor from chain complexes to homology groups defines the overall homology functor for the theory.
See main article: Simplicial homology.
The motivating example comes from algebraic topology: the simplicial homology of a simplicial complex X. Here the chain group Cn is the free abelian group or module whose generators are the n-dimensional oriented simplexes of X. The orientation is captured by ordering the complex's vertices and expressing an oriented simplex
\sigma
(\sigma[0],\sigma[1],...,\sigma[n])
\sigma[0]<\sigma[1]< … <\sigma[n]
\sigma[i]
i
\partialn
\sigma=(\sigma[0],\sigma[1],...,\sigma[n])
to the formal sum
\partialn(\sigma)=
n | |
\sum | |
i=0 |
(-1)i\left(\sigma[0],...,\sigma[i-1],\sigma[i+1],...,\sigma[n]\right),
which is considered 0 if
n=0.
c\inCn
Xn
\partialn(c)=
\sum | |
\sigmai\inXn |
mi\partialn(\sigmai).
The dimension of the n-th homology of X turns out to be the number of "holes" in X at dimension n. It may be computed by putting matrix representations of these boundary mappings in Smith normal form.
See main article: Singular homology.
Using simplicial homology example as a model, one can define a singular homology for any topological space X. A chain complex for X is defined by taking Cn to be the free abelian group (or free module) whose generators are all continuous maps from n-dimensional simplices into X. The homomorphisms ∂n arise from the boundary maps of simplices.
See main article: Group cohomology.
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
F1
p1:F1\toX.
F2
p2:F2\to\ker\left(p1\right).
Fn
pn
Hn
A common use of group (co)homology
H2(G,M)
G=E/M.
Chain complexes form a category: A morphism from the chain complex (
dn:An\toAn-1
en:Bn\toBn-1
fn:An\toBn
fn-1\circdn=en\circfn
If the chain complex depends on the object X in a covariant manner (meaning that any morphism
X\toY
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 Hn) form contravariant functors from the category that X belongs to into the category of abelian groups or modules.
If (
dn:An\toAn-1
\chi=\sum(-1)nrank(An)
(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:
\chi=\sum(-1)nrank(Hn)
and, especially in algebraic topology, this provides two ways to compute the important invariant
\chi
Every short exact sequence
0 → A → B → C → 0
of chain complexes gives rise to a long exact sequence of homology groups
… \toHn(A)\toHn(B)\toHn(C)\toHn-1(A)\toHn-1(B)\toHn-1(C)\toHn-2(A)\to …
All maps in this long exact sequence are induced by the maps between the chain complexes, except for the maps
Hn(C)\toHn-1(A)
Notable theorems proved using homology include the following:
a\inBn
f(a)=a.
\Rn
f:U\to\Rn
V=f(U)
k\geq1
U\subseteq\Rm
V\subseteq\Rn
m=n.
In topological data analysis, data sets are regarded as a point cloud sampling of a manifold or algebraic variety embedded in Euclidean space. By linking nearest neighbor points in the cloud into a triangulation, a simplicial approximation of the manifold is created and its simplicial homology may be calculated. Finding techniques to robustly calculate homology using various triangulation strategies over multiple length scales is the topic of persistent homology.[8]
In sensor networks, sensors may communicate information via an ad-hoc network that dynamically changes in time. To understand the global context of this set of local measurements and communication paths, it is useful to compute the homology of the network topology to evaluate, for instance, holes in coverage.[9]
In dynamical systems theory in physics, Poincaré was one of the first to consider the interplay between the invariant manifold of a dynamical system and its topological invariants. Morse theory relates the dynamics of a gradient flow on a manifold to, for example, its homology. Floer homology extended this to infinite-dimensional manifolds. The KAM theorem established that periodic orbits can follow complex trajectories; in particular, they may form braids that can be investigated using Floer homology.[10]
In one class of finite element methods, boundary-value problems for differential equations involving the Hodge-Laplace operator may need to be solved on topologically nontrivial domains, for example, in electromagnetic simulations. In these simulations, solution is aided by fixing the cohomology class of the solution based on the chosen boundary conditions and the homology of the domain. FEM domains can be triangulated, from which the simplicial homology can be calculated.[11] [12]
Various software packages have been developed for the purposes of computing homology groups of finite cell complexes. Linbox is a C++ library for performing fast matrix operations, including Smith normal form; it interfaces with both Gap and Maple. Chomp, CAPD::Redhom and Perseus are also written in C++. All three implement pre-processing algorithms based on simple-homotopy equivalence and discrete Morse theory to perform homology-preserving reductions of the input cell complexes before resorting to matrix algebra. Kenzo is written in Lisp, and in addition to homology it may also be used to generate presentations of homotopy groups of finite simplicial complexes. Gmsh includes a homology solver for finite element meshes, which can generate Cohomology bases directly usable by finite element software.