In mathematics, specifically in homology theory and algebraic topology, cohomology is a general term for a sequence of abelian groups associated to a topological space, often defined from a cochain complex. Cohomology can be viewed as a method of assigning richer algebraic invariants to a space than homology. Some versions of cohomology arise by dualizing the construction of homology. In other words, cochains are functions on the group of chains in homology theory.
From its beginning in topology, this idea became a dominant method in the mathematics of the second half of the twentieth century. From the initial idea of homology as a method of constructing algebraic invariants of topological spaces, the range of applications of homology and cohomology theories has spread throughout geometry and algebra. The terminology tends to hide the fact that cohomology, a contravariant theory, is more natural than homology in many applications. At a basic level, this has to do with functions and pullbacks in geometric situations: given spaces X and Y, and some kind of function F on Y, for any mapping f : X → Y, composition with f gives rise to a function F∘f on X. The most important cohomology theories have a product, the cup product, which gives them a ring structure. Because of this feature, cohomology is usually a stronger invariant than homology.
Singular cohomology is a powerful invariant in topology, associating a graded-commutative ring to any topological space. Every continuous map f: X → Y determines a homomorphism from the cohomology ring of Y to that of X; this puts strong restrictions on the possible maps from X to Y. Unlike more subtle invariants such as homotopy groups, the cohomology ring tends to be computable in practice for spaces of interest.
By definition, the singular homology of X is the homology of this chain complex (the kernel of one homomorphism modulo the image of the previous one). In more detail, Ci is the free abelian group on the set of continuous maps from the standard i-simplex to X (called "singular i-simplices in X"), and ∂i is the ith boundary homomorphism. The groups Ci are zero for i negative.
to obtain the cochain complex
For an integer i, the ith cohomology group of X with coefficients in A is defined to be ker(di)/im(di−1) and denoted by Hi(X, A). The group Hi(X, A) is zero for i negative. The elements of Ci* are called singular i-cochains with coefficients in A. (Equivalently, an i-cochain on X can be identified with a function from the set of singular i-simplices in X to A.) Elements of ker(d) and im(d) are called cocycles and coboundaries, respectively, while elements of ker(d)/im(d) = Hi(X, A) are called cohomology classes (because they are equivalence classes of cocycles).
In what follows, the coefficient group A is sometimes not written. It is common to take A to be a commutative ring R; then the cohomology groups are R-modules. A standard choice is the ring Z of integers.
Some of the formal properties of cohomology are only minor variants of the properties of homology:
- A continuous map f: X → Y determines a pushforward homomorphism f*: Hi(X) → Hi(Y) on homology and a pullback homomorphism f*: Hi(Y) → Hi(X) on cohomology. This makes cohomology into a contravariant functor from topological spaces to abelian groups (or R-modules).
- Two homotopic maps from X to Y induce the same homomorphism on cohomology (just as on homology).
- The Mayer–Vietoris sequence is an important computational tool in cohomology, as in homology. Note that the boundary homomorphism increases (rather than decreases) degree in cohomology. That is, if a space X is the union of open subsets U and V, then there is a long exact sequence:
- There are relative cohomology groups Hi(X,Y;A) for any subspace Y of a space X. They are related to the usual cohomology groups by a long exact sequence:
- The universal coefficient theorem describes cohomology in terms of homology, using Ext groups. Namely, there is a short exact sequence
- A related statement is that for a field F, Hi(X,F) is precisely the dual space of the vector space Hi(X,F).
- If X is a topological manifold or a CW complex, then the cohomology groups Hi(X,A) are zero for i greater than the dimension of X. If X is a compact manifold (possibly with boundary), or a CW complex with finitely many cells in each dimension, and R is a commutative Noetherian ring, then the R-module Hi(X,R) is finitely generated for each i.
defined by an explicit formula on singular cochains. The product of cohomology classes u and v is written as u ∪ v or simply as uv. This product makes the direct sum
for u in Hi(X,R) and v in Hj(X,R).
For any continuous map f: X → Y, the pullback f*: H*(Y,R) → H*(X,R) is a homomorphism of graded R-algebras. It follows that if two spaces are homotopy equivalent, then their cohomology rings are isomorphic.
Here are some of the geometric interpretations of the cup product. In what follows, manifolds are understood to be without boundary, unless stated otherwise. A closed manifold means a compact manifold (without boundary), whereas a closed submanifold N of a manifold M means a submanifold that is a closed subset of M, not necessarily compact (although N is automatically compact if M is).
- Let X be a closed oriented manifold of dimension n. Then Poincaré duality gives an isomorphism HiX ≅ Hn−iX. As a result, a closed oriented submanifold S of codimension i in X determines a cohomology class in HiX, called [S]. In these terms, the cup product describes the intersection of submanifolds. Namely, if S and T are submanifolds of codimension i and j that intersect transversely, then
- where the intersection S ∩ T is a submanifold of codimension i + j, with an orientation determined by the orientations of S, T, and X. In the case of smooth manifolds, if S and T do not intersect transversely, this formula can still be used to compute the cup product [S][T], by perturbing S or T to make the intersection transverse.
- More generally, without assuming that X has an orientation, a closed submanifold of X with an orientation on its normal bundle determines a cohomology class on X. If X is a noncompact manifold, then a closed submanifold (not necessarily compact) determines a cohomology class on X. In both cases, the cup product can again be described in terms of intersections of submanifolds.
- Note that Thom constructed an integral cohomology class of degree 7 on a smooth 14-manifold that is not the class of any smooth submanifold. On the other hand, he showed that every integral cohomology class of positive degree on a smooth manifold has a positive multiple that is the class of a smooth submanifold. Also, every integral cohomology class on a manifold can be represented by a "pseudomanifold", that is, a simplicial complex that is a manifold outside a closed subset of codimension at least 2.
- For a smooth manifold X, de Rham's theorem says that the singular cohomology of X with real coefficients is isomorphic to the de Rham cohomology of X, defined using differential forms. The cup product corresponds to the product of differential forms. This interpretation has the advantage that the product on differential forms is graded-commutative, whereas the product on singular cochains is only graded-commutative up to chain homotopy. In fact, it is impossible to modify the definition of singular cochains with coefficients in the integers Z or in Z/p for a prime number p to make the product graded-commutative on the nose. The failure of graded-commutativity at the cochain level leads to the Steenrod operations on mod p cohomology.
Very informally, for any topological space X, elements of HiX can be thought of as represented by codimension-i subspaces of X that can move freely on X. For example, one way to define an element of HiX is to give a continuous map f from X to a manifold M and a closed codimension-i submanifold N of M with an orientation on the normal bundle. Informally, one thinks of the resulting class f*([N]) ∈ Hi(X) as lying on the subspace f−1(N) of X; this is justified in that the class f*([N]) restricts to zero in the cohomology of the open subset X − f−1(N). The cohomology class f*([N]) can move freely on X in the sense that N could be replaced by any continuous deformation of N inside M.
In what follows, cohomology is taken with coefficients in the integers Z, unless stated otherwise.
- The cohomology ring of a point is the ring Z in degree 0. By homotopy invariance, this is also the cohomology ring of any contractible space, such as Euclidean space Rn.
- sphere Sn is Z[x]/(x2) (the quotient ring of a polynomial ring by the given ideal), with x in degree n. In terms of Poincaré duality as above, x is the class of a point on the sphere.
- The cohomology ring of the torus (S1)n is the exterior algebra over Z on n generators in degree 1. For example, let P denote a point in the circle S1, and Q the point (P,P) in the 2-dimensional torus (S1)2. Then the cohomology of (S1)2 has a basis as a free Z-module of the form: the element 1 in degree 0, x := [P × S1] and y := [S1 × P] in degree 1, and xy = [Q] in degree 2. (Implicitly, orientations of the torus and of the two circles have been fixed here.) Note that yx = −xy = −[Q], by graded-commutativity.
- More generally, let R be a commutative ring, and let X and Y be any topological spaces such that H*(X,R) is a finitely generated free R-module in each degree. (No assumption is needed on Y.) Then the Künneth formula gives that the cohomology ring of the product space X × Y is a tensor product of R-algebras:
- The cohomology ring of real projective space RPn with Z/2 coefficients is Z/2[x]/(xn+1), with x in degree 1. Here x is the class of a hyperplane RPn−1 in RPn; this makes sense even though RPj is not orientable for j even and positive, because Poincaré duality with Z/2 coefficients works for arbitrary manifolds.
- With integer coefficients, the answer is a bit more complicated. The Z-cohomology of RP2a has an element y of degree 2 such that the whole cohomology is the direct sum of a copy of Z spanned by the element 1 in degree 0 together with copies of Z/2 spanned by the elements yi for i=1,...,a. The Z-cohomology of RP2a+1 is the same together with an extra copy of Z in degree 2a+1.
- The cohomology ring of complex projective space CPn is Z[x]/(xn+1), with x in degree 2. Here x is the class of a hyperplane CPn−1 in CPn. More generally, xj is the class of a linear subspace CPn−j in CPn.
- The cohomology ring of the closed oriented surface X of genus g ≥ 0 has a basis as a free Z-module of the form: the element 1 in degree 0, A1,...,Ag and B1,...,Bg in degree 1, and the class P of a point in degree 2. The product is given by: AiAj = BiBj = 0 for all i and j, AiBj = 0 if i ≠ j, and AiBi = P for all i. By graded-commutativity, it follows that BiAi = −P.
- On any topological space, graded-commutativity of the cohomology ring implies that 2x2 = 0 for all odd-degree cohomology classes x. It follows that for a ring R containing 1/2, all odd-degree elements of H*(X,R) have square zero. On the other hand, odd-degree elements need not have square zero if R is Z/2 or Z, as one sees in the example of RP2 (with Z/2 coefficients) or RP4 × RP2 (with Z coefficients).
The cup product on cohomology can be viewed as coming from the diagonal map Δ: X → X × X, x ↦ (x,x). Namely, for any spaces X and Y with cohomology classes u ∈ Hi(X,R) and v ∈ Hj(Y,R), there is an external product (or cross product) cohomology class u × v ∈ Hi+j(X × Y,R). The cup product of classes u ∈ Hi(X,R) and v ∈ Hj(X,R) can be defined as the pullback of the external product by the diagonal:
Alternatively, the external product can be defined in terms of the cup product. For spaces X and Y, write f: X × Y → X and g: X × Y → Y for the two projections. Then the external product of classes u ∈ Hi(X,R) and v ∈ Hj(Y,R) is:
Another interpretation of Poincaré duality is that the cohomology ring of a closed oriented manifold is self-dual in a strong sense. Namely, let X be a closed connected oriented manifold of dimension n, and let F be a field. Then Hn(X,F) is isomorphic to F, and the product
is a perfect pairing for each integer i. In particular, the vector spaces Hi(X,F) and Hn−i(X,F) have the same (finite) dimension. Likewise, the product on integral cohomology modulo torsion with values in Hn(X,Z) ≅ Z is a perfect pairing over Z.
An oriented real vector bundle E of rank r over a topological space X determines a cohomology class on X, the Euler class χ(E) ∈ Hr(X,Z). Informally, the Euler class is the class of the zero set of a general section of E. That interpretation can be made more explicit when E is a smooth vector bundle over a smooth manifold X, since then a general smooth section of X vanishes on a codimension-r submanifold of X.
For each abelian group A and natural number j, there is a space K(A,j) whose jth homotopy group is isomorphic to A and whose other homotopy groups are zero. Such a space is called an Eilenberg–MacLane space. This space has the remarkable property that it is a classifying space for cohomology: there is a natural element u of Hj(K(A,j),A), and every cohomology class of degree j on every space X is the pullback of u by some continuous map X → K(A,j). More precisely, pulling back the class u gives a bijection
for every space X with the homotopy type of a CW complex. Here [X,Y] denotes the set of homotopy classes of continuous maps from X to Y.
For example, the space K(Z,1) (defined up to homotopy equivalence) can be taken to be the circle S1. So the description above says that every element of H1(X,Z) is pulled back from the class u of a point on S1 by some map X → S1.
There is a related description of the first cohomology with coefficients in any abelian group A, say for a CW complex X. Namely, H1(X,A) is in one-to-one correspondence with the set of isomorphism classes of Galois covering spaces of X with group A, also called principal A-bundles over X. For X connected, it follows that H1(X,A) is isomorphic to Hom(π1X,A), where π1X is the fundamental group of X. For example, H1(X,Z/2) classifies the double covering spaces of X, with the element 0 ∈ H1(X,Z/2) corresponding to the trivial double covering, the disjoint union of two copies of X.
For any topological space X, the cap product is a bilinear map
for any integers i and j and any commutative ring R. The resulting map
makes the singular homology of X into a module over the singular cohomology ring of X.
For i = j, the cap product gives the natural homomorphism
which is an isomorphism for R a field.
For example, let X be an oriented manifold, not necessarily compact. Then a closed oriented codimension-i submanifold Y of X (not necessarily compact) determines an element of Hi(X,R), and a compact oriented j-dimensional submanifold Z of X determines an element of Hj(X,R). The cap product [Y] ∩ [Z] ∈ Hj−i(X,R) can be computed by perturbing Y and Z to make them intersect transversely and then taking the class of their intersection, which is a compact oriented submanifold of dimension j − i.
A closed oriented manifold X of dimension n has a fundamental class [X] in Hn(X,R). The Poincaré duality isomorphism
is defined by cap product with the fundamental class of X.
History, to the birth of singular cohomology
Although cohomology is fundamental to modern algebraic topology, its importance was not seen for some 40 years after the development of homology. The concept of dual cell structure, which Henri Poincaré used in his proof of his Poincaré duality theorem, contained the germ of the idea of cohomology, but this was not seen until later.
There were various precursors to cohomology. In the mid-1920s, J. W. Alexander and Solomon Lefschetz founded the intersection theory of cycles on manifolds. On a closed oriented n-dimensional manifold M, an i-cycle and a j-cycle with nonempty intersection will, if in general position, have intersection an (i + j − n)-cycle. This leads to a multiplication of homology classes
which in retrospect can be identified with the cup product on the cohomology of M.
Alexander had by 1930 defined a first notion of a cochain, by thinking of an i-cochain on a space X as a function on small neighborhoods of the diagonal in Xi+1.
In 1931, Georges de Rham related homology and differential forms, proving de Rham's theorem. This result can be stated more simply in terms of cohomology.
In 1934, Lev Pontryagin proved the Pontryagin duality theorem; a result on topological groups. This (in rather special cases) provided an interpretation of Poincaré duality and Alexander duality in terms of group characters.
From 1936 to 1938, Hassler Whitney and Eduard Čech developed the cup product (making cohomology into a graded ring) and cap product, and realized that Poincaré duality can be stated in terms of the cap product. Their theory was still limited to finite cell complexes.
In 1944, Samuel Eilenberg overcame the technical limitations, and gave the modern definition of singular homology and cohomology.
In 1945, Eilenberg and Steenrod stated the axioms defining a homology or cohomology theory, discussed below. In their 1952 book, Foundations of Algebraic Topology, they proved that the existing homology and cohomology theories did indeed satisfy their axioms.
In 1946, Jean Leray defined sheaf cohomology.
Sheaf cohomology is a rich generalization of singular cohomology, allowing more general "coefficients" than simply an abelian group. For every sheaf of abelian groups E on a topological space X, one has cohomology groups Hi(X,E) for integers i. In particular, in the case of the constant sheaf on X associated to an abelian group A, the resulting groups Hi(X,A) coincide with singular cohomology for X a manifold or CW complex (though not for arbitrary spaces X). Starting in the 1950s, sheaf cohomology has become a central part of algebraic geometry and complex analysis, partly because of the importance of the sheaf of regular functions or the sheaf of holomorphic functions.
Grothendieck elegantly defined and characterized sheaf cohomology in the language of homological algebra. The essential point is to fix the space X and think of sheaf cohomology as a functor from the abelian category of sheaves on X to abelian groups. Start with the functor taking a sheaf E on X to its abelian group of global sections over X, E(X). This functor is left exact, but not necessarily right exact. Grothendieck defined sheaf cohomology groups to be the right derived functors of the left exact functor E ↦ E(X).
That definition suggests various generalizations. For example, one can define the cohomology of a topological space X with coefficients in any complex of sheaves, earlier called hypercohomology (but usually now just "cohomology"). From that point of view, sheaf cohomology becomes a sequence of functors from the derived category of sheaves on X to abelian groups.
In a broad sense of the word, "cohomology" is often used for the right derived functors of a left exact functor on an abelian category, while "homology" is used for the left derived functors of a right exact functor. For example, for a ring R, the Tor groups ToriR(M,N) form a "homology theory" in each variable, the left derived functors of the tensor product M⊗RN of R-modules. Likewise, the Ext groups ExtiR(M,N) can be viewed as a "cohomology theory" in each variable, the right derived functors of the Hom functor HomR(M,N).
Sheaf cohomology can be identified with a type of Ext group. Namely, for a sheaf E on a topological space X, Hi(X,E) is isomorphic to Exti(ZX, E), where ZX denotes the constant sheaf associated to the integers Z, and Ext is taken in the abelian category of sheaves on X.
Axioms and generalized cohomology theories
There are various ways to define cohomology for topological spaces (such as singular cohomology, Čech cohomology, Alexander–Spanier cohomology or sheaf cohomology). (Here sheaf cohomology is considered only with coefficients in a constant sheaf.) These theories give different answers for some spaces, but there is a large class of spaces on which they all agree. This is most easily understood axiomatically: there is a list of properties known as the Eilenberg–Steenrod axioms, and any two constructions that share those properties will agree at least on all CW complexes. There are versions of the axioms for a homology theory as well as for a cohomology theory. Some theories can be viewed as tools for computing singular cohomology for special topological spaces, such as simplicial cohomology for simplicial complexes, cellular cohomology for CW complexes, and de Rham cohomology for smooth manifolds.
One of the Eilenberg–Steenrod axioms for a cohomology theory is the dimension axiom: if P is a single point, then Hi(P) = 0 for all i ≠ 0. Around 1960, Whitehead observed that it is fruitful to omit the dimension axiom completely: this gives the notion of a generalized homology theory or a generalized cohomology theory, defined below. There are generalized cohomology theories such as K-theory or complex cobordism that give rich information about a topological space, not directly accessible from singular cohomology. (In this context, singular cohomology is often called "ordinary cohomology".)
By definition, a generalized homology theory is a sequence of functors hi (for integers i) from the category of CW-pairs (X, A) (so X is a CW complex and A is a subcomplex) to the category of abelian groups, together with a natural transformation ∂i: hi(X, A) → hi−1(A) called the boundary homomorphism (here hi−1(A) is a shorthand for hi−1(A,∅)). The axioms are:
- Homotopy: If f:(X,A) → (Y,B) is homotopic to g: (X,A) → (Y,B), then the induced homomorphisms on homology are the same.
- Exactness: Each pair (X,A) induces a long exact sequence in homology, via the inclusions f: A → X and g: (X,∅) → (X,A):
- Excision: If X is the union of subcomplexes A and B, then the inclusion f: (A,A∩B) → (X,B) induces an isomorphism for every i.
- Additivity: If (X,A) is the disjoint union of a set of pairs (Xα,Aα), then the inclusions (Xα,Aα) → (X,A) induce an isomorphism from the direct sum: for every i.
The axioms for a generalized cohomology theory are obtained by reversing the arrows, roughly speaking. In more detail, a generalized cohomology theory is a sequence of contravariant functors hi (for integers i) from the category of CW-pairs to the category of abelian groups, together with a natural transformation d: hi(A) → hi+1(X,A) called the boundary homomorphism (writing hi(A) for hi(A,∅)). The axioms are:
- Homotopy: Homotopic maps induce the same homomorphism on cohomology.
- Exactness: Each pair (X,A) induces a long exact sequence in cohomology, via the inclusions f: A → X and g: (X,∅) → (X,A):
- Excision: If X is the union of subcomplexes A and B, then the inclusion f: (A,A∩B) → (X,B) induces an isomorphism for every i.
- Additivity: If (X,A) is the disjoint union of a set of pairs (Xα,Aα), then the inclusions (Xα,Aα) → (X,A) induce an isomorphism to the product group: for every i.
A spectrum determines both a generalized homology theory and a generalized cohomology theory. A fundamental result by Brown, Whitehead, and Adams says that every generalized homology theory comes from a spectrum, and likewise every generalized cohomology theory comes from a spectrum. This generalizes the representability of ordinary cohomology by Eilenberg–MacLane spaces.
A subtle point is that the functor from the stable homotopy category (the homotopy category of spectra) to generalized homology theories on CW-pairs is not an equivalence, although it gives a bijection on isomorphism classes; there are nonzero maps in the stable homotopy category (called phantom maps) that induce the zero map between homology theories on CW-pairs. Likewise, the functor from the stable homotopy category to generalized cohomology theories on CW-pairs is not an equivalence. It is the stable homotopy category, not these other categories, that has good properties such as being triangulated.
If one prefers homology or cohomology theories to be defined on all topological spaces rather than on CW complexes, one standard approach is to include the axiom that every weak homotopy equivalence induces an isomorphism on homology or cohomology. (That is true for singular homology or singular cohomology, but not for sheaf cohomology, for example.) Since every space admits a weak homotopy equivalence from a CW complex, this axiom reduces homology or cohomology theories on all spaces to the corresponding theory on CW complexes.
Some examples of generalized cohomology theories are:
- Stable cohomotopy groups πS*(X). The corresponding homology theory is used more often: stable homotopy groups π*S(X).
- Various different flavors of cobordism groups, based on studying a space by considering all maps from it to manifolds: unoriented cobordism MO*(X), oriented cobordism MSO*(X), complex cobordism MU*(X), and so on. Complex cobordism has turned out to be especially powerful in homotopy theory. It is closely related to formal groups, via a theorem of Daniel Quillen.
- Various different flavors of topological K-theory, based on studying a space by considering all vector bundles over it: KO*(X) (real periodic K-theory), ko*(X) (real connective K-theory), K*(X) (complex periodic K-theory), ku*(X) (complex connective K-theory), and so on.
- Brown–Peterson cohomology, Morava K-theory, Morava E-theory, and other theories built from complex cobordism.
- Various flavors of elliptic cohomology.
Many of these theories carry richer information than ordinary cohomology, but are harder to compute.
A cohomology theory E is said to be multiplicative if E*(X) has the structure of a graded ring for each space X. In the language of spectra, there are several more precise notions of a ring spectrum, such as an E∞ ring spectrum, where the product is commutative and associative in a strong sense.
Other cohomology theories
Cohomology theories in a broader sense (invariants of other algebraic or geometric structures, rather than of topological spaces) include:
- Algebraic K-theory
- André–Quillen cohomology
- BRST cohomology
- Coherent sheaf cohomology
- Crystalline cohomology
- Cyclic cohomology
- Deligne cohomology
- Equivariant cohomology
- Étale cohomology
- Ext groups
- Flat cohomology
- Floer homology
- Galois cohomology
- Group cohomology
- Hochschild cohomology
- Intersection cohomology
- Khovanov homology
- Lie algebra cohomology
- Local cohomology
- Motivic cohomology
- Non-abelian cohomology
- Quantum cohomology
- Hatcher (2001), p. 108.
- Hatcher (2001), Theorem 3.5; Dold (1972), Proposition VIII.3.3 and Corollary VIII.3.4.
- Dold (1972), Propositions IV.8.12 and V.4.11.
- Hatcher (2001), Theorem 3.11.
- Thom (1954), pp. 62–63.
- Thom (1954), Theorem II.29.
- Hatcher (2001), Example 3.16.
- Hatcher (2001), Theorem 3.15.
- Hatcher (2001), Theorem 3.19.
- Hatcher (2001), p. 222.
- Hatcher (2001), Example 3.7.
- Hatcher (2001), p. 186.
- Hatcher (2001), Proposition 3.38.
- May (1999), p. 177.
- Dieudonné (1989), section IV.3.
- Hartshorne (1977), section III.2.
- May (1999), p. 95.
- Switzer (1975), Theorem 9.27; Corollary 14.36; Remarks, p. 117 and p. 331.
- Switzer (1975), 7.68.
- Dieudonné, Jean (1989), History of Algebraic and Differential Topology, Birkhäuser, ISBN 0-8176-3388-X, MR 0995842
- Dold, Albrecht (1972), Lectures on Algebraic Topology, Springer-Verlag, ISBN 978-3-540-58660-9, MR 0415602
- Eilenberg, Samuel; Steenrod, Norman (1952), Foundations of Algebraic Topology, Princeton University Press, ISBN 9780691627236, MR 0050886
- Hartshorne, Robin (1977), Algebraic Geometry, Graduate Texts in Mathematics, 52, New York, Heidelberg: Springer-Verlag, ISBN 0-387-90244-9, MR 0463157
- Hatcher, Allen (2001), Algebraic Topology, Cambridge University Press, ISBN 0-521-79540-0, MR 1867354
- Hazewinkel, Michiel, ed. (2001), "Cohomology", Encyclopedia of Mathematics, Springer, ISBN 978-1-55608-010-4.
- May, J. Peter (1999), A Concise Course in Algebraic Topology (PDF), University of Chicago Press, ISBN 0-226-51182-0, MR 1702278
- Switzer, Robert (1975), Algebraic Topology — Homology and Homotopy, Springer-Verlag, ISBN 3-540-42750-3, MR 0385836
- Thom, René (1954), "Quelques propriétés globales des variétés différentiables", Commentarii Mathematici Helvetici, 28: 17–86, doi:10.1007/BF02566923, MR 0061823