Part III — Algebraic Topology
Based on lectures by O. Randal-Williams
Notes taken by Dexter Chua
Michaelmas 2016
These notes are not endorsed by the lecturers, and I have modified them (often
significantly) after lectures. They are nowhere near accurate representations of what
was actually lectured, and in particular, all errors are almost surely mine.
Algebraic Topology assigns algebraic invariants to topological spaces; it permeates
modern pure mathematics. This course will focus on (co)homology, with an emphasis
on applications to the topology of manifolds. We will cover singular homology and
cohomology, vector bundles and the Thom Isomorphism theorem, and the cohomology
of manifolds up to Poincar´e duality. Time permitting, there will also be some discussion
of characteristic classes and cobordism, and conceivably some homotopy theory.
Pre-requisites
Basic topology: topological spaces, compactness and connectedness, at the level of
Sutherland’s book. The course will not assume any knowledge of Algebraic Topology,
but will go quite fast in order to reach more interesting material, so some previous
exposure to simplicial homology or the fundamental group would be helpful. The Part
III Differential Geometry course will also contain useful, relevant material.
Hatcher’s book is especially recommended for the course, but there are many other
suitable texts.
Contents
1 Homotopy
2 Singular (co)homology
2.1 Chain complexes
2.2 Singular (co)homology
3 Four major tools of (co)homology
3.1 Homotopy invariance
3.2 Mayer-Vietoris
3.3 Relative homology
3.4 Excision theorem
3.5 Applications
3.6 Repaying the technical debt
4 Reduced homology
5 Cell complexes
6 (Co)homology with coefficients
7 Euler characteristic
8 Cup product
9 K¨unneth theorem and universal coefficients theorem
10 Vector bundles
10.1 Vector bundles
10.2 Vector bundle orientations
10.3 The Thom isomorphism theorem
10.4 Gysin sequence
11 Manifolds and Poincar´e duality
11.1 Compactly supported cohomology
11.2 Orientation of manifolds
11.3 Poincar´e duality
11.4 Applications
11.5 Intersection product
11.6 The diagonal
11.7 Lefschetz fixed point theorem
1 Homotopy
In this course, the word “map” will always mean “continuous function”.
In topology, we study spaces up to “continuous deformation”. Famously, a
coffee mug can be continuously deformed into a doughnut, and thus they are
considered to be topologically the same. Now we also talk about maps between
topological spaces. So a natural question is if it makes sense to talk about the
continuous deformations of maps. It turns out it does, and the definition is
sort-of the obvious one:
Definition
(Homotopy)
.
Let
X, Y
be topological spaces. A homotopy between
f
0
, f
1
:
X → Y
is a map
F
: [0
,
1]
× X → Y
such that
F
(0
, x
) =
f
0
(
x
) and
F
(1
, x
) =
f
1
(
x
). If such an
F
exists, we say
f
0
is homotopic to
f
1
, and write
f
0
' f
1
.
This ' defines an equivalence relation on the set of maps from X to Y .
Just as concepts in topology are invariant under homeomorphisms, it turns
out the theories we develop in algebraic topology are invariant under homotopies,
i.e. homotopic maps “do the same thing”. This will be made more precise later.
Under this premise, if we view homotopic functions as “the same”, then we
have to enlarge our notion of isomorphism to take this into account. To do
so, we just write down the usual definition of isomorphism, but with equality
replaced with homotopy.
Definition
(Homotopy equivalence)
.
A map
f
:
X → Y
is a homotopy equiva-
lence if there is some
g
:
Y → X
such that
f ◦ g ' id
Y
and
g ◦ f ' id
X
. We call
g a homotopy inverse to f.
As always, homotopy equivalence is an equivalence relation. This relies on
the following straightforward property of homotopy:
Proposition.
If
f
0
' f
1
:
X → Y
and
g
0
' g
1
:
Y → Z
, then
g
0
◦ f
0
' g
1
◦ f
1
:
X → Z.
X Y Z
f
0
f
1
g
0
g
1
Example
(Stupid example)
.
If
f
:
X → Y
is a homeomorphism, then it is a
homotopy equivalence — we take the actual inverse for the homotopy inverse,
since equal functions are homotopic.
Example
(Interesting example)
.
Let
i
:
{
0
} → R
n
be the inclusion map. To
show this is a homotopy equivalence, we have to find a homotopy inverse.
Fortunately, there is only one map
R
n
→ {
0
}
, namely the constant function 0.
We call this
r
:
R
n
→ {
0
}
. The composition
r ◦ i
:
{
0
} → {
0
}
is exactly the
identity. So this is good.
In the other direction, the map
i ◦ r
:
R
n
→ R
n
sends everything to 0. We
need to produce a homotopy to the identity. We let F : [0, 1] × R
n
→ R
n
be
F (t, v) = tv.
We have
F
(0
, v
) = 0 and
F
(1
, v
) =
v
. So this is indeed a homotopy from
i ◦ r
to id
R
n
.
So from the point of view of homotopy, the one-point space
{
0
}
is the same
as R
n
! So dimension, or even cardinality, is now a meaningless concept.
Example
(Also interesting example)
.
Let
S
n
⊆ R
n+1
be the unit sphere, and
i
:
S
n
→ R
n+1
\ {
0
}
. We show that this is a homotopy equivalence. We define
r : R
n+1
\ {0} → S
n
by
r(v) =
v
kvk
.
Again, we have
r ◦ i
=
id
S
n
. In the other direction, we need to construct a path
from each v to
v
kvk
in a continuous way. We could do so by
H : [0, 1] × (R
n+1
\ {0}) → R
n+1
\ {0}
(t, v) 7→ (1 − t)v + t
v
kvk
.
We can easily check that this is a homotopy from id
R
n+1
\{0}
to i ◦ r.
Again, homotopy equivalence allowed us to squash down one dimension of
R
n+1
\ {
0
}
to get
S
n
. However, there is one thing we haven’t gotten rid of —
the hole. It turns out what is preserved by homotopy equivalence is exactly the
holes.
Now we might ask ourselves — can we distinguish holes of “different dimen-
sion”? For
n 6
=
m
, is
S
n
homotopy equivalent to
S
m
? If we try hard to construct
homotopies, we will always fail, and then we would start to think that maybe
they aren’t homotopy equivalent. However, at this point, we do not have any
tools we can use the prove this.
The solution is algebraic topology. The idea is that we assign algebraic
objects to each topological space in a way that is homotopy-invariant. We then
come up with tools to compute these algebraic invariants. Then if two spaces
are assigned different algebraic objects, then we know they cannot be homotopy
equivalent.
What is this good for? At this point, you might not be convinced that it
is a good idea to consider spaces up to homotopy equivalence only. However,
algebraic topology can also help us show that spaces are not homeomorphic.
After all, homeomorphic spaces are also homotopy equivalent. For example,
suppose we want to show that if
R
n
∼
=
R
m
, then
n
=
m
. Algebraic topology
doesn’t help us directly, because both
R
n
and
R
m
are homotopy equivalent to a
point. Instead, we do the slightly sneaky thing of removing a point. If
R
n
∼
=
R
m
,
then it must also be the case that
R
n
\{
0
}
∼
=
R
m
\{
0
}
. Since these are homotopy
equivalent to
S
n−1
and
S
m−1
, this implies that
S
n−1
' S
m−1
are homotopy
equivalent. By algebraic topology, we will show that that this can only happen
if
m
=
n
. So indeed we can recover the notion of dimension using algebraic
topology!
2 Singular (co)homology
2.1 Chain complexes
This course is called algebraic topology. We’ve already talked about some
topology, so let’s do some algebra. We will just write down a bunch of definitions,
which we will get to use in the next chapter to define something useful.
Definition
(Chain complex)
.
A chain complex is a sequence of abelian groups
and homomorphisms
· · · C
3
C
2
C
1
C
0
0
d
3
d
2
d
1
d
0
such that
d
i
◦ d
i+1
= 0
for all i.
Very related to the notion of a chain complex is a cochain complex, which is
the same thing with the maps the other way.
Definition
(Cochain complex)
.
A cochain complex is a sequence of abelian
groups and homomorphisms
0 C
0
C
1
C
2
C
3
· · ·
d
0
d
1
d
2
such that
d
i+1
◦ d
i
= 0
for all i.
Note that each of the maps d is indexed by the number of its domain.
Definition (Differentials). The maps d
i
and d
i
are known as differentials.
Eventually, we will get lazy and just write all the differentials as d.
Given a chain complex, the only thing we know is that the composition of
any two maps is zero. In other words, we have
im d
i+1
⊆ ker d
i
. We can then
ask how good this containment is. Is it that
im d
i+1
=
ker d
i
, or perhaps that
ker d
i
is huge but
im d
i+1
is trivial? The homology or cohomology measures
what happens.
Definition (Homology). The homology of a chain complex C
·
is
H
i
(C
·
) =
ker(d
i
: C
i
→ C
i−1
)
im(d
i+1
: C
i+1
→ C
i
)
.
An element of H
i
(C
·
) is known as a homology class.
Dually, we have
Definition (Cohomology). The cohomology of a cochain complex C
·
is
H
i
(C
·
) =
ker(d
i
: C
i
→ C
i+1
)
im(d
i−1
: C
i−1
→ C
i
)
.
An element of H
i
(C
·
) is known as a cohomology class.
More names:
Definition
(Cycles and cocycles)
.
The elements of
ker d
i
are the cycles, and
the elements of ker d
i
are the cocycles.
Definition
(Boundaries and coboundaries)
.
The elements of
im d
i
are the
boundaries, and the elements of im d
i
are the coboundaries.
As always, we want to talk about maps between chain complexes. These are
known as chain maps.
Definition
(Chain map)
.
If (
C
·
, d
C
·
) and (
D
·
, d
D
·
) are chain complexes, then a
chain map
C
·
→ D
·
is a collection of homomorphisms
f
n
:
C
n
→ D
n
such that
d
D
n
◦ f
n
=
f
n−1
◦ d
C
n
. In other words, the following diagram has to commute for
all n:
C
n
D
n
C
n−1
D
n−1
f
n
d
C
n
d
D
n
f
n−1
There is an obvious analogous definition for cochain maps between cochain
complexes.
Lemma.
If
f
·
:
C
·
→ D
·
is a chain map, then
f
∗
:
H
n
(
C
·
)
→ H
n
(
D
·
) given
by [
x
]
7→
[
f
n
(
x
)] is a well-defined homomorphism, where
x ∈ C
n
is any element
representing the homology class [x] ∈ H
n
(C
·
).
Proof.
Before we check if it is well-defined, we first need to check if it is defined
at all! In other words, we need to check if
f
n
(
x
) is a cycle. Suppose
x ∈ C
n
is a
cycle, i.e. d
C
n
(x) = 0. Then we have
d
D
n
(f
n
(x)) = f
n−1
(d
C
n
(x)) = f
n−1
(0) = 0.
So f
n
(x) is a cycle, and it does represent a homology class.
To check this is well-defined, if [
x
] = [
y
]
∈ H
n
(
C
·
), then
x − y
=
d
C
n+1
(
z
) for
some
z ∈ C
n+1
. So
f
n
(
x
)
− f
n
(
y
) =
f
n
(
d
C
n+1
(
z
)) =
d
D
n+1
(
f
n+1
(
z
)) is a boundary.
So we have [f
n
(x)] = [f
n
(y)] ∈ H
n
(D
·
).
2.2 Singular (co)homology
The idea now is that given any space
X
, we construct a chain complex
C
·
(
X
),
and for any map
f
:
X → Y
, we construct a chain map
f
·
:
C
·
(
X
)
→ C
·
(
Y
). We
then take the homology of these, so that we get some homology groups
H
∗
(
X
)
for each space X, and a map f
∗
: H
∗
(X) → H
∗
(Y ) for each map f : X → Y .
There are many ways we can construct a chain complex
C
·
(
X
) from a space
X. The way we are going to define the chain complex is via singular homology.
The advantage of this definition is that it is obviously a property just of the
space
X
itself, whereas in other definitions, we need to pick, say, a triangulation
of the space, and then work hard to show that the homology does not depend
on the choice of the triangulation.
The disadvantage of singular homology is that the chain complexes
C
·
(
X
)
will be huge (and also a bit scary). Except for the case of a point (or perhaps
a few points), it is impossible to actually write down what
C
·
(
X
) looks like
and use that to compute the homology groups. Instead, we are going to play
around with the definition and prove some useful results that help us compute
the homology groups indirectly.
Later, for a particular type of spaces known as CW complexes, we will come
up with a different homology theory where the
C
·
(
X
) are actually nice and
small, so that we can use it to compute the homology groups directly. We will
prove that this is equivalent to singular homology, so that this also provides an
alternative method of computing homology groups.
Everything we do can be dualized to talk about cohomology instead. Most of
the time, we will just write down the result for singular homology, but analogous
results hold for singular cohomology as well. However, later on, we will see that
there are operations we can perform on cohomology groups only, which makes
them better, and the interaction between homology and cohomology will become
interesting when we talk about manifolds at the end of the course.
We start with definitions.
Definition (Standard n-simplex). The standard n-simplex is
∆
n
=
n
(t
0
, · · · , t
n
) ∈ R
n+1
: t
i
≥ 0,
X
t
i
= 1
o
.
We notice that ∆
n
has n + 1 “faces”.
Definition (Face of standard simplex). The ith face of ∆
n
is
∆
n
i
= {(t
0
, · · · , t
n
) ∈ ∆
n
: t
i
= 0}.
Example. The faces of ∆
1
are labelled as follows:
t
0
t
1
∆
1
∆
1
1
∆
1
0
We see that the
i
th face of ∆
n
looks like the standard (
n −
1)-simplex. Of
course, it is just homeomorphic to it, with the map given by
δ
i
: ∆
n−1
→ ∆
n
(t
0
, · · · , t
n−1
) 7→ (t
0
, · · · , t
i−1
, 0, t
i
, · · · , t
n−1
)
This is a homeomorphism onto ∆
n
i
. We will make use of these maps to define
our chain complex.
The idea is that we will look at subspaces of
X
that “look like” these standard
n-simplices.
Definition
(Singular
n
-simplex)
.
Let
X
be a space. Then a singular
n
-simplex
in X is a map σ : ∆
n
→ X.
Example.
The inclusion of the standard
n
-simplex into
R
n+1
is a singular
simplex, but so is the constant map to any point in
X
. So the singular
n
-
simplices can be stupid.
Given a space
X
, we obtain a set of singular
n
-simplices. To talk about
homology, we need to have an abelian group. We do the least imaginative thing
ever:
Definition
(Singular chain complex)
.
We let
C
n
(
X
) be the free abelian group
on the set of singular n-simplices in X. More explicitly, we have
C
n
(X) =
n
X
n
σ
σ : σ : ∆
n
→ X, n
σ
∈ Z, only finitely many n
σ
non-zero
o
.
We define d
n
: C
n
(X) → C
n−1
(X) by
σ 7→
n
X
i=0
(−1)
i
σ ◦ δ
i
,
and then extending linearly.
Note that it is essential that we insert those funny negative signs. Indeed, if
the signs weren’t there, then all terms in
d
(
d
(
σ
)) would have positive coefficients,
and there is no hope that they all cancel. Intuitively, we can think of these signs
as specifying the “orientation” of the faces. For example, if we have a line
then after taking
d
, one vertex would have a positive sign, and the other would
have a negative sign.
Now we actually check that this indeed gives us a chain complex. The key
tool is the following unexciting result:
Lemma. If i < j, then δ
j
◦ δ
i
= δ
i
◦ δ
j−1
: ∆
n−2
→ ∆
n
.
Proof. Both send (t
0
, · · · , t
n−2
) to
(t
0
, · · · , t
i−1
, 0, t
i
, · · · , t
j−2
, 0, t
j−1
, · · · , t
n−2
).
Corollary. The homomorphism d
n−1
◦ d
n
: C
n
(X) → C
n−2
(X) vanishes.
Proof. It suffices to check this on each basis element σ : ∆
n
→ X. We have
d
n−1
◦ d
n
(σ) =
n−1
X
i=0
(−1)
i
n
X
j=0
(−1)
j
σ ◦ δ
j
◦ δ
i
.
We use the previous lemma to split the sum up into i < j and i ≥ j:
=
X
i<j
(−1)
i+j
σ ◦ δ
j
◦ δ
i
+
X
i≥j
(−1)
i+j
σ ◦ δ
j
◦ δ
i
=
X
i<j
(−1)
i+j
σ ◦ δ
i
◦ δ
j−1
+
X
i≥j
(−1)
i+j
σ ◦ δ
j
◦ δ
i
=
X
i≤j
(−1)
i+j+1
σ ◦ δ
i
◦ δ
j
+
X
i≥j
(−1)
i+j
σ ◦ δ
j
◦ δ
i
= 0.
So the data
d
n
:
C
n
(
X
)
→ C
n−1
(
X
) is indeed a chain complex. The only
thing we can do to a chain complex is to take its homology!
Definition
(Singular homology)
.
The singular homology of a space
X
is the
homology of the chain complex C
·
(X):
H
i
(X) = H
i
(C
·
(X), d
·
) =
ker(d
i
: C
i
(X) → C
i−1
(X))
im(d
i+1
: C
i+1
(X) → C
i
(X))
.
We will also talk about the “dual” version of this:
Definition (Singular cohomology). We define the dual cochain complex by
C
n
(X) = Hom(C
n
(X), Z).
We let
d
n
: C
n
(X) → C
n+1
(X)
be the adjoint to d
n+1
, i.e.
(ϕ : C
n
(X) → Z) 7→ (ϕ ◦ d
n+1
: C
n+1
(X) → Z).
We observe that
0 C
0
(X) C
1
(X) · · ·
d
0
is indeed a cochain complex, since
d
n+1
(d
n
(ϕ)) = ϕ ◦ d
n+1
◦ d
n+2
= ϕ ◦ 0 = 0.
The singular cohomology of X is the cohomology of this cochain complex, i.e.
H
i
(X) = H
i
(C
·
(X), d
·
) =
ker(d
i
: C
i
(X) → C
i+1
(X))
im(d
i−1
: C
i−1
(X) → C
i
(X))
.
Note that in general, it is not true that
H
n
(
X
) =
Hom
(
H
n
(
X
)
, Z
). Thus,
dualizing and taking homology do not commute with each other. However, we
will later come up with a relation between the two objects.
The next thing to show is that maps of spaces induce chain maps, hence
maps between homology groups.
Proposition.
If
f
:
X → Y
is a continuous map of topological spaces, then the
maps
f
n
: C
n
(X) → C
n
(Y )
(σ : ∆
n
→ X) 7→ (f ◦ σ : ∆
n
→ Y )
give a chain map. This induces a map on the homology (and cohomology).
Proof.
To see that the
f
n
and
d
n
commute, we just notice that
f
n
acts by
composing on the left, and
d
n
acts by composing on the right, and these two
operations commute by the associativity of functional composition.
Now if in addition we have a map
g
:
Y → Z
, then we obtain two maps
H
n
(X) → H
n
(Z) by
H
n
(X) H
n
(Z)
H
n
(Y )
(g◦f)
∗
f
∗
g
∗
.
By direct inspection of the formula, we see that this diagram commutes. In
equation form, we have
(g ◦ f)
∗
= g
∗
◦ f
∗
.
Moreover, we trivially have
(id
X
)
∗
= id
H
n
(X)
: H
n
(X) → H
n
(X).
Thus we deduce that
Proposition.
If
f
:
X → Y
is a homeomorphism, then
f
∗
:
H
n
(
X
)
→ H
n
(
Y
)
is an isomorphism of abelian groups.
Proof.
If
g
:
Y → X
is an inverse to
f
, then
g
∗
is an inverse to
f
∗
, as
f
∗
◦ g
∗
=
(f ◦ g)
∗
= (id)
∗
= id, and similarly the other way round.
If one is taking category theory, what we have shown is that
H
∗
is a func-
tor, and the above proposition is just the usual proof that functors preserve
isomorphisms.
This is not too exciting. We will later show that homotopy equivalences
induce isomorphisms of homology groups, which is much harder.
Again, we can dualize this to talk about cohomology. Applying
Hom
(
· , Z
) to
f
·
: C
·
(X) → C
·
(Y ) gives homomorphisms f
n
: C
n
(Y ) → C
n
(X) by mapping
(ϕ : C
n
(Y ) → Z) 7→ (ϕ ◦ f
n
: C
n
(X) → Z).
Note that this map goes the other way! Again, this is a cochain map, and induces
maps f
∗
: H
n
(Y ) → H
n
(X).
How should we think about singular homology? There are two objects
involved — cycles and boundaries. We will see that cycles in some sense “detect
holes”, and quotienting out by boundaries will help us identify cycles that detect
the same hole.
Example. We work with the space that looks like this:
Suppose we have a single chain complex
σ
: ∆
1
→ X
. Then its boundary
d
1
(
σ
) =
σ
(1)
− σ
(0). This is in general non-zero, unless we have
σ
(0) =
σ
(1). In
other words, this has to be a loop!
σ
So the 1-cycles represented by just one element are exactly the loops.
How about more complicated cycles? We could have, say, four 1-simplices
σ
1
, σ
2
, σ
3
, σ
4
.
σ
1
σ
2
σ
3
σ
4
In this case we have
σ
1
(1) = σ
2
(0)
σ
2
(1) = σ
3
(0)
σ
3
(1) = σ
4
(0)
σ
4
(1) = σ
1
(0)
Thus, we have
σ
1
+
σ
2
+
σ
3
+
σ
4
∈ C
1
(
X
). We can think of these cycles as
detecting the holes by surrounding them.
However, there are some stupid cycles:
These cycles don’t really surround anything. The solution is that these cycles
are actually boundaries, as it is the boundary of the 2-simplex that fills the
region bounded by the loop (details omitted).
Similarly, the boundaries also allow us to identify two cycles that surround
the same hole, so that we don’t double count:
This time, the difference between the two cycles is the boundary of the 2-simplex
given by the region in between the two loops.
Of course, some work has to be done to actually find a 2-simplex whose
boundary is the difference of the two loops above, and in fact we will have to
write the region as the sum of multiple 2-simplices for this to work. However,
this is just to provide intuition, not a formal proof.
We now do some actual computations. If we want to compute the homology
groups directly, we need to know what the
C
·
(
X
) look like. In general, this is
intractable, unless we have the very simple case of a point:
Example. Consider the one-point space pt = {∗}. We claim that
H
n
(pt) = H
n
(pt) =
(
Z n = 0
0 n > 0
.
To see this, we note that there is always a single singular
n
-simplex
σ
n
: ∆
n
→ pt
.
So C
n
(pt) = Z, and is generated by σ
n
. Now note that
d
n
(σ
n
) =
n
X
i=0
(−1)
i
σ
n
δ
i
=
(
σ
n−1
n even
0 n odd
.
So the singular chain complex looks like
Z Z Z Z Z 0.
1 0 1 0
The homology groups then follow from direct computation. The cohomology
groups are similar.
This result is absolutely unexciting, and it is also almost the only space
whose homology groups we can find at this point. However, we are still capable
of proving the following general result:
Example.
If
X
=
`
α∈I
X
α
is a disjoint union of path components, then each
singular simplex must lie in some X
α
. This implies that
H
n
(X)
∼
=
M
α∈I
H
n
(X
α
).
Now we know how to compute, say, the homology of three points. How
exciting.
Lemma. If X is path-connected and non-empty, then H
0
(X)
∼
=
Z.
Proof. Define a homomorphism ε : C
0
(X) → Z given by
X
n
σ
σ 7→
X
n
σ
.
Then this is surjective. We claim that the composition
C
1
(X) C
0
(X) Z
d ε
is zero. Indeed, each simplex has two ends, and a
σ
: ∆
1
→ X
is mapped to
σ ◦ δ
0
− σ ◦ δ
1
, which is mapped by ε to 1 − 1 = 0.
Thus, we know that
ε
(
σ
) =
ε
(
σ
+
dτ
) for any
σ ∈ C
0
(
X
) and
τ ∈ C
1
(
X
). So
we obtain a well-defined map
ε
:
H
0
(
X
)
→ Z
mapping [
x
]
7→ ε
(
x
), and this is
surjective as X is non-empty.
So far, this is true for a general space. Now we use the path-connectedness
condition to show that this map is indeed injective. Suppose
P
n
σ
σ ∈ C
0
(
X
)
lies in
ker ε
. We choose an
x
0
∈ X
. As
X
is path-connected, for each of ∆
0
→ X
we can choose a path τ
σ
: ∆
1
→ X with τ
σ
◦ δ
0
= σ and τ
σ
◦ δ
1
= x
0
.
Given these 1-simplices, we can form a 1-chain
P
n
σ
τ
σ
∈ C
1
(X), and
d
1
X
n
σ
τ
σ
=
X
n
σ
(σ + x
0
) =
X
n
σ
· σ −
X
n
σ
x
0
.
Now we use the fact that
P
n
σ
= 0. So
P
n
σ
· σ
is a boundary. So it is zero in
H
0
(X).
Combining with the coproduct formula, we have
Proposition.
For any space
X
, we have
H
0
(
X
) is a free abelian group generated
by the path components of X.
These are pretty much the things we can do by hand. To do more things, we
need to use some tools.
3 Four major tools of (co)homology
We now state four major properties of cohomology. At the end, we will use these
properties to compute a lot of homology groups. The proofs are long and boring,
so we postpone them until we have gone through the properties and enjoyed
some applications of them.
3.1 Homotopy invariance
The first result is pretty easy to state, but it is a really powerful result that
really drives what we are doing:
Theorem
(Homotopy invariance theorem)
.
Let
f ' g
:
X → Y
be homotopic
maps. Then they induce the same maps on (co)homology, i.e.
f
∗
= g
∗
: H
·
(X) → H
·
(Y )
and
f
∗
= g
∗
: H
·
(Y ) → H
·
(X).
Corollary.
If
f
:
X → Y
is a homotopy equivalence, then
f
∗
:
H
·
(
X
)
→ H
·
(
Y
)
and f
∗
: H
·
(Y ) → H
·
(X) are isomorphisms.
Proof. If g : Y → X is a homotopy inverse, then
g
∗
◦ f
∗
= (g ◦ f)
∗
= (id
X
)
∗
= id
H
·
(X)
.
Similarly, we have
f
∗
◦ g
∗
= (
id
Y
)
∗
=
id
H
·
(Y )
. So
f
∗
is an isomorphism with an
inverse g
∗
.
The case for cohomology is similar.
Since we know that
R
n
is homotopy equivalent to a point, it immediately
follows that:
Example. We have
H
n
(R
n
) = H
n
(R
n
) =
(
Z n = 0
0 n > 0
.
3.2 Mayer-Vietoris
The next tool is something that allows us to compute (co)homology by computing
the (co)homology of smaller subspaces. Unfortunately, the result doesn’t just
say we can directly add the cohomologies, or anything like that. Instead, the
information is encoded in an exact sequence.
Definition (Exact sequence). We say a pair of homomorphisms
A B C
f g
is exact at B if im(f) = ker(g).
We say a sequence
· · · X
0
X
1
X
2
· · ·
is exact if it is exact at each X
n
.
Example. If
0 A B 0
f
.
is exact, then f is an isomorphism.
Definition
(Short exact sequence)
.
A short exact sequence is a sequence of the
form
0 A B C 0 .
It is an easy consequence of the first isomorphism theorem that
Lemma. In a short exact sequence
0 A B C 0
f g
,
the map f is injective; g is surjective, and C
∼
=
B/A.
Example. Consider the sequence
0 Z/nZ A Z/mZ 0
There are many possible values of
A
. A few obvious examples are
A
=
Z/nmZ
and
A
=
Z/nZ ⊕ Z/mZ
. If
n
and
m
are not coprime, then these are different
groups.
Many of the important theorems for computing homology groups tell us that
the homology groups of certain spaces fall into some exact sequence, and we
have to try figure out what the groups are.
Theorem
(Mayer-Vietoris theorem)
.
Let
X
=
A ∪ B
be the union of two open
subsets. We have inclusions
A ∩ B A
B X
i
A
i
B
j
A
j
B
.
Then there are homomorphisms
∂
MV
:
H
n
(
X
)
→ H
n−1
(
A ∩ B
) such that the
following sequence is exact:
H
n
(A ∩ B) H
n
(A) ⊕ H
n
(B) H
n
(X)
H
n−1
(A ∩ B) H
n−1
(A) ⊕ H
n−1
(B) H
n−1
(X) · · ·
· · · H
0
(A) ⊕ H
0
(B) H
0
(X) 0
∂
MV
i
A∗
⊕i
B∗
j
A∗
−j
B∗
∂
MV
i
A∗
⊕i
B∗
j
A∗
−j
B∗
j
A∗
−j
B∗
Furthermore, the Mayer-Vietoris sequence is natural, i.e. if
f
:
X
=
A ∪ B →
Y = U ∪ V satisfies f (A) ⊆ U and f(B) ⊆ V , then the diagram
H
n+1
(X) H
n
(A ∩ B) H
n
(A) ⊕ H
n
(B) H
n
(X)
H
n+1
(Y ) H
n
(U ∩ V ) H
n
(U) ⊕ H
n
(V ) H
n
(Y )
∂
MV
f
∗
i
A∗
⊕i
B∗
f|
A∩B∗
j
A∗
−j
B∗
f|
A∗
⊕f|
B∗
f
∗
∂
MV
i
U∗
⊕i
V ∗
j
U∗
−j
V ∗
commutes.
For certain elements of
H
n
(
X
), we can easily specify what
∂
MV
does to it.
The meat of the proof is to show that every element of
H
n
(
X
) can be made to
look like that. If [
a
+
b
]
∈ H
n
(
X
) is such that
a ∈ C
n
(
A
) and
b ∈ C
n
(
B
), then
the map ∂
MV
is specified by
∂
MV
([a + b]) = [d
n
(a)] = [−d
n
(b)] ∈ H
n−1
(A ∩ B).
To see this makes sense, note that we have
d
n
(
a
+
b
) = 0. So
d
n
(
a
) =
−d
n
(
b
).
Moreover, since
a ∈ C
n
(
A
), we have
d
n
(
a
)
∈ C
n−1
(
A
). Similarly,
d
n
(
b
)
∈
C
n−1
(B). So d
n
(a) = −d
n
(b) ∈ C
n−1
(A) ∩ C
n−1
(B) = C
n−1
(A ∩ B).
3.3 Relative homology
The next result again gives us another exact sequence. This time, the exact
sequence involves another quantity known as relative homology.
Definition
(Relative homology)
.
Let
A ⊆ X
. We write
i
:
A → X
for the
inclusion map. Then the map
i
n
:
C
n
(
A
)
→ C
n
(
X
) is injective as well, and we
write
C
n
(X, A) =
C
n
(X)
C
n
(A)
.
The differential
d
n
:
C
n
(
X
)
→ C
n−1
(
X
) restricts to a map
C
n
(
A
)
→ C
n−1
(
A
),
and thus gives a well-defined differential d
n
: C
n
(X, A) → C
n−1
(X, A), sending
[c] 7→ [d
n
(c)]. The relative homology is given by
H
n
(X, A) = H
n
(C
·
(X, A)).
We think of this as chains in
X
where we ignore everything that happens in
A.
Theorem
(Exact sequence for relative homology)
.
There are homomorphisms
∂ : H
n
(X, A) → H
n−1
(A) given by mapping
[c]
7→ [d
n
c].
This makes sense because if
c ∈ C
n
(
X
), then [
c
]
∈ C
n
(
X
)
/C
n
(
A
). We know
[
d
n
c
] = 0
∈ C
n−1
(
X
)
/C
n−1
(
A
). So
d
n
c ∈ C
n−1
(
A
). So this notation makes
sense.
Moreover, there is a long exact sequence
· · · H
n
(A) H
n
(X) H
n
(X, A)
H
n−1
(A) H
n−1
(X) H
n−1
(X, A) · · ·
· · · H
0
(X) H
0
(X, A) 0
∂
i
∗
q
∗
∂
i
∗
q
∗
q
∗
,
where
i
∗
is induced by
i
:
C
·
(
A
)
→ C
·
(
X
) and
q
∗
is induced by the quotient
q : C
·
(X) → C
·
(X, A).
This, again, is natural. To specify the naturality condition, we need the
following definition:
Definition
(Map of pairs)
.
Let (
X, A
) and (
Y, B
) be topological spaces with
A ⊆ X and B ⊆ Y . A map of pairs is a map f : X → Y such that f(A) ⊆ B.
Such a map induces a map
f
∗
:
H
n
(
X, A
)
→ H
n
(
Y, B
), and the exact sequence
for relative homology is natural for such maps.
3.4 Excision theorem
Now the previous result is absolutely useless, because we just introduced a new
quantity
H
n
(
X, A
) we have no idea how to compute again. The main point of
relative homology is that we want to think of
H
n
(
X, A
) as the homology of
X
when we ignore
A
. Thus, one might expect that the relative homology does
not depend on the things “inside
A
”. However, it is not true in general that,
say,
H
n
(
X, A
) =
H
n
(
X \ A
). Instead, what we are allowed to do is to remove
subspaces of A that are “not too big”. This is given by excision:
Theorem
(Excision theorem)
.
Let (
X, A
) be a pair of spaces, and
Z ⊆ A
be
such that Z ⊆
˚
A (the closure is taken in X). Then the map
H
n
(X \ Z, A \ Z) → H
n
(X, A)
is an isomorphism.
X
A
Z
While we’ve only been talking about homology, everything so far holds anal-
ogously for cohomology too. It is again homotopy invariant, and there is a
Mayer-Vietoris sequence (with maps
∂
MV
:
H
n
(
A ∩ B
)
→ H
n+1
(
X
)). The rela-
tive cohomology is defined by
C
·
(
X, A
) =
Hom
(
C
·
(
X, A
)
, Z
) and so
H
∗
(
X, A
)
is the cohomology of that. Similarly, excision holds.
3.5 Applications
We now use all these tools to do lots of computations. The first thing we compute
will be the homology of spheres.
Theorem. We have
H
i
(S
1
) =
(
Z i = 0, 1
0 otherwise
.
Proof. We can split S
1
up as
A
B
qp
We want to apply Mayer-Vietoris. We have
A
∼
=
B
∼
=
R ' ∗, A ∩ B
∼
=
R
a
R ' {p}
a
{q}.
We obtain
0 0
· · · H
1
(A ∩ B) H
1
(A) ⊕ H
1
(B) H
1
(S
1
)
H
0
(A ∩ B) H
0
(A) ⊕ H
0
(B) H
0
(S
1
) 0
Z ⊕ Z Z ⊕ Z Z
∂
i
A∗
⊕i
B∗
Notice that the map into
H
1
(
S
1
) is zero. So the kernel of
∂
is trivial, i.e.
∂
is an
injection. So
H
1
(
S
1
) is isomorphic to the image of
∂
, which is, by exactness, the
kernel of i
A∗
⊕ i
B∗
. So we want to know what this map does.
We know that
H
0
(
A ∩ B
)
∼
=
Z ⊕ Z
is generated by
p
and
q
, and the inclusion
map sends each of
p
and
q
to the unique connected components of
A
and
B
. So
the homology classes are both sent to (1
,
1)
∈ H
0
(
A
)
⊕ H
0
(
B
)
∼
=
Z ⊕ Z
. We then
see that the kernel of
i
A∗
⊕ i
B∗
is generated by (
p − q
), and is thus isomorphic
to Z. So H
1
(S
1
)
∼
=
Z.
By looking higher up the exact sequence, we see that all other homology
groups vanish.
We can do the sphere in general in the same way.
Theorem. For any n ≥ 1, we have
H
i
(S
n
) =
(
Z i = 0, n
0 otherwise
.
Proof. We again cut up S
n
as
A = S
n
\ {N}
∼
=
R
n
' ∗,
B = S
n
\ {S}
∼
=
R
n
' ∗,
where N and S are the north and south poles. Moreover, we have
A ∩ B
∼
=
R × S
n−1
' S
n−1
So we can “induct up” using the Mayer-Vietoris sequence:
· · · H
i
(S
n−1
) H
i
(∗) ⊕ H
i
(∗) H
i
(S
n
)
H
i−1
(S
n−1
) H
i−1
(∗) ⊕ H
i−1
(∗) H
i−1
(S
n
) · · ·
∂
Now suppose
n ≥
2, as we already did
S
1
already. If
i >
1, then
H
i
(
∗
) = 0 =
H
i−1
(∗). So the Mayer-Vietoris map
H
i
(S
n
) H
i−1
(S
n−1
)
∂
is an isomorphism.
All that remains is to look at
i
= 0
,
1. The
i
= 0 case is trivial. For
i
= 1,
we look at
0
· · · H
1
(∗) ⊕ H
1
(∗) H
1
(S
n
)
H
0
(S
n−1
) H
0
(∗) ⊕ H
0
(∗) H
0
(S
n
) 0
Z Z ⊕ Z Z
∂
f
To conclude that
H
1
(
S
n
) is trivial, it suffices to show that the map
f
is injective.
By picking the canonical generators, it is given by 1
7→
(1
,
1). So we are done.
Corollary.
If
n 6
=
m
, then
S
n−1
6' S
m−1
, since they have different homology
groups.
Corollary. If n 6= m, then R
n
6
∼
=
R
m
.
Now suppose we have a map
f
:
S
n
→ S
n
. As always, it induces a map
f
∗
:
H
n
(
S
n
)
→ H
n
(
S
n
). Since
H
n
(
S
n
)
∼
=
Z
, we know the map
f
∗
is given by
multiplication by some integer. We call this the degree of the map f.
Definition
(Degree of a map)
.
Let
f
:
S
n
→ S
n
be a map. The degree
deg
(
f
)
is the unique integer such that under the identification
H
n
(
S
n
)
∼
=
Z
, the map
f
∗
is given by multiplication by deg(f).
In particular, for n = 1, the degree is the winding number.
Note that there are two ways we can identify
H
n
(
S
n
) and
Z
, which differ by
a sign. For the degree to be well-defined, and not just defined up to a sign, we
must ensure that we identify both H
n
(S
n
) in the same way.
Using the degree, we can show that certain maps are not homotopic to each
other. We first note the following elementary properties:
Proposition.
(i) deg(id
S
n
) = 1.
(ii) If f is not surjective, then deg(f) = 0.
(iii) We have deg(f ◦ g) = (deg f )(deg g).
(iv) Homotopic maps have equal degrees.
Proof.
(i) Obvious.
(ii) If f is not surjective, then f can be factored as
S
n
S
n
\ {p} S
n
f
,
where
p
is some point not in the image of
f
. But
S
n
\ {p}
is contractible.
So f
∗
factors as
f
∗
: H
n
(S
n
) H
n
(∗) = 0 H
n
(S
n
) .
So f
∗
is the zero homomorphism, and is thus multiplication by 0.
(iii) This follows from the functoriality of H
n
.
(iv) Obvious as well.
As a corollary, we obtain the renowned Brouwer’s fixed point theorem, a
highly non-constructive fixed point existence theorem proved by a constructivist.
Corollary
(Brouwer’s fixed point theorem)
.
Any map
f
:
D
n
→ D
n
has a fixed
point.
Proof.
Suppose
f
has no fixed point. Define
r
:
D
n
→ S
n−1
=
∂D
n
by taking
the intersection of the ray from f(x) through x with ∂D
n
. This is continuous.
x
f(x)
r(x)
Now if x ∈ ∂D
n
, then r(x) = x. So we have a map
S
n−1
= ∂D
n
D
n
∂D
n
= S
n−1
i r
,
and the composition is the identity. This is a contradiction — contracting
D
n
to a point, this gives a homotopy from the identity map
S
n−1
→ S
n−1
to the
constant map at a point. This is impossible, as the two maps have different
degrees.
A more manual argument to show this would be to apply
H
n−1
to the chain
of maps above to obtain a contradiction.
We know there is a map of degree 1, namely the identity, and a map of degree
0, namely the constant map. How about other degrees?
Proposition.
A reflection
r
:
S
n
→ S
n
about a hyperplane has degree
−
1. As
before, we cover S
n
by
A = S
n
\ {N}
∼
=
R
n
' ∗,
B = S
n
\ {S}
∼
=
R
n
' ∗,
where we suppose the north and south poles lie in the hyperplane of reflection.
Then both A and B are invariant under the reflection. Consider the diagram
H
n
(S
n
) H
n−1
(A ∩ B) H
n−1
(S
n−1
)
H
n
(S
n
) H
n−1
(A ∩ B) H
n−1
(S
n−1
)
∂
MV
∼
r
∗
r
∗
∼
r
∗
∂
MV
∼ ∼
where the S
n−1
on the right most column is given by contracting A ∩ B to the
equator. Note that
r
restricts to a reflection on the equator. By tracing through
the isomorphisms, we see that
deg
(
r
) =
deg
(
r|
equator
). So by induction, we only
have to consider the case when n = 1. Then we have maps
0 H
1
(S
1
) H
0
(A ∩ B) H
0
(A) ⊕ H
0
(B)
0 H
1
(S
1
) H
0
(A ∩ B) H
0
(A) ⊕ H
0
(B)
∂
MV
∼
r
∗
r
∗
r
∗
⊕r
∗
∂
MV
∼
Now the middle vertical map sends
p 7→ q
and
q 7→ p
. Since
H
1
(
S
1
) is given by
the kernel of
H
0
(
A ∩ B
)
→ H
0
(
A
)
⊕ H
0
(
B
), and is generated by
p − q
, we see
that this sends the generator to its negation. So this is given by multiplication
by −1. So the degree is −1.
Corollary. The antipodal map a : S
n
→ S
n
given by
a(x
1
, · · · , x
n+1
) = (−x
1
, · · · , −x
n+1
)
has degree (−1)
n+1
because it is a composition of (n + 1) reflections.
Corollary
(Hairy ball theorem)
. S
n
has a nowhere 0 vector field iff
n
is odd.
More precisely, viewing
S
n
⊆ R
n+1
, a vector field on
S
n
is a map
v
:
S
n
→ R
n+1
such that hv(x), xi = 0, i.e. v(x) is perpendicular to x.
Proof. If n is odd, say n = 2k − 1, then
v(x
1
, y
1
, x
2
, y
2
, · · · , x
k
, y
k
) = (y
1
, −x
1
, y
2
, −x
2
, · · · , y
k
, −x
k
)
works.
Conversely, if
v
:
S
n
→ R
n+1
\ {
0
}
is a vector field, we let
w
=
v
|v|
:
S
n
→
S
n
. We can construct a homotopy from
w
to the antipodal map by “linear
interpolation”, but in a way so that it stays on the sphere. We let
H : [0, π] × S
n
→ S
n
(t, x) 7→ cos(t)x + sin(t)w(x)
Since
w
(
x
) and
x
are perpendicular, it follows that this always has norm 1, so
indeed it stays on the sphere.
Now we have
H(0, x) = x, H(π, x) = −x.
So this gives a homotopy from
id
to
a
, which is a contradiction since they have
different degrees.
So far, we’ve only been talking about spheres all the time. We now move on
to something different.
Example. Let K be the Klein bottle. We cut them up by
A
B
Then both A and B are cylinders, and their intersection is two cylinders:
A B
s
t
A ∩ B
We have a long exact sequence
0 H
2
(K) H
1
(A ∩ B) H
1
(A) ⊕ H
1
(B)
H
1
(K) H
0
(A ∩ B) H
0
(A) ⊕ H
0
(B)
H
0
(K) 0
(i
A
,i
B
)
j
A
−j
B
(i
A
,i
B
)
j
A
−j
B
We plug in the numbers to get
0 H
2
(K) Z ⊕ Z Z ⊕ Z
H
1
(K) Z ⊕ Z Z ⊕ Z Z 0
(i
A
,i
B
)
j
A
−j
B
(i
A
,i
B
)
j
A
−j
B
Now let’s look at the first (
i
A
, i
B
) map. We suppose each
H
1
is generated by
the left-to-right loops. Then we have
i
A
(s) = −1
i
A
(t) = 1
i
B
(s) = 1
i
B
(t) = 1
So the matrix of (i
A
, i
B
) is
−1 1
1 1
.
This has determinant 2, so it is injective and has trivial kernel. So we must have
H
2
(K) = 0. We also have
H
1
(A) ⊕ H
1
(B)
im(i
A
, i
B
)
=
ha, bi
h−a + b, a + bi
=
hai
h2ai
∼
=
Z/2Z.
Now the second (i
A
, i
B
) is given by
1 1
1 1
,
whose kernel is isomorphic to Z. So we have
0 Z/2Z H
1
(K) Z 0 .
So we have H
1
(K)
∼
=
Z ⊕ Z/2Z.
Finally, we look at some applications of relative homology.
Lemma.
Let
M
be a
d
-dimensional manifold (i.e. a Hausdorff, second-countable
space locally homeomorphic to R
d
). Then
H
n
(M, M \ {x})
∼
=
(
Z n = d
0 otherwise
.
This is known as the local homology.
This gives us a homological way to define the dimension of a space.
Proof.
Let
U
be an open neighbourhood isomorphic to
R
d
that maps
x 7→
0.
We let Z = M \ U. Then
Z = Z ⊆ M \ {x} =
˚
(M \ {x}).
So we can apply excision, and get
H
n
(U, U \ {x}) = H
n
(M \ Z, (M \ {x}) \ Z)
∼
=
H
n
(M, M \ {x}).
So it suffices to do this in the case
M
∼
=
R
d
and
x
= 0. The long exact sequence
for relative homology gives
H
n
(R
d
) H
n
(R
d
, R
d
\ {0}) H
n−1
(R
d
\ {0}) H
n−1
(R
d
) .
Since H
n
(R
d
) = H
n−1
(R
d
) = 0 for n ≥ 2 large enough, it follows that
H
n
(R
d
, R
d
\ {0})
∼
=
H
n−1
(R
d
\ {0})
∼
=
H
n−1
(S
d−1
),
and the result follows from our previous computation of the homology of
S
d−1
.
We will have to check the lower-degree terms manually, but we shall not.
These relative homology groups are exactly the homology group of spheres.
So we might be able to define a degree-like object for maps between manifolds.
However, there is the subtlety that the identification with
Z
is not necessarily
canonical, and this involves the problem of orientation. For now, we will just
work with S
n
.
Definition
(Local degree)
.
Let
f
:
S
d
→ S
d
be a map, and
x ∈ S
d
. Then
f
induces a map
f
∗
: H
d
(S
d
, S
d
\ {x}) → H
d
(S
d
, S
d
\ {f(x)}).
We identify
H
d
(
S
d
, S
d
\{x}
)
∼
=
H
d
(
S
d
)
∼
=
Z
for any
x
via the inclusion
H
d
(
S
d
)
→
H
d
(
S
d
, S
d
\ {x}
), which is an isomorphism by the long exact sequence. Then
f
∗
is given by multiplication by a constant
deg
(
f
)
x
, called the local degree of
f
at
x.
What makes the local degree useful is that we can in fact compute the degree
of a map via local degrees.
Theorem. Let f : S
d
→ S
d
be a map. Suppose there is a y ∈ S
d
such that
f
−1
(y) = {x
1
, · · · , x
k
}
is finite. Then
deg(f) =
k
X
i=1
deg(f)
x
i
.
Proof.
Note that by excision, instead of computing the local degree at
x
i
via
H
d
(
S
d
, S
d
\ {x}
), we can pick a neighbourhood
U
i
of
x
i
and a neighbourhood
V
of x
i
such that f(U
i
) ⊆ V , and then look at the map
f
∗
: H
d
(U
i
, U
i
\ {x
i
}) → H
d
(V, V \ {y})
instead. Moreover, since
S
d
is Hausdorff, we can pick the
U
i
such that they are
disjoint. Consider the huge commutative diagram:
H
d
(S
d
) H
d
(S
d
)
H
d
(S
d
, S
d
\ {x
1
, · · · , x
k
}) H
d
(S
d
, S
d
\ {y})
H
d
(
`
U
i
,
`
(U
i
\ x
i
))
L
k
i=1
H
d
(U
i
, U
i
\ x
i
) H
d
(V, V \ {y})
f
∗
∼
f
∗
excision
L
f
∗
∼
∼
Consider the generator 1 of
H
d
(
S
d
). By definition, its image in
H
d
(
S
d
) is
deg
(
f
).
Also, its image in
L
H
d
(
U
i
, U
i
\ {x
i
}
) is (1
, · · · ,
1). The bottom horizontal map
sends this to
P
deg(f)
x
i
. So by the isomorphisms, it follows that
deg(f) =
k
X
i=1
deg(f)
x
.
3.6 Repaying the technical debt
Finally, we prove all those theorems we stated without proof.
Long exact sequence of relative homology
We start with the least bad one. In relative homology, we had a short exact
sequence of chain complexes
0 C
·
(A) C
·
(X) C
·
(X, A) 0.
The claim is that when we take the homology groups of this, we get a long exact
sequence of homology groups. This is in fact a completely general theorem.
Theorem
(Snake lemma)
.
Suppose we have a short exact sequence of complexes
0 A
·
B
·
C
·
0
i
·
q
·
.
Then there are maps
∂ : H
n
(C
·
) → H
n−1
(A
·
)
such that there is a long exact sequence
· · · H
n
(A) H
n
(B) H
n
(C)
H
n−1
(A) H
n−1
(B) H
n−1
(C) · · ·
i
∗
q
∗
∂
∗
i
∗
q
∗
.
The method of proving this is sometimes known as “diagram chasing”, where
we just “chase” around commutative diagrams to find the elements we need.
The idea of the proof is as follows — in the short exact sequence, we can think
of
A
as a subgroup of
B
, and
C
as the quotient
B/A
, by the first isomorphism
theorem. So any element of
C
can be represented by an element of
B
. We
apply the boundary map to this representative, and then exactness shows that
this must come from some element of
A
. We then check carefully that these is
well-defined, i.e. does not depend on the representatives chosen.
Proof.
The proof of this is in general not hard. It just involves a lot of checking
of the details, such as making sure the homomorphisms are well-defined, are
actually homomorphisms, are exact at all the places etc. The only important
and non-trivial part is just the construction of the map ∂
∗
.
First we look at the following commutative diagram:
0 A
n
B
n
C
n
0
0 A
n−1
B
n−1
C
n−1
0
i
n
d
n
q
n
d
n
d
n
i
n−1
q
n−1
To construct
∂
∗
:
H
n
(
C
)
→ H
n−1
(
A
), let [
x
]
∈ H
n
(
C
) be a class represented
by
x ∈ Z
n
(
C
). We need to find a cycle
z ∈ A
n−1
. By exactness, we know the
map
q
n
:
B
n
→ C
n
is surjective. So there is a
y ∈ B
n
such that
q
n
(
y
) =
x
.
Since our target is
A
n−1
, we want to move down to the next level. So consider
d
n
(
y
)
∈ B
n−1
. We would be done if
d
n
(
y
) is in the image of
i
n−1
. By exactness,
this is equivalent saying
d
n
(
y
) is in the kernel of
q
n−1
. Since the diagram is
commutative, we know
q
n−1
◦ d
n
(y) = d
n
◦ q
n
(y) = d
n
(x) = 0,
using the fact that
x
is a cycle. So
d
n
(
y
)
∈ ker q
n−1
=
im i
n−1
. Moreover, by
exactness again,
i
n−1
is injective. So there is a unique
z ∈ A
n−1
such that
i
n−1
(z) = d
n
(y). We have now produced our z.
We are not done. We have
∂
∗
[
x
] = [
z
] as our candidate definition, but we
need to check many things:
(i) We need to make sure ∂
∗
is indeed a homomorphism.
(ii) We need d
n−1
(z) = 0 so that [z] ∈ H
n−1
(A);
(iii)
We need to check [
z
] is well-defined, i.e. it does not depend on our choice
of y and x for the homology class [x].
(iv) We need to check the exactness of the resulting sequence.
We now check them one by one:
(i)
Since everything involved in defining
∂
∗
are homomorphisms, it follows
that ∂
∗
is also a homomorphism.
(ii) We check d
n−1
(z) = 0. To do so, we need to add an additional layer.
0 A
n
B
n
C
n
0
0 A
n−1
B
n−1
C
n−1
0
0 A
n−2
B
n−2
C
n−2
0
i
n
d
n
q
n
d
n
d
n
i
n−1
d
n−1
q
n−1
d
n−1
d
n−1
i
n−2
q
n−2
We want to check that
d
n−1
(
z
) = 0. We will use the commutativity of the
diagram. In particular, we know
i
n−2
◦ d
n−1
(z) = d
n−1
◦ i
n−1
(z) = d
n−1
◦ d
n
(y) = 0.
By exactness at
A
n−2
, we know
i
n−2
is injective. So we must have
d
n−1
(z) = 0.
(iii) (a)
First, in the proof, suppose we picked a different
y
0
such that
q
n
(
y
0
) =
q
n
(
y
) =
x
. Then
q
n
(
y
0
− y
) = 0. So
y
0
− y ∈ ker q
n
=
im i
n
. Let
a ∈ A
n
be such that i
n
(a) = y
0
− y. Then
d
n
(y
0
) = d
n
(y
0
− y) + d
n
(y)
= d
n
◦ i
n
(a) + d
n
(y)
= i
n−1
◦ d
n
(a) + d
n
(y).
Hence when we pull back
d
n
(
y
0
) and
d
n
(
y
) to
A
n−1
, the results differ
by the boundary
d
n
(
a
), and hence produce the same homology class.
(b)
Suppose [
x
0
] = [
x
]. We want to show that
∂
∗
[
x
] =
∂
∗
[
x
0
]. This time,
we add a layer above.
0 A
n+1
B
n+1
C
n+1
0
0 A
n
B
n
C
n
0
0 A
n−1
B
n−1
C
n−1
0
i
n+1
d
n+1
q
n+1
d
n+1
d
n+1
i
n
d
n
q
n
d
n
d
n
i
n−1
q
n−1
By definition, since [x
0
] = [x], there is some c ∈ C
n+1
such that
x
0
= x + d
n+1
(c).
By surjectivity of
q
n+1
, we can write
c
=
q
n+1
(
b
) for some
b ∈ B
n+1
.
By commutativity of the squares, we know
x
0
= x + q
n
◦ d
n+1
(b).
The next step of the proof is to find some
y
such that
q
n
(
y
) =
x
.
Then
q
n
(y + d
n+1
(b)) = x
0
.
So the corresponding
y
0
is
y
0
=
y
+
d
n+1
(
b
). So
d
n
(
y
) =
d
n
(
y
0
), and
hence ∂
∗
[x] = ∂
∗
[x
0
].
(iv)
This is yet another standard diagram chasing argument. When reading
this, it is helpful to look at a diagram and see how the elements are chased
along. It is even more beneficial to attempt to prove this yourself.
(a) im i
∗
⊆ ker q
∗
: This follows from the assumption that i
n
◦ q
n
= 0.
(b) ker q
∗
⊆ im i
∗
: Let [
b
]
∈ H
n
(
B
). Suppose
q
∗
([
b
]) = 0. Then there is
some
c ∈ C
n+1
such that
q
n
(
b
) =
d
n+1
(
c
). By surjectivity of
q
n+1
,
there is some
b
0
∈ B
n+1
such that
q
n+1
(
b
0
) =
c
. By commutativity,
we know q
n
(b) = q
n
◦ d
n+1
(b
0
), i.e.
q
n
(b − d
n+1
(b
0
)) = 0.
By exactness of the sequence, we know there is some
a ∈ A
n
such
that
i
n
(a) = b − d
n+1
(b
0
).
Moreover,
i
n−1
◦ d
n
(a) = d
n
◦ i
n
(a) = d
n
(b − d
n+1
(b
0
)) = 0,
using the fact that
b
is a cycle. Since
i
n−1
is injective, it follows that
d
n
(a) = 0. So [a] ∈ H
n
(A). Then
i
∗
([a]) = [b] − [d
n+1
(b
0
)] = [b].
So [b] ∈ im i
∗
.
(c) im q
∗
⊆ ker ∂
∗
: Let [
b
]
∈ H
n
(
B
). To compute
∂
∗
(
q
∗
([
b
])), we first
pull back
q
n
(
b
) to
b ∈ B
n
. Then we compute
d
n
(
b
) and then pull it
back to
A
n+1
. However, we know
d
n
(
b
) = 0 since
b
is a cycle. So
∂
∗
(q
∗
([b])) = 0, i.e. ∂
∗
◦ q
∗
= 0.
(d) ker ∂
∗
⊆ im q
∗
: Let [
c
]
∈ H
n
(
C
) and suppose
∂
∗
([
c
]) = 0. Let
b ∈ B
n
be such that
q
n
(
b
) =
c
, and
a ∈ A
n−1
such that
i
n−1
(
a
) =
d
n
(
b
).
By assumption,
∂
∗
([
c
]) = [
a
] = 0. So we know
a
is a boundary,
say
a
=
d
n
(
a
0
) for some
a
0
∈ A
n
. Then by commutativity we know
d
n
(b) = d
n
◦ i
n
(a
0
). In other words,
d
n
(b − i
n
(a
0
)) = 0.
So [b − i
n
(a
0
)] ∈ H
n
(B). Moreover,
q
∗
([b − i
n
(a
0
)]) = [q
n
(b) − q
n
◦ i
n
(a
0
)] = [c].
So [c] ∈ im q
∗
.
(e) im ∂
∗
⊆ ker i
∗
: Let [
c
]
∈ H
n
(
C
). Let
b ∈ B
n
be such that
q
n
(
b
) =
c
,
and a ∈ A
n−1
be such that i
n
(a) = d
n
(b). Then ∂
∗
([c]) = [a]. Then
i
∗
([a]) = [i
n
(a)] = [d
n
(b)] = 0.
So i
∗
◦ ∂
∗
= 0.
(f) ker i
∗
⊆ im ∂
∗
: Let [
a
]
∈ H
n
(
A
) and suppose
i
∗
([
a
]) = 0. So we can
find some
b ∈ B
n+1
such that
i
n
(
a
) =
d
n+1
(
b
). Let
c
=
q
n+1
(
b
). Then
d
n+1
(c) = d
n+1
◦ q
n+1
(b) = q
n
◦ d
n+1
(b) = q
n
◦ i
n
(a) = 0.
So [
c
]
∈ H
n
(
C
). Then [
a
] =
∂
∗
([
c
]) by definition of
∂
∗
. So [
a
]
∈
im ∂
∗
.
Another piece of useful algebra is known as the 5-lemma:
Lemma (Five lemma). Consider the following commutative diagram:
A B C D E
A
0
B
0
C
0
D
0
E
0
f
`
g
m
h
n
j
p q
r s t u
If the two rows are exact,
m
and
p
are isomorphisms,
q
is injective and
is
surjective, then n is also an isomorphism.
Proof. The philosophy is exactly the same as last time.
We first show that
n
is surjective. Let
c
0
∈ C
0
. Then we obtain
d
0
=
t
(
c
0
)
∈ D
0
.
Since
p
is an isomorphism, we can find
d ∈ D
such that
p
(
d
) =
d
0
. Then we have
q(j(d)) = u(p(d)) = u(f(c
0
)) = 0.
Since
q
is injective, we know
j
(
d
) = 0. Since the sequence is exact, there is some
c ∈ C such that h(c) = d.
We are not yet done. We do not know that
n
(
c
) =
c
0
. All we know is that
d
(
n
(
c
)) =
d
(
c
0
). So
d
(
c
0
− n
(
c
)) = 0. By exactness at
C
0
, we can find some
b
0
such that
s
(
b
0
) =
n
(
c
)
− c
0
. Since
m
was surjective, we can find
b ∈ B
such that
m(b) = b
0
. Then we have
n(g(b)) = n(c) − c
0
.
So we have
n(c − g(b)) = c
0
.
So n is surjective.
Showing that n is injective is similar.
Corollary.
Let
f
: (
X, A
)
→
(
Y, B
) be a map of pairs, and that any two
of
f
∗
:
H
∗
(
X, A
)
→ H
∗
(
Y, B
),
H
∗
(
X
)
→ H
∗
(
Y
) and
H
∗
(
A
)
→ H
∗
(
B
) are
isomorphisms. Then the third is also an isomorphism.
Proof. Follows from the long exact sequence and the five lemma.
That wasn’t too bad, as it is just pure algebra.
Proof of homotopy invariance
The next goal is want to show that homotopy of continuous maps does not affect
the induced map on the homology groups. We will do this by showing that
homotopies of maps induce homotopies of chain complexes, and chain homotopic
maps induce the same map on homology groups. To make sense of this, we need
to know what it means to be a homotopy of chain complexes.
Definition
(Chain homotopy)
.
A chain homotopy between chain maps
f
·
, g
·
:
C
·
→ D
·
is a collection of homomorphisms F
n
: C
n
→ D
n+1
such that
g
n
− f
n
= d
D
n+1
◦ F
n
+ F
n−1
◦ d
C
n
: C
n
→ D
n
for all n.
The idea of the chain homotopy is that
F
n
(
σ
) gives us an
n
+1 simplex whose
boundary is g
n
− f
n
, plus some terms arising from the boundary of c itself:
F
n
(σ)
f
n
(σ)
g
n
(σ)
:
dF
n
(σ)
=
f
n
(σ)
g
n
(σ)
+ F
n−1
(dσ)
We will not attempt to justify the signs appearing in the definition; they are
what are needed for it to work.
The relevance of this definition is the following result:
Lemma. If f
·
and g
·
are chain homotopic, then f
∗
= g
∗
: H
∗
(C
·
) → H
∗
(D
·
).
Proof. Let [c] ∈ H
n
(C
·
). Then we have
g
n
(c) − f
n
(c) = d
D
n+1
F
n
(c) + F
n−1
(d
C
n
(c)) = d
D
n+1
F
n
(c),
where the second term dies because
c
is a cycle. So we have [
g
n
(
c
)] = [
f
n
(
c
)].
That was the easy part. What we need to do now is to show that homotopy
of maps between spaces gives a chain homotopy between the corresponding chain
maps.
We will change notation a bit.
Notation. From now on, we will just write d for d
C
n
.
For
f
:
X → Y
, we will write
f
#
:
C
n
(
X
)
→ C
n
(
Y
) for the map
σ 7→ f ◦ σ
,
i.e. what we used to call f
n
.
Now if
H
: [0
,
1]
× X → Y
is a homotopy from
f
to
g
, and
σ
: ∆
n
→ X
is an
n-chain, then we get a homotopy
[0, 1] × ∆
n
[0, 1] × X Y
[0,1]×σ
H
from
f
#
(
σ
) to
g
#
(
σ
). Note that we write [0
,
1] for the identity map [0
,
1]
→
[0
,
1].
The idea is that we are going to cut up [0
,
1]
×
∆
n
into
n
+ 1-simplices.
Suppose we can find a collection of chains
P
n
∈ C
n+1
([0
,
1]
×
∆
n
) for
n ≥
0 such
that
d(P
n
) = i
1
− i
0
−
n
X
j=0
(−1)
j
([0, 1] × δ
j
)
#
(P
n−1
),
where
i
0
: δ
n
= {0} × ∆
n
→ [0, 1] × ∆
n
i
1
: δ
n
= {0} × ∆
n
→ [0, 1] × ∆
n
and
δ
j
: ∆
n−1
→
∆
n
is the inclusion of the
j
th face. These are “prisms”
connecting the top and bottom face. Intuitively, the prism P
2
looks like this:
and the formula tells us its boundary is the top and bottom triangles, plus the
side faces given by the prisms of the edges.
Suppose we managed to find such prisms. We can then define
F
n
: C
n
(X) → C
n+1
(Y )
by sending
(σ : ∆
n
→ X) 7→ (H ◦ ([0, 1] × σ))
#
(P
n
).
We now calculate.
dF
n
(σ) = d((H ◦ (1 × ∆
n
))
#
(P
n
))
= (H ◦ ([0, 1] × σ))
#
(d(P
n
))
= (H ◦ ([0, 1] × σ))
#
i
1
− i
0
−
n
X
j=0
(−1)
j
([0, 1] × δ
j
)
#
(P
n−1
)
= H ◦ ([0, 1] × σ) ◦ i
1
− H ◦ ([0, 1] × σ) ◦ i
0
−
n
X
j=0
(−1)
j
H
#
◦ (([0, 1] × σ) ◦ δ
j
)
#
(P
n−1
)
= g ◦ σ − f ◦ σ −
n
X
j=0
(−1)
j
H
#
◦ (([0, 1] × σ) ◦ δ
j
)
#
(P
n−1
)
= g ◦ σ − f ◦ σ − F
n−1
(dσ)
= g
#
(σ) − f
#
(σ) − F
n−1
(dσ).
So we just have to show that
P
n
exists. We already had a picture of what it looks
like, so we just need to find a formula that represents it. We view [0
,
1]
×
∆
n
∈
R × R
n+1
. Write
{v
0
, v
1
, · · · , v
n
}
for the vertices of
{
0
} ×
∆
n
⊆
[1
,
0]
×
∆
n
, and
{w
0
, · · · , w
n
} for the corresponding vertices of {1} × ∆
n
.
Now if {x
0
, x
1
, · · · , x
n+1
} ⊆ {v
0
, · · · , v
n
} ∪ {w
0
, · · · , w
n
}, we let
[x
0
, · · · , x
n
] : ∆
n
→ [0, 1] × ∆
n
by
(t
0
, · · · , t
n+1
) =
X
t
i
x
i
.
This is still in the space by convexity. We let
P
n
=
n
X
i=0
(−1)
i
[v
0
, v
1
, · · · , v
i
, w
i
, w
i+1
, · · · , w
n
] ∈ C
n+1
([0, 1] × ∆
n
).
It is a boring check that this actually works, and we shall not bore the reader
with the details.
Proof of excision and Mayer-Vietoris
Finally, we prove excision and Mayer-Vietoris together. It turns out both follow
easily from what we call the “small simplices theorem”.
Definition
(
C
U
n
(
X
) and
H
U
n
(
X
))
.
We let
U
=
{U
α
}
α∈I
be a collection of
subspaces of X such that their interiors cover X, i.e.
[
α∈I
˚
U
α
= X.
Let
C
U
n
(
X
)
⊆ C
n
(
X
) be the subgroup generated by those singular
n
-simplices
σ
: ∆
n
→ X
such that
σ
(∆
n
)
⊆ U
α
for some
α
. It is clear that if
σ
lies in
U
α
,
then so do its faces. So C
U
n
(X) is a sub-chain complex of C
·
(X).
We write H
U
n
(X) = H
n
(C
U
·
(X)).
It would be annoying if each choice of open cover gives a different homology
theory, because this would be too many homology theories to think about. The
small simplices theorem says that the natural map
H
U
∗
(
X
)
→ H
∗
(
X
) is an
isomorphism.
Theorem
(Small simplices theorem)
.
The natural map
H
U
∗
(
X
)
→ H
∗
(
X
) is an
isomorphism.
The idea is that we can cut up each simplex into smaller parts by barycentric
subdivision, and if we do it enough, it will eventually lie in on of the open covers.
We then go on to prove that cutting it up does not change homology.
Proving it is not hard, but technically annoying. So we first use this to
deduce our theorems.
Proof of Mayer-Vietoris.
Let
X
=
A ∪ B
, with
A, B
open in
X
. We let
U
=
{A, B}, and write C
·
(A + B) = C
U
·
(X). Then we have a natural chain map
C
·
(A) ⊕ C
·
(B) C
·
(A + B)
j
A
−j
B
that is surjective. The kernel consists of (
x, y
) such that
j
A
(
x
)
− j
B
(
y
) = 0,
i.e.
j
A
(
x
) =
j
B
(
y
). But
j
doesn’t really do anything. It just forgets that the
simplices lie in
A
or
B
. So this means
y
=
x
is a chain in
A ∩ B
. We thus deduce
that we have a short exact sequence of chain complexes
C
·
(A ∩ B) C
·
(A) ⊕ C
·
(B) C
·
(A + B).
(i
A
,i
B
)
j
A
−j
B
Then the snake lemma shows that we obtain a long exact sequence of homology
groups. So we get a long exact sequence of homology groups
· · · H
n
(A ∩ B) H
n
(A) ⊕ H
n
(B) H
U
n
(X) · · ·
(i
A
,i
B
)
j
A
−j
B
.
By the small simplices theorem, we can replace
H
U
n
(
X
) with
H
n
(
X
). So we
obtain Mayer-Vietoris.
Now what does the boundary map
∂
:
H
n
(
X
)
→ H
n−1
(
A ∩ B
) do? Suppose
we have
c ∈ H
n
(
X
) represented by a cycle
a
+
b ∈ C
U
n
(
X
), with
a
supported in
A
and
b
supported in
B
. By the small simplices theorem, such a representative
always exists. Then the proof of the snake lemma says that
∂
([
a
+
b
]) is given
by tracing through
C
n
(A) ⊕ C
n
(B) C
n
(A + B)
C
n−1
(A ∩ B) C
n−1
(A) ⊕ C
n−1
(B)
j
A
−j
B
d
(i
A
,i
B
)
We now pull back
a
+
b
along
j
A
− j
B
to obtain (
a, −b
), then apply
d
to obtain
(da, −db). Then the required object is [da] = [−db].
We now move on to prove excision.
Proof of excision.
Let
X ⊇ A ⊇ Z
be such that
Z ⊇
˚
A
. Let
B
=
X \ Z
. Then
again take
U = {A, B}.
By assumption, their interiors cover X. We consider the short exact sequences
0 C
·
(A) C
·
(A + B) C
·
(A + B)/C
·
(A) 0
0 C
·
(A) C
·
(X) C
·
(X, A) 0
Looking at the induced map between long exact sequences on homology, the
middle and left terms induce isomorphisms, so the right term does too by the
5-lemma.
On the other hand, the map
C
·
(B)/C
·
(A ∩ B) C
·
(A + B)/C
·
(A)
is an isomorphism of chain complexes. Since their homologies are
H
·
(
B, A ∩ B
)
and
H
·
(
X, A
), we infer they the two are isomorphic. Recalling that
B
=
X \
¯
Z
,
we have shown that
H
∗
(X \ Z, A \ Z)
∼
=
H
∗
(X, A).
We now provide a sketch proof of the small simplices theorem. As mentioned,
the idea is to cut our simplices up, and one method to do so is barycentric
subdivision.
Given a 0-simplex {v
0
}, its barycentric subdivision is itself.
If x = {x
0
, · · · , x
n
} ⊆ R
n
spans an n-simplex σ, we let
b
x
=
1
n + 1
n
X
i=0
x
i
be its barycenter.
If we have a 1-simplex
Then the barycentric subdivision is obtained as
We can degenerately describe this as first barycentrically subdividing the bound-
ary (which does nothing in this case), and then add the barycenter.
In the case of a 2-simplex:
we first barycentrically subdivide the boundary:
Then add the barycenter
b
x
, and for each standard simplex in the boundary, we
“cone it off” towards b
x
:
More formally, in the standard
n
-simplex ∆
n
⊆ R
n+1
, we let
B
n
be its barycenter.
For each singular i-simplex σ : ∆
i
→ ∆
n
, we define
Cone
∆
n
i
(σ) : ∆
i+1
→ ∆
n
by
(t
0
, t
1
, · · · , t
i+1
) 7→ t
0
b
n
+ (1 − t
0
) · σ
(t
1
, · · · , t
i+1
)
1 − t
0
.
We can then extend linearly to get a map Cone
∆
n
i
: C
i
(∆
n
) → C
i+1
(∆
n
).
Example. In the 2-simplex
the cone of the bottom edge is the simplex in orange:
Since this increases the dimension, we might think this is a chain map. Then
for i > 0, we have
dCone
∆
n
i
(σ) =
i+1
X
j=0
Cone
∆
n
i
(σ) ◦ δ
j
= σ +
i+1
X
j=1
(−1)
j
Cone
∆
n
i−1
(σ ◦ δ
j−1
)
= σ − Cone
∆
n
i−1
(dσ).
For i = 0, we get
dCone
∆
n
i
(σ) = σ − ε(σ) · b
n
,
In total, we have
dCone
∆
n
i
+ Cone
∆
n
i−1
d = id − c
·
,
where c
i
= 0 for i > 0, and c
0
(σ) = ε(σ)b
n
is a map C
·
(∆
n
) → C
·
(∆
n
).
We now use this cone map to construct a barycentric subdivision map
ρ
X
n
:
C
n
(
X
)
→ C
n
(
X
), and insist that it is natural that if
f
:
X → Y
is a map,
then f
#
◦ ρ
X
n
= ρ
Y
n
◦ f
#
, i.e. the diagram
C
n
(X) C
n
(X)
C
n
(Y ) C
n
(Y )
ρ
X
n
f
#
f
#
ρ
Y
n
.
So if
σ
: ∆
n
→ X
, we let
ι
n
: ∆
n
→
∆
n
∈ C
n
(∆
n
) be the identity map. Then
we must have
ρ
X
n
(σ) = ρ
X
n
(σ
#
ι
n
) = σ
#
ρ
∆
n
n
(ι
n
).
So if know how to do barycentric subdivision for
ι
n
itself, then by naturality, we
have defined it for all spaces! Naturality makes life easier for us, not harder!
So we define ρ
X
n
recursively on n, for all spaces X at once, by
(i) ρ
X
0
= id
C
0
(X)
(ii) For n > 0, we define the barycentric subdivision of ι
n
by
ρ
∆
n
n
(ι
n
) = Cone
∆
n
n−1
(ρ
∆
n
n−1
(dι
n
)),
and then extend by naturality.
This has all the expected properties:
Lemma. ρ
X
·
is a natural chain map.
Lemma. ρ
X
·
is chain homotopic to the identity.
Proof. No one cares.
Lemma.
The diameter of each subdivided simplex in (
ρ
∆
n
n
)
k
(
ι
n
) is bounded by
n
n+1
k
diam(∆
n
).
Proof. Basic geometry.
Proposition. If c ∈ C
U
n
(X), then p
X
(c) ∈ C
U
n
(X).
Moreover, if c ∈ C
n
(X), then there is some k such that (ρ
X
n
)
k
(c) ∈ C
U
n
(X).
Proof.
The first part is clear. For the second part, note that every chain is a
finite sum of simplices. So we only have to check it for single simplices. We let
σ be a simplex, and let
V = {σ
−1
˚
U
α
}
be an open cover of ∆
n
. By the Lebesgue number lemma, there is some
ε >
0
such that any set of diameter
< ε
is contained in some
σ
−1
˚
U
α
. So we can choose
k >
0 such that (
ρ
∆
n
n
)(
ι
n
) is a sum of simplices which each has diameter
< ε
.
So each lies in some σ
−1
˚
U
α
. So
(ρ
∆
n
n
)
k
(ι
n
) = C
V
n
(∆
n
).
So applying σ tells us
(ρ
∆
n
n
)
k
(σ) ∈ C
U
n
(X).
Finally, we get to the theorem.
Theorem
(Small simplices theorem)
.
The natural map
U
:
H
U
∗
(
X
)
→ H
∗
(
X
)
is an isomorphism.
Proof.
Let [
c
]
∈ H
n
(
X
). By the proposition, there is some
k >
0 such that
(
ρ
X
n
)
k
(
c
)
∈ C
U
n
(
x
). We know that
ρ
X
n
is chain homotopic to the identity. Thus
so is (ρ
X
n
)
k
. So [(ρ
X
n
)
k
(c)] = [c]. So the map H
U
n
(X) → H
n
(X) is surjective.
To show that it is injective, we suppose
U
([
c
]) = 0. Then we can find some
z ∈ H
n+1
(
X
) such that
dz
=
c
. We can then similarly subdivide
z
enough such
that it lies in C
U
n+1
(X). So this shows that [c] = 0 ∈ H
U
n
(X).
That’s it. We move on to (slightly) more interesting stuff. The next few
sections will all be slightly short, as we touch on various different ideas.
4 Reduced homology
Definition
(Reduced homology)
.
Let
X
be a space, and
x
0
∈ X
a basepoint.
We define the reduced homology to be
˜
H
∗
(X) = H
∗
(X, {x
0
}).
Note that by the long exact sequence of relative homology, we know that
˜
H
n
(
X
)
∼
=
H
n
(
X
) for
n ≥
1. So what is the point of defining a new homology
theory that only differs when n = 0, which we often don’t care about?
It turns out there is an isomorphism between
H
∗
(
X, A
) and
˜
H
∗
(
X/A
) for
suitably “good” pairs (X, A).
Definition
(Good pair)
.
We say a pair (
X, A
) is good if there is an open set
U
containing
¯
A
such that the inclusion
A → U
is a deformation retract, i.e. there
exists a homotopy H : [0, 1] × U → U such that
H(0, x) = x
H(1, x) ∈ A
H(t, a) = a for all a ∈ A, t ∈ [0, 1].
Theorem. If (X, A) is good, then the natural map
H
∗
(X, A) H
∗
(X/A, A/A) =
˜
H
∗
(X/A)
is an isomorphism.
Proof. As i : A → U is in particular a homotopy equivalence, the map
H
∗
(A) H
∗
(U)
is an isomorphism. So by the five lemma, the map on relative homology
H
∗
(X, A) H
∗
(X, U)
is an isomorphism as well.
As i : A → U is a deformation retraction with homotopy H, the inclusion
{∗} = A/A → U/A
is also a deformation retraction. So again by the five lemma, the map
H
∗
(X/A, A/A) H
∗
(X/A, U/A)
is also an isomorphism. Now we have
H
n
(X, A) H
n
(X, U) H
n
(X \ A, U \ A)
H
n
(X/A, A/A) H
n
(X/A, U/A) H
n
X
A
\
A
A
,
U
A
\
A
A
∼ excise A
∼
excise A/A
We now notice that
X \ A
=
X
A
\
A
A
and
U \ A
=
U
A
\
A
A
. So the right-hand
vertical map is actually an isomorphism. So the result follows.
5 Cell complexes
So far, everything we’ve said is true for arbitrary spaces. This includes, for
example, the topological space with three points
a, b, c
, whose topology is
{∅, {a}, {a, b, c}}
. However, these spaces are horrible. We want to restrict
our attention to nice spaces. Spaces that do feel like actual, genuine spaces.
The best kinds of space we can imagine would be manifolds, but that is a
bit too strong a condition. For example, the union of the two axes in R
2
is not
a manifold, but it is still a sensible space to talk about. Perhaps we can just
impose conditions like Hausdorffness and maybe second countability, but we can
still produce nasty spaces that satisfy these properties.
So the idea is to provide a method to build spaces, and then say we only
consider spaces built this way. These are known as cell complexes, or CW
complexes
Definition
(Cell complex)
.
A cell complex is any space built out of the following
procedure:
(i) Start with a discrete space X
0
. The set of points in X
0
are called I
0
.
(ii)
If
X
n−1
has been constructed, then we may choose a family of maps
{ϕ
α
: S
n−1
→ X
n−1
}
α∈I
n
, and set
X
n
=
X
n−1
q
a
α∈I
n
D
n
α
!!
/{x ∈ ∂D
n
α
∼ ϕ
α
(x) ∈ X
n−1
}.
We call
X
n
the
n
-skeleton of
X
We call the image of
D
n
α
\ ∂D
n
α
in
X
n
the
open cell e
α
.
(iii) Finally, we define
X =
[
n≥0
X
n
with the weak topology, namely that
A ⊆ X
is open if
A ∩ X
n
is open in
X
n
for all n.
We write Φ
α
:
D
n
α
→ X
n
for the obvious inclusion map. This is called the
characteristic map for the cell e
α
.
Definition
(Finite-dimensional cell complex)
.
If
X
=
X
n
for some
n
, we say
X is finite-dimensional.
Definition
(Finite cell complex)
.
If
X
is finite-dimensional and
I
n
are all finite,
then we say X is finite.
Definition
(Subcomplex)
.
A subcomplex
A
of
X
is a simplex obtained by using
a subset I
0
n
⊆ I
n
.
Note that we cannot simply throw away some cells to get a subcomplex, as
the higher cells might want to map into the cells you have thrown away, and
you need to remove them as well.
We note the following technical result without proof:
Lemma. If A ⊆ X is a subcomplex, then the pair (X, A) is good.
Proof. See Hatcher 0.16.
Corollary. If A ⊆ X is a subcomplex, then
H
n
(X, A)
˜
H
n
(X/A)
∼
is an isomorphism.
We are next going to show that we can directly compute the cohomology of
a cell complex by looking at the cell structures, instead of going through all the
previous rather ad-hoc mess we’ve been through. We start with the following
lemma:
Lemma. Let X be a cell complex. Then
(i)
H
i
(X
n
, X
n−1
) =
(
0 i 6= n
L
i∈I
n
Z i = n
.
(ii) H
i
(X
n
) = 0 for all i > n.
(iii) H
i
(X
n
) → H
i
(X) is an isomorphism for i < n.
Proof.
(i) As (X
n
, X
n−1
) is good, we have an isomorphism
H
i
(X
n
, X
n−1
)
˜
H
i
(X
n
/X
n−1
)
∼
.
But we have
X
n
/X
n−1
∼
=
_
α∈I
n
S
n
α
,
the space obtained from
Y
=
`
α∈I
n
S
n
α
by collapsing down the subspace
Z
=
{x
α
:
α ∈ I
n
}
, where each
x
α
is the south pole of the sphere. To
compute the homology of the wedge
X
n
/X
n−1
, we then note that (
Y, Z
)
is good, and so we have a long exact sequence
H
i
(Z) H
i
(Y )
˜
H
i
(Y/Z) H
i−1
(Z) H
i−1
(Y ) .
Since
H
i
(
Z
) vanishes for
i ≥
1, the result then follows from the homology
of the spheres plus the fact that H
i
(
`
X
α
) =
L
H
i
(X
α
).
(ii) This follows by induction on n. We have (part of) a long exact sequence
H
i
(X
n−1
) H
i
(X
n
) H
i
(X
n
, X
n−1
)
We know the first term vanishes by induction, and the third term vanishes
for i > n. So it follows that H
i
(X
n
) vanishes.
(iii)
To avoid doing too much point-set topology, we suppose
X
is finite-
dimensional, so
X
=
X
m
for some
m
. Then we have a long exact sequence
H
i+1
(X
n+1
, X
n
) H
i
(X
n
) H
i
(X
n+1
) H
i
(X
n+1
, X
n
)
Now if
i < n
, we know the first and last groups vanish. So we have
H
i
(X
n
)
∼
=
H
i
(X
n+1
). By continuing, we know that
H
i
(X
n
)
∼
=
H
i
(X
n+1
)
∼
=
H
i
(X
n+2
)
∼
=
· · ·
∼
=
H
i
(X
m
) = H
i
(X).
To prove this for the general case, we need to use the fact that any map
from a compact space to a cell complex hits only finitely many cells, and
then the result would follow from this special case.
For a cell complex X, let
C
cell
n
(X) = H
n
(X
n
, X
n−1
)
∼
=
M
α∈I
n
Z.
We define d
cell
n
: C
cell
n
(X) → C
cell
n−1
(X) by the composition
H
n
(X
n
, X
n−1
) H
n−1
(X
n−1
) H
n−1
(X
n−1
, X
n−2
)
∂
q
.
We consider
0
0 H
n
(X
n+1
)
H
n
(X
n
)
H
n+1
(X
n+1
, X
n
) H
n
(X
n
, X
n−1
) H
n−1
(X
n−1
, X
n−2
)
H
n−1
(X
n−1
)
0 H
n−1
(X
n
)
q
n
∂
d
cell
n+1
d
cell
n
∂
q
n−1
Referring to the above diagram, we see that
d
cell
n
◦ d
cell
n+1
= q
n−1
◦ ∂ ◦ q
n
◦ ∂ = 0,
since the middle
∂ ◦ q
n
is part of an exact sequence. So (
C
cell
·
(
X
)
, d
cell
·
) is a
chain complex, and the corresponding homology groups are known as the cellular
homology of X, written H
cell
n
(X).
Theorem.
H
cell
n
(X)
∼
=
H
n
(X).
Proof. We have
H
n
(X)
∼
=
H
n
(X
n+1
)
= H
n
(X
n
)/ im(∂ : H
n+1
(X
n+1
, X
n
) → H
n
(X
n
))
Since q
n
is injective, we apply it to and bottom to get
= q
n
(H
n
(X
n
))/ im(d
cell
n+1
: H
n+1
(X
n+1
, X
n
) → H
n
(X
n
, X
n−1
))
By exactness, the image of q
n
is the kernel of ∂. So we have
= ker(∂ : H
n
(X
n
, X
n−1
) → H
n−1
(X
n−1
))/ im(d
cell
n+1
)
= ker(d
cell
n
)/ im(d
cell
n+1
)
= H
cell
n
(X).
Corollary.
If
X
is a finite cell complex, then
H
n
(
X
) is a finitely-generated
abelian group for all
n
, generated by at most
|I
n
|
elements. In particular, if
there are no n-cells, then H
n
(X) vanishes.
If
X
has a cell-structure with cells in even-dimensional cells only, then
H
∗
(
X
)
are all free.
We can similarly define cellular cohomology.
Definition (Cellular cohomology). We define cellular cohomology by
C
n
cell
(X) = H
n
(X
n
, X
n−1
)
and let d
n
cell
be the composition
H
n
(X
n
, X
n−1
) H
n
(X
n
) H
n+1
(X
n+1
, X
n
).
q
∗
∂
This defines a cochain complex
C
·
cell
(
X
) with cohomology
H
∗
cell
(
X
), and we have
H
∗
cell
(X)
∼
=
H
∗
(X).
One can directly check that
C
·
cell
(X)
∼
=
Hom(C
cell
·
(X), Z).
This is all very good, because cellular homology is very simple and concrete.
However, to actually use it, we need to understand what the map
d
cell
n
: C
cell
n
(X) =
M
α∈I
n
Z{e
α
} → C
cell
n−1
(X) =
M
β∈I
n−1
Z{e
β
}
is. In particular, we want to find the coefficients d
αβ
such that
d
cell
n
(e
α
) =
X
d
αβ
e
β
.
It turn out this is pretty easy
Lemma. The coefficients d
αβ
are given by the degree of the map
S
n−1
α
= ∂D
n
α
X
n−1
X
n−1
/X
n−2
=
W
γ∈I
n−1
S
n−1
γ
S
n−1
β
ϕ
α
f
αβ
,
where the final map is obtained by collapsing the other spheres in the wedge.
In the case of cohomology, the maps are given by the transposes of these.
This is easier in practice that in sounds. In practice, the map is given by
“the obvious one”.
Proof. Consider the diagram
H
n
(D
n
α
, ∂D
n
α
) H
n−1
(∂D
n
α
)
˜
H
n−1
(S
n−1
β
)
H
n
(X
n
, X
n−1
) H
n−1
(X
n−1
)
˜
H
n−1
W
S
n−1
γ
H
n−1
(X
n−1
, X
n−2
)
˜
H
n−1
(X
n−1
/X
n−2
)
(Φ
α
)
∗
∂
∼
(ϕ
α
)
∗
∂
d
cell
n
q
collapse
excision
∼
By the long exact sequence, the top left horizontal map is an isomorphism.
Now let’s try to trace through the diagram. We can find
1 1 d
αβ
e
α
P
d
αγ
e
γ
P
d
αγ
e
γ
isomorphism
f
αβ
So the degree of f
αβ
is indeed d
αβ
.
Example. Let K be the Klein bottle.
v
a
b
π
We give it a cell complex structure by
– K
0
= {v}. Note that all four vertices in the diagram are identified.
v
– K
1
= {a, b}.
a
b
x
0
– K
2
is the unique 2-cell
π
we see in the picture, where
ϕ
π
:
S
1
→ K
1
given
by aba
−1
b.
The cellular chain complex is given by
0 C
cell
2
(K) C
cell
1
(K) C
cell
0
(K)
Zπ Za ⊕ Zb Z
v
d
cell
2
d
cell
1
We can now compute the maps d
cell
i
. The d
1
map is easy. We have
d
1
(a) = d
1
(b) = v − v = 0.
In the
d
2
map, we can figure it out by using local degrees. Locally, the attaching
map is just like the identity map, up to an orientation flip, so the local degrees
are
±
1. Moreover, the inverse image of each point has two elements. If we think
hard enough, we realize that for the attaching map of
a
, the two elements have
opposite degree and cancel each other out; while in the case of
b
they have the
same sign and give a degree of 2. So we have
d
2
(π) = 0a + 2b.
So we have
H
0
(K) = Z
H
1
(K) =
Z ⊕ Z
h2bi
= Z ⊕ Z/2Z
H
2
(K) = 0
We can similarly compute the cohomology. By dualizing, we have
C
2
cell
(K)(K) C
1
cell
(K) C
0
cell
(K)
Z Z ⊕ Z Z
(0 2) (0)
So we have
H
0
(K) = Z
H
1
(K) = Z
H
2
(K) = Z/2Z.
Note that the second cohomology is not the dual of the second homology!
However, if we forget where each factor is, and just add all the homology
groups together, we get
Z⊕Z⊕Z/
2
Z
. Also, if we forget all the torsion components
Z/2Z, then they are the same!
This is a general phenomenon. For a cell complex, if we know what all the
homology groups are, we can find the cohomologies by keeping the
Z
’s unchanged
and moving the torsion components up. The general statement will be given by
the universal coefficient theorem.
Example.
Consider
RP
n
=
S
n
/
(
x ∼ −x
). We notice that for any point in
RP
n
,
if it is not in the equator, then it is represented by a unique element in the
northern hemisphere. Otherwise, it is represented by two points. So we have
RP
n
∼
=
D
n
/
(
x ∼ −x for x ∈ ∂D
n
). This is a nice description, since if we throw
out the interior of the disk, then we are left with an
S
n−1
with antipodal points
identified, i.e. an RP
n−1
! So we can immediately see that
RP
n
= RP
n−1
∪
f
D
n
,
for f : S
n−1
→ RP
n−1
given by
f(x) = [x].
So
RP
n
has a cell structure with one cell in every degree up to
n
. What are the
boundary maps?
We write
e
i
for the
i
-th degree cell. We know that
e
i
is attached along the
map f described above. More concretely, we have
f : S
i−1
s
RP
i−1
RP
i−1
/RP
i−2
= S
i−1
t
ϕ
i
.
The open upper hemisphere and lower hemisphere of
S
i−1
s
are mapped homeo-
morphically to S
i−1
t
\ {∗}. Furthermore,
f|
upper
= f|
lower
◦ a,
where
a
is the antipodal map. But we know that
deg
(
a
) = (
−
1)
i
. So we have a
zero map if i is odd, and a 2 map if i is even. Then we have
· · · Ze
3
Ze
2
Ze
1
Ze
0
2 0 2 0
.
What happens on the left end depends on whether
n
is even or odd. So we have
H
i
(RP
n
) =
Z i = 0
Z/2Z i odd, i < n
0 i even, 0 < i < n
Z i = n is odd
0 otherwise
.
We can immediately work out the cohomology too. We will just write out the
answer:
H
i
(RP
n
) =
Z i = 0
0 i odd, i < n
Z/2Z i even, 0 < i ≤ n
Z i = n is odd
0 otherwise
.
6 (Co)homology with coefficients
Recall that when we defined (co)homology, we constructed these free
Z
-modules
from our spaces. However, we did not actually use the fact that it was
Z
, we
might as well replace it with any abelian group A.
Definition
((Co)homology with coefficients)
.
Let
A
be an abelian group, and
X be a topological space. We let
C
·
(X; A) = C
·
(X) ⊗ A
with differentials
d ⊗ id
A
. In other words
C
·
(
X
;
A
) is the abelian group obtained
by taking the direct sum of many copies of A, one for each singular simplex.
We let
H
n
(X; A) = H
n
(C
·
(X; A), d ⊗ id
A
).
We can also define
H
cell
n
(X; A) = H
n
(C
cell
·
(X) ⊗ A),
and the same proof shows that H
cell
n
(X; A) = H
n
(X; A).
Similarly, we let
C
·
(X; A) = Hom(C
·
(X), A),
with the usual (dual) differential. We again set
H
n
(X; A) = H
n
(C
·
(X; A)).
We similarly define cellular cohomology.
If A is in fact a commutative ring, then these are in fact R-modules.
We call A the “coefficients”, since a general member of C
·
(X; A) looks like
X
n
σ
s, where n
σ
∈ A, σ : ∆
n
→ X.
We will usually take
A
=
Z, Z/nZ
or
Q
. Everything we’ve proved for homology
holds for these with exactly the same proof.
Example.
In the case of
C
cell
·
(
RP
n
), the differentials are all 0 or 2. So in
C
cell
·
(RP
n
, Z/2), all the differentials are 0. So we have
H
i
(RP
n
, Z/2) =
(
Z/2 0 ≤ i ≤ n
0 i > n
Similarly, the cohomology groups are the same.
On the other hand, if we take the coefficients to be
Q
, then multiplication
by 2 is now an isomorphism. Then we get
C
cell
·
(RP
n
, Q)
(
Q n odd
0 n even
for n not too large.
7 Euler characteristic
There are many ways to define the Euler characteristic, and they are all equivalent.
So to define it, we pick a definition that makes it obvious it is a number.
Definition (Euler characteristic). Let X be a cell complex. We let
χ(X) =
X
n
(−1)
n
number of n-cells of X ∈ Z.
From this definition, it is not clear that this is a property of
X
itself, rather
than something about its cell decomposition.
We similarly define
χ
Z
(X) =
X
n
(−1)
n
rank H
n
(X; Z).
For any field F, we define
χ
F
(X) =
X
n
(−1)
n
dim
F
H
n
(X; F).
Theorem. We have
χ = χ
Z
= χ
F
.
Proof.
First note that the number of
n
cells of
X
is the rank of
C
cell
n
(
X
), which
we will just write as C
n
. Let
Z
n
= ker(d
n
: C
n
→ C
n−1
)
B
n
= im(d
n+1
: C
n+1
→ C
n
).
We are now going to write down two short exact sequences. By definition of
homology, we have
0 B
n
Z
n
H
n
(X; Z) 0 .
Also, the definition of Z
n
and B
n
give us
0 Z
n
C
n
B
n−1
0 .
We will now use the first isomorphism theorem to know that the rank of the
middle term is the sum of ranks of the outer terms. So we have
χ
Z
(X) =
X
(−1)
n
rank H
n
(X) =
X
(−1)
n
(rank Z
n
− rank B
n
).
We also have
rank B
n
= rank C
n+1
− rank Z
n+1
.
So we have
χ
Z
(X) =
X
n
(−1)
n
(rank Z
n
− rank C
n+1
+ rank Z
n+1
)
=
X
n
(−1)
n+1
rank C
n+1
= χ(X).
For χ
F
, we use the fact that
rank C
n
= dim
F
C
n
⊗ F.
8 Cup product
So far, homology and cohomology are somewhat similar. We computed them,
saw they are not the same, but they seem to contain the same information
nevertheless. However, cohomology is 10 times better, because we can define a
ring structure on them, and rings are better than groups.
Just like the case of homology and cohomology, we will be able to write down
the definition easily, but will struggle to compute it.
Definition
(Cup product)
.
Let
R
be a commutative ring, and
φ ∈ C
k
(
X
;
R
),
ψ ∈ C
`
(X; R). Then φ ψ ∈ C
k+`
(X; R) is given by
(φ ψ)(σ : ∆
k+`
→ X) = φ(σ|
[v
0
,...,v
k
]
) · ψ(σ|
[v
k
,...,v
k+`
]
).
Here the multiplication is multiplication in
R
, and
v
0
, · · · , v
`
are the vertices of
∆
k+`
⊆ R
k+`+1
, and the restriction is given by
σ|
[x
0
,...,x
i
]
(t
0
, . . . , t
i
) = σ
X
t
j
x
j
.
This is a bilinear map.
Notation. We write
H
∗
(X; R) =
M
n≥0
H
n
(X; R).
This is the definition. We can try to establish some of its basic properties.
We want to know how this interacts with the differential
d
with the cochains.
The obvious answer
d
(
φ ψ
) = (d
φ
)
(d
ψ
) doesn’t work, because the degrees
are wrong. What we have is:
Lemma. If φ ∈ C
k
(X; R) and ψ ∈ C
`
(X; R), then
d(φ ψ) = (dφ) ψ + (−1)
k
φ (dψ).
This is like the product rule with a sign.
Proof. This is a straightforward computation.
Let σ : ∆
k+`+1
→ X be a simplex. Then we have
((dφ) ψ)(σ) = (dφ)(σ|
[v
0
,...,v
k+1
]
) · ψ(σ|
[v
k+1
,...,v
k+`+1
]
)
= φ
k+1
X
i=0
(−1)
i
σ|
[v
0
,...,ˆv
i
,...,v
k+1
]
!
· ψ(σ|
[v
k+1
,...,v
k+`+1
]
)
(φ (dψ))(σ) = φ(σ|
[v
0
,...,v
k
]
) · (dψ)(σ|
v
k
,...,v
k+`+1
]
)
= φ(σ|
[v
0
,...,v
k
]
) · ψ
k+`+1
X
i=k
(−1)
i−k
σ|
[v
k
,...,ˆv
i
,...,v
k+`+1
]
!
= (−1)
k
φ(σ|
[v
0
,...,v
k
]
) · ψ
k+`+1
X
i=k
(−1)
i
σ|
[v
k
,...,ˆv
i
,...,v
k+`+1
]
!
.
We notice that the last term of the first expression, and the first term of the
second expression are exactly the same, except the signs differ by
−
1. Then the
remaining terms overlap in exactly 1 vertex, so we have
((dφ) ψ)(σ) + (−1)
k
φ (dψ)(σ) = (φ ψ)(dσ) = (d(φ ψ))(σ)
as required.
This is the most interesting thing about these things, because it tells us this
gives a well-defined map on cohomology.
Corollary. The cup product induces a well-defined map
: H
k
(X; R) × H
`
(X; R) H
k+`
(X; R)
([φ], [ψ]) [φ ψ]
Proof. To see this is defined at all, as dφ = 0 = dψ, we have
d(φ ψ) = (dφ) ψ ± φ (dψ) = 0.
So
φ ψ
is a cocycle, and represents the cohomology class. To see this is
well-defined, if φ
0
= φ + dτ , then
φ
0
ψ = φ ψ + dτ ψ = φ ψ + d(τ ψ) ± τ (dψ).
Using the fact that
dψ
= 0, we know that
φ
0
ψ
and
φ ψ
differ by a
boundary, so [φ
0
ψ] = [φ ψ]. The case where we change ψ is similar.
Note that the operation
is associative on cochains, so associative on
H
∗
too.
Also, there is a map 1 : C
0
(X) → R sending σ 7→ 1 for all σ. Then we have
[1] [φ] = [φ].
So we have
Proposition. (H
∗
(X; R), , [1]) is a unital ring.
Note that this is not necessarily commutative! Instead, we have the following
graded commutative condition.
Proposition.
Let
R
be a commutative ring. If
α ∈ H
k
(
X
;
R
) and
β ∈ H
`
(
X
;
R
),
then we have
α β = (−1)
k`
β α
Note that this is only true for the cohomology classes. It is not true in general
for the cochains. So we would expect that this is rather annoying to prove.
The proof relies on the following observation:
Proposition.
The cup product is natural, i.e. if
f
:
X → Y
is a map, and
α, β ∈ H
∗
(Y ; R), then
f
∗
(α β) = f
∗
(α) f
∗
(β).
So f
∗
is a homomorphism of unital rings.
Proof of previous proposition. Let ρ
n
: C
n
(X) → C
n
(x) be given by
σ 7→ (−1)
n(n+1)/2
σ|
[v
n
,v
n−1
,...,v
0
]
The
σ|
[v
n
,v
n−1
,...,v
0
]
tells us that we reverse the order of the vertices, and the
factor of (
−
1)
n(n+1)/2
is the sign of the permutation that reverses 0
, · · · , n
. For
convenience, we write
ε
n
= (−1)
n(n+1)/2
.
Claim.
We claim that
ρ
·
is a chain map, and is chain homotopic to the identity.
We will prove this later.
Suppose the claim holds. We let
φ ∈ C
k
(
X
;
R
) represent
α
and
ψ ∈ C
`
(
X
;
R
)
represent β. Then we have
(ρ
∗
φ ρ
∗
ψ)(σ) = (ρ
∗
φ)(σ|
[v
0
,...,v
k
]
(ρ
∗
ψ)(σ|
[v
k
,...,v
k+`
]
)
= φ(ε
k
· σ|
[v
k
,...,v
0
]
)ψ(ε
`
σ|
[v
k+`
,...,v
k
]
).
Thus, we can compute
ρ
∗
(ψ φ)(σ) = (ψ φ)(ε
k+`
σ|
[v
k+`
,...,v
0
]
)
= ε
k+`
ψ(σ|
[v
k+`
,...,v
k
])φ(σ|
[v
k
,...,v
0
]
)
= ε
k+`
ε
k
ε
`
(ρ
∗
φ ρ
∗
ψ)(σ).
By checking it directly, we can see that ε
n+`
ε
k
ε
`
= (−1)
k`
. So we have
α β = [φ ψ]
= [ρ
∗
φ ρ
∗
ψ]
= (−1)
k`
[ρ
∗
(ψ φ)]
= (−1)
k`
[ψ φ]
= (−1)
kl
β α.
Now it remains to prove the claim. We have
dρ(σ) = ε
n
n
X
i=0
(−1)
j
σ|
[v
n
,...,ˆv
n−i
,...,v
0
]
ρ(dσ) = ρ
n
X
i=0
(−1)
i
σ|
[v
0
,...,ˆv
i
,....,v
n
]
!
= ε
n−1
n
X
j=0
(−1)
j
σ|
[v
n
,...,ˆv
j
,v
0
]
.
We now notice that ε
n−1
(−1)
n−i
= ε
n
(−1)
i
. So this is a chain map!
We now define a chain homotopy. This time, we need a “twisted prism”. We
let
P
n
=
X
i
(−1)
i
ε
n−i
[v
0
, · · · , v
i
, w
n
, · · · , w
i
] ∈ C
n+1
([0, 1] × ∆
n
),
where
v
0
, · · · , v
n
are the vertices of
{
0
} ×
∆
n
and
w
0
, · · · , w
n
are the vertices of
{1} × ∆
n
.
We let
π
: [0
,
1]
×
∆
n
→
∆
n
be the projection, and let
F
X
n
:
C
n
(
X
)
→
C
n+1
(X) be given by
σ 7→ (σ ◦ π)
#
(P
n
).
We calculate
dF
X
n
(σ) = (σ ◦ π)
#
(dP
n
)
= (σ ◦ π
#
)
X
i
X
j≤i
(−1)
j
(−1)
i
ε
n−i
[v
0
, · · · , ˆv
j
, · · · , v
i
, w
0
, · · · , w
i
]
+
X
j≥i
(−1)
n+i+1−j
(−1)
i
ε
n−i
[v
0
, · · · , v
i
, w
n
, · · · , ˆw
j
, · · · , v
i
]
.
The terms with j = i give
(σ ◦ π)
#
X
i
ε
n−i
[v
0
, · · · , v
i−1
, w
n
, · · · , w
i
]
+
X
i
(−1)
n+1
(−1)
i
ε
n−i
[v
0
, · · · , v
i
, w
n
, · · · , w
i+1
]
!
= (σ ◦ π)
#
(ε
n
[w
n
, · · · , w
0
] − [v
0
, · · · , v
n
])
= ρ(σ) − σ
The terms with
j 6
=
i
are precisely
−F
X
n−1
(d
σ
) as required. It is easy to see that
the terms are indeed the right terms, and we just have to check that the signs
are right. I’m not doing that.
There are some other products we can define. One example is the cross
product:
Definition
(Cross product)
.
Let
π
X
:
X × Y → X
,
π
Y
:
X × Y → Y
be the
projection maps. Then we have a cross product
× : H
k
(X; R) ⊗
R
H
`
(Y ; R) H
k+`
(X × Y ; R)
a ⊗ b (π
∗
X
a) (π
∗
Y
b)
.
Note that the diagonal map ∆ :
X → X × X
given by ∆(
x
) = (
x, x
) satisfies
∆
∗
(a × b) = a b
for all a, b ∈ H
∗
(X; R). So these two products determine each other.
There is also a relative cup product
: H
k
(X, A; R) ⊗ H
k
(X; R) → H
k+`
(X, A; R)
given by the same formula. Indeed, to see this is properly defined, note that if
φ ∈ C
k
(X, A; R), then φ is a map
φ : C
k
(X, A) =
C
k
(X)
C
k
(A)
→ R.
In other words, it is a map
C
k
(
X
)
→ R
that vanishes on
C
k
(
A
). Then if
σ ∈ C
k+`
(A) and ψ ∈ C
`
(X; R), then
(φ ψ)(σ) = φ(σ|
[v
0
,...,v
k
]
) · ψ(σ|
[v
k
,...,v
k+`
]
).
We now notice that [
v
0
, · · · , v
k
]
∈ C
k
(
A
). So
φ
kills it, and this vanishes. So
this is a term in H
k+`
(X, A; R).
You might find it weird that the two factors of the cup product are in different
things, but note that a relative cohomology class is in particular a cohomology
class. So this restricts to a map
: H
k
(X, A; R) ⊗ H
k
(X, A; R) → H
k+`
(X, A; R),
but the result we gave is more general.
Example.
Suppose
X
is a space such that the cohomology classes are given by
k 0 1 2 3 4 5 6
H
k
(X, Z) Z 0 0 Z = hxi 0 0 Z = hyi
What can x x be? By the graded commutativity property, we have
x x = −x x.
So we know 2(x x) = 0 ∈ H
6
(X, Z)
∼
=
Z. So we must have x x = 0.
9 K¨unneth theorem and universal coefficients
theorem
We are going to prove two theorems of similar flavour — K¨unneth’s theorem
and the universal coefficients theorem. They are both fairly algebraic results
that relate different homology and cohomology groups. They will be very useful
when we prove things about (co)homologies in general.
In both cases, we will not prove the “full” theorem, as they require knowledge
of certain objects known as
Tor
and
Ext
. Instead, we will focus on a particular
case where the
Tor
and
Ext
vanish, so that we can avoid mentioning them at all.
We start with K¨unneth’s theorem.
Theorem
(K¨unneth’s theorem)
.
Let
R
be a commutative ring, and suppose
that H
n
(Y ; R) is a free R-module for each n. Then the cross product map
M
k+`=n
H
k
(X; R) ⊗ H
`
(Y ; R) H
n
(X × Y ; R)
×
is an isomorphism for every n, for every finite cell complex X.
It follows from the five lemma that the same holds if we have a relative
complex (Y, A) instead of just Y .
For convenience, we will write
H
∗
(
X
;
R
)
⊗H
∗
(
Y
;
R
) for the graded
R
-module
which in grade n is given by
M
k+`=n
H
k
(X; R) ⊗ H
`
(Y ; R).
Then K¨unneth says the map given by
H
∗
(X; R) ⊗ H
∗
(Y ; R) H
∗
(X × Y ; R)
×
is an isomorphism of graded rings.
Proof. Let
F
n
(−) =
M
k+`=n
H
k
(−; R) ⊗ H
`
(Y ; R).
We similarly define
G
n
(−) = H
n
(− × Y ; R).
We observe that for each
X
, the cross product gives a map
×
:
F
n
(
X
)
→ G
n
(
X
),
and, crucially, we know
×
∗
:
F
n
(
∗
)
→ G
n
(
∗
) is an isomorphism, since
F
n
(
∗
)
∼
=
G
n
(∗)
∼
=
H
n
(Y ; R).
The strategy is to show that
F
n
(
−
) and
G
n
(
−
) have the same formal structure
as cohomology and agree on a point, and so must agree on all finite cell complexes.
It is clear that both
F
n
and
G
n
are homotopy invariant, because they are
built out of homotopy invariant things.
We now want to define the cohomology of pairs. This is easy. We define
F
n
(X, A) =
M
i+j=n
H
i
(X, A; R) ⊗ H
j
(Y ; R)
G
n
(X, A) = H
n
(X × Y, A × Y ; R).
Again, the relative cup product gives us a relative cross product, which gives us
a map F
n
(X, A) → G
n
(X, A).
It is immediate
G
n
has a long exact sequence associated to (
X, A
) given by
the usual long exact sequence of (
X × Y, A × Y
). We would like to say
F
has a
long exact sequence as well, and this is where our hypothesis comes in.
If
H
∗
(
Y
;
R
) is a free
R
-module, then we can take the long exact sequence of
(X, A)
· · · H
n
(A; R) H
n
(X, A; R) H
n
(X; R) H
n
(A; R) · · ·
∂
,
and then tensor with
H
j
(
Y
;
R
). This preserves exactness, since
H
j
(
Y
;
R
)
∼
=
R
k
for some
k
, so tensoring with
H
j
(
Y
;
R
) just takes
k
copies of this long exact
sequence. By adding the different long exact sequences for different
j
(with
appropriate translations), we get a long exact sequence for F .
We now want to prove K¨unneth by induction on the number of cells and the
dimension at the same time. We are going to prove that if
X
=
X
0
∪
f
D
n
for some
S
n−1
→ X
0
, and
×
:
F
(
X
0
)
→ G
(
X
0
) is an isomorphism, then
×
:
F
(
X
)
→ G
(
X
)
is also an isomorphism. In doing so, we will assume that the result is true for
attaching any cells of dimension less than n.
Suppose
X
=
X
0
∪
f
D
n
for some
f
:
S
n−1
→ X
0
. We get long exact sequences
F
∗−1
(X
0
) F
∗
(X, X
0
) F
∗
(X) F
∗
(X
0
) F
∗+1
(X, X
0
)
G
∗−1
(X
0
) G
∗
(X, X
0
) G
∗
(X) G
∗
(X
0
) G
∗+1
(X, X
0
)
×
∼
×
×
×
∼
×
Note that we need to manually check that the boundary maps
∂
commute with
the cross product, since this is not induced by maps of spaces, but we will not
do it here.
Now by the five lemma, it suffices to show that the maps on the relative
cohomology × : F
n
(X, X
0
) → G
n
(X, X
0
) is an isomorphism.
We now notice that
F
∗
(
−
) and
G
∗
(
−
) have excision. Since (
X, X
0
) is a good
pair, we have a commutative square
F
∗
(D
n
, ∂D
n
) F
∗
(X, X
0
)
G
∗
(D
n
, ∂D
n
) G
∗
(X, X
0
)
×
∼
×
∼
So we now only need the left-hand map to be an isomorphism. We look at the
long exact sequence for (D
n
, ∂D
n
)!
F
∗−1
(∂D
n
) F
∗
(D
n
, ∂D
n
) F
∗
(D
n
) F
∗
(∂D
n
) F
∗+1
(D
n
, ∂D
n
)
G
∗−1
(∂D
n
) G
∗
(D
n
, ∂D
n
) G
∗
(D
n
) G
∗
(∂D
n
) G
∗+1
(D
n
, ∂D
n
)
×
∼
×
∼
× ×
∼
××
But now we know the vertical maps for
D
n
and
∂D
n
are isomorphisms — the
ones for
D
n
are because they are contractible, and we have seen the result of
∗
already; whereas the result for ∂D
n
follows by induction.
So we are done.
The conditions of the theorem require that
H
n
(
Y
;
R
) is free. When will this
hold? One important example is when
R
is actually a field, in which case all
modules are free.
Example.
Consider
H
∗
(
S
1
, Z
). We know it is
Z
in
∗
= 0
,
1, and 0 elsewhere.
Let’s call the generator of
H
0
(
S
1
, Z
) “1”, and the generator of
H
1
(
S
1
, Z
) as
x
.
Then we know that
x x
= 0 since there isn’t anything in degree 2. So we
know
H
∗
(S
1
, Z) = Z[x]/(x
2
).
Then K¨unneth’s theorem tells us that
H
∗
(T
n
, Z)
∼
=
H
∗
(S
1
; Z)
⊗n
,
where
T
n
= (
S
1
)
n
is the
n
-torus, and this is an isomorphism of rings. So this is
H
∗
(T
n
, Z)
∼
=
Z[x
1
, · · · , x
n
]/(x
2
i
, x
i
x
j
+ x
j
x
i
),
using the fact that
x
i
, x
j
have degree 1 so anti-commute. Note that this has
an interesting cup product! This ring is known as the exterior algebra in
n
generators.
Example.
Let
f
:
S
n
→ T
n
be a map for
n >
1. We claim that this induces
the zero map on the nth cohomology.
We look at the induced map on cohomology:
f
∗
: H
n
(T
n
; Z) H
n
(S
n
, Z) .
Looking at the presentation above, we know that
H
n
(
T
n
, Z
) is generated by
x
1
· · · x
n
, and
f
∗
sends it to (
f
∗
x
1
)
· · ·
(
f
∗
x
n
). But
f
∗
x
i
∈ H
1
(
S
n
, Z
) = 0
for all n > 1. So f
∗
(x
1
· · · x
n
) = 0.
Note that the statement does not involve cup products at all, but it would
be much more difficult to prove this without using cup products!
We are now going to prove another useful result.
Theorem
(Universal coefficients theorem for (co)homology)
.
Let
R
be a PID
and M an R-module. Then there is a natural map
H
∗
(X; R) ⊗ M → H
∗
(X; M).
If
H
∗
(
X
;
R
) is a free module for each
n
, then this is an isomorphism. Similarly,
there is a natural map
H
∗
(X; M) → Hom
R
(H
∗
(X; R), M), ,
which is an isomorphism again if H
∗
(X; R) is free.
In particular, when R = Z, then an R-module is just an abelian group, and
this tells us how homology and cohomology with coefficients in an abelian group
relate to the usual homology and cohomology theory.
Proof.
Let
C
n
be
C
n
(
X
;
R
) and
Z
n
⊆ C
n
be the cycles and
B
n
⊆ Z
n
the
boundaries. Then there is a short exact sequence
0 Z
n
C
n
B
n−1
0
i
g
,
and
B
n−1
≤ C
n−1
is a submodule of a free
R
-module, and is free, since
R
is
a PID. So by picking a basis, we can find a map
s
:
B
n−1
→ C
n
such that
g ◦ s = id
B
n−1
. This induces an isomorphism
i ⊕ s : Z
n
⊕ B
n−1
C
n
.
∼
Now tensoring with M, we obtain
0 Z
n
⊗ M C
n
⊗ M B
n−1
⊗ M 0 ,
which is exact because we have
C
n
⊗ M
∼
=
(Z
n
⊕ B
n−1
) ⊗ M
∼
=
(Z
n
⊗ M) ⊕ (B
n−1
⊗ M).
So we obtain a short exact sequence of chain complexes
0 (Z
n
⊗ M, 0) (C
n
⊗ M, d ⊗ id) (B
n−1
⊗ M, 0) 0 ,
which gives a long exact sequence in homology:
· · · B
n
⊗ M Z
n
⊗ M H
n
(X; M) B
n−1
⊗ M · · ·
We’ll leave this for a while, and look at another short exact sequence. By
definition of homology, we have a long exact sequence
0 B
n
Z
n
H
n
(X; R) 0 .
As
H
n
(
X
;
R
) is free, we have a splitting
t
:
H
n
(
X
;
R
)
→ Z
n
, so as above,
tensoring with M preserves exactness, so we have
0 B
n
⊗ M Z
n
⊗ M H
n
(X; R) ⊗ M 0 .
Hence we know that
B
n
⊗ M → Z
n
⊗ M
is injective. So our previous long exact
sequence breaks up to
0 B
n
⊗ M Z
n
⊗ M H
n
(X; M) 0.
Since we have two short exact sequence with first two terms equal, the last terms
have to be equal as well.
The cohomology version is similar.
10 Vector bundles
10.1 Vector bundles
We now end the series of random topics, and work on a more focused topic. We
are going to look at vector bundles. Intuitively, a vector bundle over a space
X
is a continuous assignment of a vector space to each point in
X
. In the first
section, we are just going to look at vector bundles as topological spaces. In the
next section, we are going to look at homological properties of vector bundles.
Definition
(Vector bundle)
.
Let
X
be a space. A (real) vector bundle of
dimension
d
over
X
is a map
π
:
E → X
, with a (real) vector space structure
on each fiber
E
x
=
π
−1
(
{x}
), subject to the local triviality condition: for each
x ∈ X
, there is a neighbourhood
U
of
x
and a homeomorphism
ϕ
:
E|
U
=
π
−1
(U) → U × R
d
such that the following diagram commutes
E|
U
U × R
d
U
ϕ
π
π
1
,
and for each
y ∈ U
, the restriction
ϕ|
E
y
:
E
y
→ {y}×R
d
is a linear isomorphism
for each y ∈ U. This maps is known as a local trivialization.
We have an analogous definition for complex vector bundles.
Definition
(Section)
.
A section of a vector bundle
π
:
E → X
is a map
s : X → E such that π ◦ s = id. In other words, s(x) ∈ E
x
for each x.
Definition
(Zero section)
.
The zero section of a vector bundle is
s
0
:
X → E
given by s
0
(x) = 0 ∈ E
x
.
Note that the composition
E X E
π
s
0
is homotopic to the identity map on id
E
, since each E
x
is contractible.
One important operation we can do on vector bundles is pullback:
Definition
(Pullback of vector bundles)
.
Let
π
:
E → X
be a vector bundle,
and f : Y → X a map. We define the pullback
f
∗
E = {(y, e) ∈ Y × E : f (y) = π(e)}.
This has a map
f
∗
π
:
f
∗
E → Y
given by projecting to the first coordinate. The
vector space structure on each fiber is given by the identification (
f
∗
E
)
y
=
E
f(y)
.
It is a little exercise in topology to show that the local trivializations of
π
:
E → X
induce local trivializations of f
∗
π : f
∗
E → Y .
Everything we can do on vector spaces can be done on vector bundles, by
doing it on each fiber.
Definition
(Whitney sum of vector bundles)
.
Let
π
:
E → F
and
ρ
:
F → X
be vector bundles. The Whitney sum is given by
E ⊕ F = {(e, f) ∈ E × F : π(e) = ρ(f)}.
This has a natural map
π ⊕ ρ
:
E ⊕ F → X
given by (
π ⊕ ρ
)(
e, f
) =
π
(
e
) =
ρ
(
f
).
This is again a vector bundle, with (
E ⊕ F
)
x
=
E
x
⊕ F
x
and again local
trivializations of E and F induce one for E ⊕ F .
Tensor products can be defined similarly.
Similarly, we have the notion of subbundles.
Definition
(Vector subbundle)
.
Let
π
:
E → X
be a vector bundle, and
F ⊆ E
a subspace such that for each x ∈ X there is a local trivialization (U, ϕ)
E|
U
U × R
d
U
ϕ
π
π
1
,
such that
ϕ
takes
F |
U
to
U × R
k
, where
R
k
⊆ R
d
. Then we say
F
is a vector
sub-bundle.
Definition
(Quotient bundle)
.
Let
F
be a sub-bundle of
E
. Then
E/F
, given
by the fiberwise quotient, is a vector bundle and is given by the quotient bundle.
We now look at one of the most important example of a vector bundle. In
some sense, this is the “universal” vector bundle, as we will see later.
Example (Grassmannian manifold). We let
X = Gr
k
(R
n
) = {k-dimensional linear subgroups of R
n
}.
To topologize this space, we pick a fixed
V ∈ Gr
k
(
R
n
). Then any
k
-dimensional
subspace can be obtained by applying some linear map to
V
. So we obtain a
surjection
GL
n
(R) → Gr
k
(R
n
)
M 7→ M(V ).
So we can given Gr
k
(R
n
) the quotient (final) topology. For example,
Gr
1
(R
n+1
) = RP
n
.
Now to construct a vector bundle, we need to assign a vector space to each point
in
X
. But a point in
Gr
k
(
R
n
) is a vector space, so we have an obvious definition
E = {(V, v) ∈ Gr
k
(R
n
) × R
n
: v ∈ V }.
This has the evident projection
π
:
E → X
given by the first projection. We
then have
E
V
= V.
To see that this is a vector bundle, we have to check local triviality. We fix a
V ∈ Gr
k
(R
n
), and let
U = {W ∈ Gr
k
(R
n
) : W ∩ V
⊥
= {0}}.
We now construct a map
ϕ
:
E|
U
→ U × V
∼
=
U × R
k
by mapping (
W, w
) to
(W, pr
V
(w)), where pr
V
: R
n
→ V is the orthogonal projection.
Now if
w ∈ U
, then
pr
V
(
w
)
6
= 0 since
W ∩ V
⊥
=
{
0
}
. So
ϕ
is a homeomor-
phism. We call this bundle γ
R
k,n
→ Gr
k
(R
n
).
In the same way, we can get a canonical complex vector bundle
γ
C
k,n
→
Gr
k
(C
n
).
Example.
Let
M
be a smooth
d
-dimensional manifold, then it naturally has a
d-dimensional tangent bundle π : T M → M with (T M)|
x
= T
x
M.
If
M ⊆ N
is a smooth submanifold, with
i
the inclusion map, then
T M
is
a subbundle of
i
∗
T N
. Note that we cannot say
T M
is a smooth subbundle of
T N
, since they have different base space, and thus cannot be compared without
pulling back.
The normal bundle of M in N is
ν
M⊆N
=
i
∗
T N
T M
.
Here is a theorem we have to take on faith, because proving it will require
some differential geometry.
Theorem
(Tubular neighbourhood theorem)
.
Let
M ⊆ N
be a smooth sub-
manifold. Then there is an open neighbourhood
U
of
M
and a homeomorphism
ν
M⊆N
→ U
, and moreover, this homeomorphism is the identity on
M
(where
we view M as a submanifold of ν
M⊆N
by the image of the zero section).
This tells us that locally, the neighbourhood of M in N looks like ν
M⊆N
.
We will also need some results from point set topology:
Definition
(Partition of unity)
.
Let
X
be a compact Hausdorff space, and
{U
α
}
α∈I
be an open cover. A partition of unity subordinate to
{U
α
}
is a
collection of functions λ
α
: X → [0, ∞) such that
(i) supp(λ
α
) = {x ∈ X : λ
α
(x) > 0} ⊆ U
α
.
(ii) Each x ∈ X lies in finitely many of these supp(λ
α
).
(iii) For each x, we have
X
α∈I
λ
α
(x) = 1.
Proposition. Partitions of unity exist for any open cover.
You might have seen this in differential geometry, but this is easier, since we
do not require the partitions of unity to be smooth.
Using this, we can prove the following:
Lemma.
Let
π
:
E → X
be a vector bundle over a compact Hausdorff space.
Then there is a continuous family of inner products on
E
. In other words, there
is a map E ⊗ E → R which restricts to an inner product on each E
x
.
Proof.
We notice that every trivial bundle has an inner product, and since every
bundle is locally trivial, we can patch these up using partitions of unity.
Let {U
α
}
α∈I
be an open cover of X with local trivializations
ϕ
α
: E|
U
α
→ U
α
× R
d
.
The inner product on
R
d
then gives us an inner product on
E|
U
α
, say
h · , · i
α
.
We let
λ
α
be a partition of unity associated to
{U
α
}
. Then for
u ⊗ v ∈ E ⊗ E
,
we define
hu, vi =
X
α∈I
λ
α
(π(u))hu, vi
α
.
Now if
π
(
u
) =
π
(
v
) is not in
U
α
, then we don’t know what we mean by
hu, vi
α
,
but it doesn’t matter, because
λ
α
(
π
(
u
)) = 0. Also, since the partition of unity
is locally finite, we know this is a finite sum.
It is then straightforward to see that this is indeed an inner product, since a
positive linear combination of inner products is an inner product.
Similarly, we have
Lemma.
Let
π
:
E → X
be a vector bundle over a compact Hausdorff space.
Then there is some N such that E is a vector subbundle of X × R
N
.
Proof.
Let
{U
α
}
be a trivializing cover of
X
. Since
X
is compact, we may wlog
assume the cover is finite. Call them U
1
, · · · , U
n
. We let
ϕ
i
: E|
U
i
→ U
i
× R
d
.
We note that on each patch,
E|
U
i
embeds into a trivial bundle, because it is a
trivial bundle. So we can add all of these together. The trick is to use a partition
of unity, again.
We define f
i
to be the composition
E|
U
i
U
i
× R
d
R
d
ϕ
i
π
2
.
Then given a partition of unity λ
i
, we define
f : E → X × (R
d
)
n
v 7→ (π(v), λ
1
(π(v))f
1
(v), λ
2
(π(v))f
2
(v), · · · , λ
n
(π(v))f
n
(v)).
We see that this is injective. If
v, w
belong to different fibers, then the first
coordinate distinguishes them. If they are in the same fiber, then there is some
U
i
with
λ
i
(
π
(
u
))
6
= 0. Then looking at the
i
th coordinate gives us distinguishes
them. This then exhibits E as a subbundle of X × R
n
.
Corollary.
Let
π
:
E → X
be a vector bundle over a compact Hausdorff space.
Then there is some
p
:
F → X
such that
E ⊕ F
∼
=
X × R
n
. In particular,
E
embeds as a subbundle of a trivial bundle.
Proof.
By above, we can assume
E
is a subbundle of a trivial bundle. We can
then take the orthogonal complement of E.
Now suppose again we have a vector bundle
π
:
E → X
over a compact
Hausdorff
X
. We can then choose an embedding
E ⊆ X × R
N
, and then we get
a map
f
π
:
X → Gr
d
(
R
N
) sending
x
to
E
x
⊆ R
N
. Moreover, if we pull back the
tautological bundle along f
π
, then we have
f
∗
π
γ
R
k,N
∼
=
E.
So every vector bundle is the pullback of the canonical bundle
γ
R
k,N
over a
Grassmannian. However, there is a slight problem. Different vector bundles
will require different
N
’s. So we will have to overcome this problem if we want
to make a statement of the sort “a vector bundle is the same as a map to a
Grassmannian”.
The solution is to construct some sort of
Gr
d
(
R
∞
). But infinite-dimensional
vector spaces are weird. So instead we take the union of all
Gr
d
(
R
N
). We note
that for each
N
, there is an inclusion
Gr
d
(
R
N
)
→ Gr
d
(
R
n+1
), which induces
an inclusion of the canonical bundle. We can then take the union to obtain
Gr
d
(
R
∞
) with a canonical bundle
γ
R
d
. Then the above result shows that each
vector bundle over
X
is the pullback of the canoncial bundle
γ
R
d
along some map
f : X → Gr
d
(R
∞
).
Note that a vector bundle over
X
does not uniquely specify a map
X →
Gr
d
(
R
∞
), as there can be multiple embeddings of
X
into the trivial bundle
X × R
N
. Indeed, if we wiggle the embedding a bit, then we can get a new bundle.
So we don’t have a coorespondence between vector bundles
π
:
E → X
and maps
f
π
: X → Gr
d
(R
∞
).
The next best thing we can hope for is that the “wiggle the embedding a
bit” is all we can do. More precisely, two maps
f, g
:
X → Gr
d
(
R
∞
) pull back
isomorphic vector bundles if and only if they are homotopic. This is indeed true:
Theorem. There is a correspondence
homotopy classess
of maps
f : X → Gr
d
(R
∞
)
(
d-dimensional
vector bundles
π : E → X
)
[f] f
∗
γ
R
d
[f
π
] π
The proof is mostly technical, and is left as an exercise on the example sheet.
10.2 Vector bundle orientations
We are now going to do something that actually involves algebraic topology.
Unfortunately, we have to stop working with arbitrary bundles, and focus on
orientable bundles instead. So the first thing to do is to define orientability.
What we are going to do is to come up with a rather refined notion of
orientability. For each commutative ring
R
, we will have the notion of
R
-
orientability. The strength of this condition will depend on what
R
is — any
vector bundle is
F
2
orientable, while
Z
-orientability is the strongest — if a vector
bundle is Z-orientable, then it is R-orientable for all R.
While there isn’t really a good geometric way to think about general
R
-
orientability, the reason for this more refined notion is that whenever we want
things to be true for (co)homology with coefficients in
R
, then we need the
bundle to be R-orientable.
Let’s begin. Let π : E → X be a vector bundle of dimension d. We write
E
#
= E \ s
0
(X).
We now look at the relative homology groups
H
i
(E
x
, E
#
x
; R),
where E
#
x
= E
x
\ {0}.
We know
E
x
is a
d
-dimensional vector space. So we can choose an isomorphism
E
x
→ R
d
. So after making this choice, we know that
H
i
(E
x
, E
#
x
; R)
∼
=
H
i
(R
d
, R
d
\ {0}; R) =
(
R i = d
0 otherwise
However, there is no canonical generator of
H
d
(
E
x
, E
#
x
;
R
) as an
R
-module, as
we had to pick an isomorphism E
x
∼
=
R
d
.
Definition
(
R
-orientation)
.
A local
R
-orientation of
E
at
x ∈ X
is a choice of
R-module generator ε
x
∈ H
d
(E
x
, E
#
x
; R).
An
R
-orientation is a choice of local
R
-orientation
{ε
x
}
x∈X
which are com-
patible in the following way: if
U ⊆ X
is open on which
E
is trivial, and
x, y ∈ U
,
then under the homeomorphisms (and in fact linear isomorphisms):
E
x
E|
U
U × R
d
R
d
E
y
h
x
ϕ
α
∼
=
π
2
h
y
the map
h
∗
y
◦ (h
−1
x
)
∗
: H
d
(E
x
, E
#
x
; R) → H
d
(E
y
, E
#
y
; R)
sends
ε
x
to
ε
y
. Note that this definition does not depend on the choice of
ϕ
U
,
because we used it twice, and they cancel out.
It seems pretty horrific to construct an orientation. However, it isn’t really
that bad. For example, we have
Lemma. Every vector bundle is F
2
-orientable.
Proof. There is only one possible choice of generator.
In the interesting cases, we are usually going to use the following result to
construct orientations:
Lemma.
If
{U
α
}
α∈I
is a family of covers such that for each
α, β ∈ I
, the
homeomorphism
(U
α
∩ U
β
) × R
d
E|
U
α
∩U
β
(U
α
∩ U
β
) × R
d
∼
=
ϕ
α
∼
=
ϕ
β
gives an orientation preserving map from (
U
α
∩ U
β
)
× R
d
to itself, i.e. has a
positive determinant on each fiber, then E is orientable for any R.
Note that we don’t have to check the determinant at each point on
U
α
∩ U
β
.
By continuity, we only have to check it for one point.
Proof.
Choose a generator
u ∈ H
d
(
R
d
, R
d
\ {
0
}
;
R
). Then for
x ∈ U
α
, we define
ε
x
by pulling back u along
E
x
E|
U
α
U
α
× R
d
R
d
ϕ
α
π
2
. (†
α
)
If
x ∈ U
β
as well, then the analogous linear isomorphism
†
α
differs from
†
β
by
post-composition with a linear map
L
:
R
d
→ R
d
of positive determinant. We
now use the fact that any linear map of positive determinant is homotopic to the
identity. Indeed, both
L
and
id
lies in
GL
+
d
(
R
), a connected group, and a path
between them will give a homotopy between the maps they represent. So we
know (
†
α
) is homotopic to (
†
β
). So they induce the same maps on cohomology
classes.
Now if we don’t know that the maps have positive determinant, then (
†
α
)
and (
†
β
) might differ by a sign. So in any ring
R
where 2 = 0, we know every
vector bundle is
R
-orientable. This is a generalization of the previous result for
F
2
we had.
10.3 The Thom isomorphism theorem
We now get to the main theorem about vector bundles.
Theorem
(Thom isomorphism theorem)
.
Let
π
:
E → X
be a
d
-dimensional
vector bundle, and {ε
x
}
x∈X
be an R-orientation of E. Then
(i) H
i
(E, E
#
; R) = 0 for i < d.
(ii)
There is a unique class
u
E
∈ H
d
(
E, E
#
;
R
) which restricts to
ε
x
on each
fiber. This is known as the Thom class.
(iii) The map Φ given by the composition
H
i
(X; R) H
i
(E; R) H
i+d
(E, E
#
; R)
π
∗
−^u
E
is an isomorphism.
Note that (i) follows from (iii), since H
i
(X; R) = 0 for i < 0.
Before we go on and prove this, we talk about why it is useful.
Definition
(Euler class)
.
Let
π
:
E → X
be a vector bundle. We define the
Euler class e(E) ∈ H
d
(X; R) by the image of u
E
under the composition
H
d
(E, E
#
; R) H
d
(E; R) H
d
(X; R)
s
∗
0
.
This is an example of a characteristic class, which is a cohomology class
related to an oriented vector bundle that behaves nicely under pullback. More
precisely, given a vector bundle
π
:
E → X
and a map
f
:
Y → X
, we can form
a pullback
f
∗
E E
Y X
ˆ
f
f
∗
π
π
f
.
Since we have a fiberwise isomorphism (
f
∗
E
)
y
∼
=
E
f(y)
, an
R
-orientation for
E
induces one for
f
∗
E
, and we know
f
∗
(
u
E
) =
u
f
∗
E
by uniqueness of the Thom
class. So we know
e(f
∗
(E)) = f
∗
e(E) ∈ H
d
(Y ; R).
Now the Euler class is a cohomology class of
X
itself, so we can use the Euler
class to compare and contrast different vector bundles.
How can we think of the Euler class? It turns out the Euler class gives us an
obstruction to the vector bundle having a non-zero section.
Theorem.
If there is a section
s
:
X → E
which is nowhere zero, then
e
(
E
) =
0 ∈ H
d
(X; R).
Proof.
Notice that any two sections of
E → X
are homotopic. So we have
e ≡ s
∗
0
u
E
=
s
∗
u
E
. But since
u
E
∈ H
d
(
E, E
#
;
R
), and
s
maps into
E
#
, we have
s
∗
u
E
.
Perhaps more precisely, we look at the long exact sequence for the pair
(E, E
#
), giving the diagram
H
d
(E, E
#
; R) H
d
(E; R) H
d
(E
#
; R)
H
d
(X; R)
s
∗
0
s
∗
Since
s
and
s
0
are homotopic, the diagram commutes. Also, the top row is exact.
So
u
E
∈ H
d
(
E, E
#
;
R
) gets sent along the top row to 0
∈ H
d
(
E
#
;
R
), and thus
s
∗
sends it to 0
∈ H
d
(
X
;
R
). But the image in
H
d
(
X
;
R
) is exactly the Euler
class. So the Euler class vanishes.
Now cohomology is not only a bunch of groups, but also a ring. So we can
ask what happens when we cup u
E
with itself.
Theorem. We have
u
E
u
E
= Φ(e(E)) = π
∗
(e(E)) u
E
∈ H
∗
(E, E
#
; R).
This is just tracing through the definitions.
Proof. By construction, we know the following maps commute:
H
d
(E, E
#
; R) ⊗ H
d
(E, E
#
; R) H
2d
(E, E
#
; R)
H
d
(E; R) ⊗ H
d
(E, E
#
; R)
^
q
∗
⊗id
^
We claim that the Thom class
u
E
⊗ u
E
∈ H
d
(
E, E
#
;
R
)
⊗ H
d
(
E, E
#
;
R
) is sent
to π
∗
(e(E)) ⊗ u
E
∈ H
d
(E; R) ⊗ H
d
(E, E
#
; R).
By definition, this means we need
q
∗
u
E
= π
∗
(e(E)),
and this is true because π
∗
is homotopy inverse to s
∗
0
and e(E) = s
∗
0
q
∗
u
E
.
So if we have two elements Φ(c), Φ(d) ∈ H
∗
(E, E
#
; R), then we have
Φ(c) Φ(d) = π
∗
c u
E
π
∗
d u
E
= ±π
∗
c π
∗
d u
E
u
E
= ±π
∗
(c d e(E)) u
E
= ±Φ(c d e(E)).
So
e
(
E
) is precisely the information necessary to recover the cohomology ring
H
∗
(E, E
#
; R) from H
∗
(X; R).
Lemma.
If
π
:
E → X
is a
d
-dimensional
R
-module vector bundle with
d
odd,
then 2e(E) = 0 ∈ H
d
(X; R).
Proof.
Consider the map
α
:
E → E
given by negation on each fiber. This then
gives an isomorphism
a
∗
: H
d
(E, E
#
; R) H
d
(E, E
#
; R).
∼
=
This acts by negation on the Thom class, i.e.
a
∗
(u
E
) = −u
E
,
as on the fiber
E
x
, we know
a
is given by an odd number of reflections, each
of which acts on
H
d
(
E
x
, E
#
x
;
R
) by
−
1 (by the analogous result on
S
n
). So we
change
ε
x
by a sign. We then lift this to a statement about
u
E
by the fact that
u
E
is the unique thing that restricts to ε
x
for each x.
But we also know
a ◦ s
0
= s
0
,
which implies
s
∗
0
(a
∗
(u
E
)) = s
∗
0
(u
E
).
Combining this with the result that a
∗
(u
E
) = −u
E
, we get that
2e(E) = 2s
∗
0
(u
E
) = 0.
This is a disappointing result, because if we already know that
H
d
(
X
;
R
) has
no 2-torsion, then e(E) = 0.
After all that fun, we prove the Thom isomorphism theorem.
Proof of Thom isomorphism theorem.
We will drop the “
R
” in all our diagrams
for readability (and also so that it fits in the page).
We first consider the case where the bundle is trivial, so
E
=
X × R
d
. Then
we note that
H
∗
(R
d
, R
d
\ {0}) =
(
R ∗ = d
0 ∗ 6= d
.
In particular, the modules are free, and (a relative version of) K¨unneth’s theorem
tells us the map
× : H
∗
(X) ⊗ H
∗
(R
d
, R
d
\ {0}) H
∗
(X × R
d
, X × (R
d
\ {0}))
∼
=
is an isomorphism. Then the claims of the Thom isomorphism theorem follow
immediately.
(i)
For
i < d
, all the summands corresponding to
H
i
(
X × R
d
, X ×
(
R
d
\ {
0
}
))
vanish since the H
∗
(R
d
, R
d
\ {0}) term vanishes.
(ii) The only non-vanishing summand for H
d
(X × R
d
, X × (R
d
\ {0}) is
H
0
(X) ⊗ H
d
(R
d
, R
d
\ {0}).
Then the Thom class must be 1
⊗ u
, where
u
is the object corresponding
to ε
x
∈ H
d
(E
x
, E
#
x
) = H
d
(R
d
, R
d
\ {0}), and this is unique.
(iii) We notice that Φ is just given by
Φ(x) = π
∗
(x) u
E
= x × u
E
,
which is an isomorphism by K¨unneth.
We now patch the result up for a general bundle. Suppose
π
:
E → X
is a
bundle. Then it has an open cover of trivializations, and moreover if we assume
our
X
is compact, there are finitely many of them. So it suffices to show that
if
U, V ⊆ X
are open sets such that the Thom isomorphism the holds for
E
restricted to U, V, U ∩ V , then it also holds on U ∪ V .
The relative Mayer-Vietoris sequence gives us
H
d−1
(E|
U∩V
, E
#
|
U∩V
) H
d
(E|
U∪V
, E
#
|
U∪V
)
H
d
(E|
U
, E
#
|
U
) ⊕ H
d
(E|
V
, E
#
|
V
) H
d
(E|
U∩V
, E
#
|
U∩V
).
∂
MV
We first construct the Thom class. We have
u
E|
V
∈ H
d
(E|
V
, E
#
), u
E|
U
∈ H
d
(E|
U
, E
#
).
We claim that (
u
E|
U
, u
E|
V
)
∈ H
d
(
E|
U
, E
#
|
U
)
⊕ H
d
(
E|
V
, E
#
|
V
) gets sent to 0
by
i
∗
U
− i
∗
V
. Indeed, both the restriction of
u
E|
U
and
u
E|
V
to
U ∩ V
are Thom
classes, so they are equal by uniqueness, so the difference vanishes.
Then by exactness, there must be some
u
E|
U∪V
∈ H
d
(
E|
U∪V
, E
#
|
U∪V
) that
restricts to
u
E|
U
and
u
E|
V
in
U
and
V
respectively. Then this must be a Thom
class, since the property of being a Thom class is checked on each fiber. Moreover,
we get uniqueness because
H
d−1
(
E|
U∩V
, E
#
|
U∩V
) = 0, so
u
E|
U
and
u
E|
V
must
be the restriction of a unique thing.
The last part in the Thom isomorphism theorem come from a routine appli-
cation of the five lemma, and the first part follows from the last as previously
mentioned.
10.4 Gysin sequence
Now we do something interesting with vector bundles. We will come up with a
long exact sequence associated to a vector bundle, known as the Gysin sequence.
We will then use the Gysin sequence to deduce something about the base space.
Suppose we have a
d
-dimensional vector bundle
π
:
E → X
that is
R
-oriented.
We want to talk about the unit sphere in every fiber of
E
. But to do so, we
need to have a notion of length, and to do that, we want an inner product. But
luckily, we do have one, and we know that any two norms on a finite-dimensional
vector space are equivalent. So we might as well arbitrarily choose one.
Definition
(Sphere bundle)
.
Let
π
:
E → X
be a vector bundle, and let
h · , · i : E ⊗ E → R be an inner product, and let
S(E) = {v ∈ E; hv, vi = 1} ⊆ E.
This is the sphere bundle associated to E.
Since the unit sphere is homotopy equivalent to
R
d
\ {
0
}
, we know the
inclusion
j : S(E) E
#
is a homotopy equivalence, with inverse given by normalization.
The long exact sequence for the pair (
E, E
#
) gives (as before, we do not
write the R):
H
i+d
(E, E
#
) H
i+d
(E) H
i+d
(E
#
) H
i+d+1
(E, E
#
)
H
i
(X) H
i+d
(X) H
i+d
(S(E)) H
i+1
(X)
s
∗
0
j
∗
Φ
· ^e(E)
π
∗
p
∗
p
!
Φ
where
p
:
S
(
E
)
→ E
is the projection, and
p
!
is whatever makes the diagram
commutes (since
j
∗
and Φ are isomorphisms). The bottom sequence is the Gysin
sequence, and it is exact because the top row is exact. This is in fact a long
exact sequence of
H
∗
(
X
;
R
)-modules, i.e. the maps commute with cup products.
Example.
Let
L
=
γ
C
1,n+1
→ CP
n
=
Gr
1
(
C
n+1
) be the tautological 1 complex
dimensional vector bundle on
Gr
1
(
C
n+1
). This is
Z
-oriented as any complex
vector bundle is, because if we consider the inclusion
GL
1
(C) → GL
2
(R)
obtained by pretending
C
is
R
2
, we know
GL
1
(
C
) is connected, so lands in
the component of the identity, so has positive determinant. The sphere bundle
consists of
S(L) = {(V, v) ∈ CP
n
× C
n+1
: v ∈ V, |v| = 1}
∼
=
{v ∈ C
n+1
: |v| = 1}
∼
=
S
2n+1
,
where the middle isomorphism is given by
(V, v) v
(hvi, v) v
The Gysin sequence is
H
i+1
(S
2n+1
) H
i
(CP
n
) H
i+2
(CP
n
) H
i+2
(S
2n+1
)
p
!
^e(L)
p
∗
Now if
i ≤
2
n −
2, then both outer terms are 0. So the maps in the middle are
isomorphisms. Thus we get isomorphisms
H
0
(CP
n
) H
2
(CP
n
) H
4
(CP
n
) · · ·
Z · 1 Z · e(L) Z · e(L)
2
^e(L) ^e(L)
Similarly, we know that the terms in the odd degree vanish.
Checking what happens at the end points carefully, the conclusion is that
H
∗
(CP
n
) = Z[e(L)]/(e(L)
n+1
)
as a ring.
Example. We do the real case of the above computation. We have
K = γ
R
1,n+1
→ RP
n
= Gr
1
(R
n+1
).
The previous trick doesn’t work, and indeed this isn’t
Z
-orientable. However, it
is
F
2
-oriented as every vector bundle is, and by exactly the same argument, we
know
S(L)
∼
=
S
n
.
So by the same argument as above, we will find that
H
∗
(RP
n
, F
2
)
∼
=
F
2
[e(L)]/(e(L)
n+1
).
Note that this is different from the one we had before, because here
deg e
(
L
) = 1,
while the complex case had degree 2.
11 Manifolds and Poincar´e duality
We are going to prove Poincar´e duality, and then use it to prove a lot of things
about manifolds. Poincar´e duality tells us that for a compact oriented manifold
M of dimension n, we have
H
d
(M)
∼
=
H
n−d
(M).
To prove this, we will want to induct over covers of
M
. However, given a compact
manifold, the open covers are in general not compact. We get compactness only
when we join all of them up. So we need to come up with a version of Poincar´e
duality that works for non-compact manifolds, which is less pretty and requires
the notion of compactly supported cohomology.
11.1 Compactly supported cohomology
Definition
(Support of cochain)
.
Let
ϕ ∈ C
n
(
X
) be a cochain. We say
ϕ
has
support in
S ⊆ X
if whenever
σ
: ∆
n
→ X \ S ⊆ X
, then
ϕ
(
σ
) = 0. In this case,
dϕ also has support in S.
Note that this has a slight subtlety. The definition only requires that if
σ
lies
completely outside S, then ϕ(σ) vanishes. However, we can have simplices that
extends very far and only touches
S
slightly, and the support does not tell us
anything about the value of
σ
. Later, we will get around this problem by doing
sufficient barycentric subdivision.
Definition
(Compactly-supported cochain)
.
Let
C
·
c
(
X
)
⊆ C
·
(
X
) be the sub-
chain complex consisting of these
ϕ
which has support in some compact
K ⊆ X
.
Note that this makes sense — we have seen that if
ϕ
has support in
K
,
then d
ϕ
has support in
K
. To see it is indeed a sub-chain complex, we need to
show that
C
·
c
(
X
) is a subgroup! Fortunately, if
ϕ
has support on
K
, and
ψ
has
support in L, then ϕ + ψ has support in K ∪ L, which is compact.
Definition
(Compactly-supported cohomology)
.
The compactly supported co-
homology of X is
H
∗
c
(X) = H
∗
(C
·
c
(X)).
Note that we can write
C
·
c
(X) =
[
K compact
C
·
(X, X \ K) ⊆ C
·
(X).
We would like to say that the compactly supported cohomology is also “built out
of” those relative cohomology, but we cannot just take the union, because the
relative cohomology is not a subgroup of
H
∗
(
X
). To do that, we need something
more fancy.
Definition
(Directed set)
.
A directed set is a partial order (
I, ≤
) such that for
all i, j ∈ I, there is some k ∈ I such that i ≤ k and j ≤ k.
Example. Any total order is a directed system.
Example. N with divisibility | as the partial order is a directed system.
Definition
(Direct limit)
.
Let
I
be a directed set. An direct system of abelian
groups indexed by
I
is a collection of abelian groups
G
i
for each
i ∈ I
and
homomorphisms
ρ
ij
: G
i
→ G
j
for all i, j ∈ I such that i ≤ j, such that
ρ
ii
= id
G
i
and
ρ
ik
= ρ
jk
◦ ρ
ij
whenever i ≤ j ≤ k.
We define the direct limit on the system (G
i
, ρ
ij
) to be
lim
−→
i∈I
G
i
=
M
i∈I
G
i
!
/hx − ρ
ij
(x) : x ∈ G
i
i.
The underlying set of it is
a
i∈I
G
i
!
/{x ∼ ρ
ij
(x) : x ∈ G
i
}.
In terms of the second description, the group operation is given as follows:
given
x ∈ G
i
and
y ∈ G
j
, we find some
k
such that
i, j ≤ k
. Then we can view
x, y
as elements as
G
k
and do the operation there. It is an exercise to show that
these two descriptions are indeed the same.
Now observe that if
J ⊆ I
is a sub-directed set such that for all
a ∈ I
, there
is some b ∈ J such that a ≤ b. Then we have
lim
−→
i∈J
G
i
∼
=
lim
−→
i∈I
G
i
.
So our claim is now
Theorem. For any space X, we let
K(X) = {K ⊆ X : K is compact}.
This is a directed set under inclusion, and the map
K 7→ H
n
(X, X \ K)
gives a direct system of abelian groups indexed by
K
(
X
), where the maps
ρ
are
given by restriction.
Then we have
H
∗
c
(X)
∼
=
lim
−→
K(X)
H
n
(X, X \ K).
Proof. We have
C
n
c
(X)
∼
=
lim
−→
K(X)
C
n
(X, X \ K),
where we have a map
lim
−→
K(α)
C
n
(X, X \ K) → C
n
c
(X)
given in each component of the direct limit by inclusion, and it is easy to see
that this is well-defined and bijective.
It is then a general algebraic fact that
H
∗
commutes with inverse limits, and
we will not prove it.
Lemma. We have
H
i
c
(R
d
; R)
∼
=
(
R i = d
0 otherwise
.
Proof. Let B ∈ K(R
d
) be the balls, namely
B = {nD
d
, n = 0, 1, 2, · · · }.
Then since every compact set is contained in one of them, we have
H
n
c
(X)
∼
=
lim
−→
K∈K(R
d
)
H
n
(R
d
, R
d
\ K; R)
∼
=
lim
−→
nD
d
∈B
H
n
(R
d
, R
d
\ nD
d
; R)
We can compute that directly. Since R
d
is contractible, the connecting map
H
i
(R
d
, R
d
\ nD
d
; R) → H
i−1
(R
d
\ nD
d
; R)
in the long exact sequence is an isomorphism. Moreover, the following diagram
commutes:
H
i
(R
d
, R
d
\ nD
n
; R) H
i
(R
d
, R
d
\ (n + 1)D
d
; R)
H
i−1
(R
d
\ nD
d
; R) H
i−1
(R
d
\ (n + 1)D
d
; R)
∂
ρ
n,n+1
∂
But all maps here are isomorphisms because the horizontal maps are homotopy
equivalences. So we know
lim
−→
H
i
(R
d
, R
d
\ nD
d
; R)
∼
=
H
i
(R
d
, R
d
\ {0}; R)
∼
=
H
i−1
(R
d
\ {0}; R).
So it follows that
H
i
(R
d
, R
d
\ {0}; R) =
(
R i = d
0 otherwise
.
In general, this is how we always compute compactly-supported cohomology
— we pick a suitable subset of K(X) and compute the limit of that instead.
Note that compactly-supported cohomology is not homotopy-invariant! It
knows about the dimension of
R
d
, since the notion of compactness is not ho-
motopy invariant. Even worse, in general, a map
f
:
X → Y
does not induce a
map
f
∗
:
H
∗
c
(
Y
)
→ H
∗
c
(
X
). Indeed, the usual map does not work because the
preimage of a compact set of a compact set is not necessarily compact.
Definition
(Proper map)
.
A map
f
:
X → Y
of spaces is proper if the preimage
of a compact space is compact.
Now if
f
is proper, then it does induce a map
H
∗
c
(
·
) by the usual construction.
From now on, we will assume all spaces are Hausdorff, so that all compact
subsets are closed. This isn’t too bad a restriction since we are ultimately
interested in manifolds, which are by definition Hausdorff.
Let
i
:
U → X
be the inclusion of an open subspace. We let
K ⊆ U
be
compact. Then by excision, we have an isomorphism
H
∗
(U, U \ K)
∼
=
H
∗
(X, X \ K),
since the thing we cut out, namely
X \ U
, is already closed, and
U \ K
is open,
since K is closed.
So a compactly supported cohomology class on
U
gives one on
X
. So we get
a map
i
∗
: H
∗
c
(U) → H
∗
c
(X).
We call this “extension by zero”. Indeed, this is how the cohomology class works
— if you have a cohomology class
φ
on
U
supported on
K ⊆ U
, then given any
simplex in
X
, if it lies inside
U
, we know how to evaluate it. If it lies outside
K
,
then we just send it to zero. Then by barycentric subdivision, we can assume
every simplex is either inside U or outside K, so we are done.
Example. If i : U → R
d
is an open ball, then the map
i
∗
: H
∗
c
→ H
∗
c
(R
d
)
is an isomorphism. So each cohomology class is equivalent to something with a
support as small as we like.
Since it is annoying to write H
n
(X, X \ K) all the time, we write
H
n
(X | K; R) = H
n
(X, X \ K; R).
By excision, this depends only on a neighbourhood of
K
in
X
. In the case where
K
is a point, this is local cohomology at a point. So it makes sense to call this
local cohomology near K ⊆ X.
Our end goal is to produce a Mayer-Vietoris for compactly-supported coho-
mology. But before we do that, we first do it for local cohomology.
Proposition. Let K, L ⊆ X be compact. Then there is a long exact sequence
H
n
(X | K ∩ L) H
n
(X | K) ⊕ H
n
(X | L) H
n
(X | K ∪ L)
H
n+1
(X | K ∩ L) H
n+1
(X | K) ⊕ H
n+1
(X | L) · · ·
∂
,
where the unlabelled maps are those induced by inclusion.
We are going to prove this by relating it to a Mayer-Vietoris sequence of
some sort.
Proof. We cover X \ K ∩ L by
U = {X \ K, X \ L}.
We then draw a huge diagram (here
∗
denotes the dual, i.e.
X
∗
=
Hom
(
X
;
R
),
and C
·
(X | K) = C
·
(X, X \ K)):
0 0 0
0
C
·
(X)
C
U
·
(X\K∩L)
∗
C
·
(X | K) ⊕ C
·
(X | L) C
·
(X | K ∪ L) 0
0 C
·
(X) C
·
(X) ⊕ C
·
(X) C
·
(X) 0
0 C
·
U
(X \ K ∩ L) C
·
(X \ K) ⊕ C
·
(X \ L) C
·
(X \ K ∪ L) 0
0 0 0
(id,− id)
id + id
(j
∗
1
,−j
∗
2
) i
∗
1
+i
∗
2
This is a diagram. Certainly.
The bottom two rows and all columns are exact. By a diagram chase (the
nine lemma), we know the top row is exact. Taking the long exact sequence
almost gives what we want, except the first term is a funny thing.
We now analyze that object. We look at the left vertical column:
0 Hom
C
·
(x)
C
U
·
(X\K∩L)
, R
C
·
(X) Hom(C
U
·
(X \ K ∩ L), R) 0
Now by the small simplices theorem, the right hand object gives the same
(co)homology as
C
·
(
X \ K ∩ L
;
R
). So we can produce another short exact
sequence:
0 Hom
C
·
(x)
C
U
·
(X\(K∩L))
, R
C
·
(X) Hom(C
U
·
(X \ K ∩ L), R) 0
0 C
·
(X, X \ K ∩ L) C
·
(X) Hom(C
·
(X \ K ∩ L), R) 0
Now the two right vertical arrows induce isomorphisms when we pass on to
homology. So by taking the long exact sequence, the five lemma tells us the left
hand map is an isomorphism on homology. So we know
H
∗
Hom
C
·
(x)
C
U
·
(X \ (K ∩ L))
, R
!!
∼
=
H
∗
(X | K ∩ L).
So the long exact of the top row gives what we want.
Corollary.
Let
X
be a manifold, and
X
=
A ∪ B
, where
A, B
are open sets.
Then there is a long exact sequence
H
n
c
(A ∩ B) H
n
c
(A) ⊕ H
n
c
(B) H
n
c
(X)
H
n+1
c
(A ∩ B) H
n+1
c
(A) ⊕ H
n+1
c
(B) · · ·
∂
Note that the arrows go in funny directions, which is different from both
homology and cohomology versions!
Proof.
Let
K ⊆ A
and
L ⊆ B
be compact sets. Then by excision, we have
isomorphisms
H
n
(X | K)
∼
=
H
n
(A | K)
H
n
(X | L)
∼
=
H
n
(B | L)
H
n
(X | K ∩ L)
∼
=
H
n
(A ∩ B | K ∩ L).
So the long exact sequence from the previous proposition gives us
H
n
(A ∩ B | K ∩ L) H
n
(A | K) ⊕ H
n
(B | L) H
n
(X | K ∪ L)
H
n+1
(A ∩ B | K ∩ L) H
n+1
(A | K) ⊕ H
n+1
(B | L) · · ·
∂
The next step is to take the direct limit over
K ∈ K
(
A
) and
L ∈ K
(
B
). We
need to make sure that these do indeed give the right compactly supported
cohomology. The terms
H
n
(
A | K
)
⊕ H
n
(
B | L
) are exactly right, and the one
for
H
n
(
A ∩ B | K ∩ L
) also works because every compact set in
A ∩ B
is a
compact set in
A
intersect a compact set in
B
(take those to be both the original
compact set).
So we get a long exact sequence
H
n
c
(A ∩ B) H
n
c
(A) ⊕ H
n
c
(B) lim
−→
K∈K(A)
L∈K(B)
H
n
(X | K ∪ L) H
n+1
c
(A ∩ B)
∂
To show that that funny direct limit is really what we want, we have to show
that every compact set
C ∈ X
lies inside some
K ∪ L
, where
K ⊆ A
and
L ⊆ B
are compact.
Indeed, as
X
is a manifold, and
C
is compact, we can find a finite set of
closed balls in
X
, each in
A
or in
B
, such that their interiors cover
C
. So done.
(In general, this will work for any locally compact space)
This is all we have got to say about compactly supported cohomology. We
now start to talk about manifolds.
11.2 Orientation of manifolds
Similar to the case of vector bundles, we will only work with manifolds with
orientation. The definition of orientation of a manifold is somewhat similar
to the definition of orientation of a vector bundle. Indeed, it is true that an
orientation of a manifold is just an orientation of the tangent bundle, but we
will not go down that route, because the description we use for orientation here
will be useful later on. After defining orientation, we will prove a result similar
to (the first two parts of) the Thom isomorphism theorem.
For a d-manifold M and x ∈ M, we know that
H
i
(M | x; R)
∼
=
(
R i = d
0 i 6= d
.
We can then define a local orientation of a manifold to be a generator of this
group.
Definition
(Local
R
-orientation of manifold)
.
Fr a
d
-manifold
M
, a local
R
-
orientation of M at x is an R-module generator µ
x
= H
d
(M | x; R).
Definition
(
R
-orientation)
.
An
R
-orientation of
M
is a collection
{µ
x
}
x∈M
of
local R-orientations such that if
ϕ : R
d
→ U ⊆ M
is a chart of M , and p, q ∈ R
d
, then the composition of isomorphisms
H
d
(M | ϕ(p)) H
d
(U | ϕ(p)) H
d
(R
d
| p)
H
d
(M | ϕ(q)) H
d
(U | ϕ(q)) H
d
(R
d
| q)
∼
ϕ
∗
∼
∼
∼
ϕ
∗
∼
sends
µ
x
to
µ
y
, where the vertical isomorphism is induced by a translation of
R
d
.
Definition
(Orientation-preserving homeomorphism)
.
For a homomorphism
f
:
U → V
with
U, V ∈ R
d
open, we say
f
is
R
-orientation-preserving if for each
x ∈ U, and y = f(x), the composition
H
d
(R
d
| 0; R) H
d
(R
d
| x; R) H
d
(U | x; R)
H
d
(R
d
| 0; R) H
d
(R
d
| y; R) H
d
(V | y; R)
translation excision
f
∗
translation excision
is the identity H
d
(R
d
| 0; R) → H
d
(R
d
| 0; R).
As before, we have the following lemma:
Lemma.
(i) If R = F
2
, then every manifold is R-orientable.
(ii)
If
{ϕ
α
:
R
d
→ U
α
⊆ M }
is an open cover of
M
by Euclidean space such
that each homeomorphism
R
d
⊇ ϕ
−1
α
(U
α
∩ U
β
) U
α
∩ U
β
ϕ
−1
β
(U
α
∩ U
β
) ⊆ R
d
ϕ
−1
α
ϕ
−1
β
is orientation-preserving, then M is R-orientable.
Proof.
(i) F
2
has a unique F
2
-module generator.
(ii)
For
x ∈ U
α
, we define
µ
x
to be the image of the standard orientation of
R
d
via
H
d
(M | x) H
α
(U
d
| x) H
d
(R
d
| ϕ
−1
α
(x)) R
d
(R
d
| 0)
∼
=
(ϕ
α
)
∗
trans.
If this is well-defined, then it is obvious that this is compatible. However,
we have to check it is well-defined, because to define this, we need to pick
a chart.
If
x ∈ U
β
as well, we need to look at the corresponding
µ
0
x
defined using
U
β
instead. But they have to agree by definition of orientation-preserving.
Finally, we get to the theorem:
Theorem. Let M be an R-oriented manifold and A ⊆ M be compact. Then
(i)
There is a unique class
µ
A
∈ H
d
(
M | A
;
R
) which restricts to
µ
x
∈ H
d
(
M |
x; R) for all x ∈ A.
(ii) H
i
(M | A; R) = 0 for i > d.
Proof.
Call a compact set
A
“good” if it satisfies the conclusion of the theorem.
Claim. We first show that if K, L and K ∩ L is good, then K ∪ L is good.
This is analogous to the proof of the Thom isomorphism theorem, and we
will omit this.
Now our strategy is to prove the following in order:
(i) If A ⊆ R
d
is convex, then A is good.
(ii) If A ⊆ R
d
, then A is good.
(iii) If A ⊆ M, then A is good.
Claim. If A ⊆ R
d
is convex, then A is good.
Let x ∈ A. Then we have an inclusion
R
d
\ A → R
d
\ {x}.
This is in fact a homotopy equivalence by scaling away from x. Thus the map
H
i
(R
d
| A) → H
i
(R
d
| x)
is an isomorphism by the five lemma for all
i
. Then in degree
d
, there is some
µ
A
corresponding to
µ
x
. This
µ
A
is then has the required property by definition
of orientability. The second part of the theorem also follows by what we know
about H
i
(R
d
| x).
Claim. If A ⊆ R
d
, then A is good.
For
A ⊆ R
d
compact, we can find a finite collection of closed balls
B
i
such
that
A ⊆
n
[
i=1
˚
B
i
= B.
Moreover, if
U ⊇ A
for any open
U
, then we can in fact take
B
i
⊆ U
. By
induction on the number of balls
n
, the first claim tells us that any
B
of this
form is good.
We now let
G = {B ⊆ R
d
: A ⊆
˚
B, B compact and good}.
We claim that this is a directed set under inverse inclusion. To see this, for
B, B
0
∈ G
, we need to find a
B
00
∈ G
such that
B
00
⊆ B, B
0
and
B
00
is good and
compact. But the above argument tells us we can find one contained in
˚
B
0
∪
˚
B
00
.
So we are safe.
Now consider the directed system of groups given by
B 7→ H
i
(R
d
| B),
and there is an induced map
lim
−→
B∈G
H
i
(R
d
| B) → H
i
(R
d
| A),
since each
H
i
(
R
d
| B
) maps to
H
i
(
R
d
| A
) by inclusion, and these maps are
compatible. We claim that this is an isomorphism. We first show that this is
surjective. Let [
c
]
∈ H
i
(
R
d
| A
). Then the boundary of
c ∈ C
i
(
R
d
) is a finite sum
of simplices in
R
d
\ A
. So it is a sum of simplices in some compact
C ⊆ R
d
\ A
.
But then
A ⊆ R
d
\ C
, and
R
d
\ C
is an open neighbourhood of
A
. So we can
find a good B such that
A ⊆ B ⊆ R
d
\ C.
Then
c ∈ C
i
(
R
d
| B
) is a cycle. So we know [
c
]
∈ H
i
(
R
d
| B
). So the map is
surjective. Injectivity is obvious.
An immediate consequence of this is that for
i > d
, we have
H
i
(
R
d
| A
) = 0.
Also, if
i
=
d
, we know that
µ
A
is given uniquely by the collection
{µ
B
}
B∈G
(uniqueness follows from injectivity).
Claim. If A ⊆ M, then A is good.
This follows from the fact that any compact
A ⊆ M
can be written as a
finite union of compact
A
α
with
A
α
⊆ U
α
∼
=
R
d
. So
A
α
and their intersections
are good. So done.
Corollary.
If
M
is compact, then we get a unique class [
M
] =
µ
M
∈ H
n
(
M
;
R
)
such that it restricts to µ
x
for each x ∈ M. Moreover, H
i
(M; R) = 0 for i > d.
This is not too surprising, actually. If we have a triangulation of the manifold,
then this [M ] is just the sum of all the triangles.
Definition
(Fundamental class)
.
The fundamental class of an
R
-oriented mani-
fold is the unique class [M ] that restricts to µ
x
for each x ∈ M.
11.3 Poincar´e duality
We now get to the main theorem — Poincar´e duality:
Theorem
(Poincar´e duality)
.
Let
M
be a
d
-dimensional
R
-oriented manifold.
Then there is a map
D
M
: H
k
c
(M; R) → H
d−k
(M; R)
that is an isomorphism.
The majority of the work is in defining the map. Afterwards, proving it is
an isomorphism is a routine exercise with Mayer-Vietoris and the five lemma.
What does this tell us? We know that
M
has no homology or cohomology
in negative dimensions. So by Poincar´e duality, there is also no homology or
cohomology in dimensions > d.
Moreover, if
M
itself is compact, then we know
H
0
c
(
M
;
R
) has a special
element 1. So we also get a canonical element of
H
d
(
M
;
R
). But we know there
is a special element of
H
d
(
M
;
R
), namely the fundamental class. They are in
fact the same, and this is no coincidence. This is in fact how we are going to
produce the map.
To define the map D
M
, we need the notion of the cap product
Definition (Cap product). The cap product is defined by
· · : C
k
(X; R) × C
`
(X; R) → C
k−`
(X; R)
(σ, ϕ) 7→ ϕ(σ|
[v
0
,...,v
`
]
)σ|
[v
`
,...,v
k
]
.
We want this to induce a map on homology. To do so, we need to know how
it interacts with differentials.
Lemma. We have
d(σ ϕ) = (−1)
d
((dσ) ϕ − σ (dϕ)).
Proof. Write both sides out.
As with the analogous formula for the cup product, this implies we get a
well-defined map on homology and cohomology, i.e. We obtain a map
H
k
(X; R) × H
`
(X; R) → H
k−`
(X; R).
As with the cup product, there are also relative versions
: H
k
(X, A; R) × H
`
(X; R) → H
k−`
(X, A; R)
and
: H
k
(X, A; R) × H
`
(X, A; R) → H
k−`
(X; R).
We would like to say that the cap product is natural, but since maps of spaces
induce maps of homology and cohomology in opposite directions, this is rather
tricky. What we manage to get is the following:
Lemma.
If
f
:
X → Y
is a map, and
x ∈ H
k
(
X
;
R
) And
y ∈ H
`
(
Y
;
R
), then
we have
f
∗
(x) y = f
∗
(x f
∗
(y)) ∈ H
k−`
(Y ; R).
In other words, the following diagram commutes:
H
k
(Y ; R) × H
`
(Y ; R) H
k−`
(Y ; R)
H
k
(X; R) × H
`
(Y ; R)
H
k
(X; R) × H
`
(X; R) H
k−`
(X; R)
_
f
∗
×id
id ×f
∗
_
f
∗
Proof.
We check this on the cochain level. We let
x
=
σ
: ∆
k
→ X
. Then we
have
f
#
(σ f
#
y) = f
#
(f
#
y)(σ|
[v
0
,...,v
`
]
)σ|
[v
`
,...,v
k
]
= y(f
#
(σ|
[v
0
,...,v
`
]
))f
#
(σ|
[v
`
,...,v
k
]
)
= y((f
#
σ)|
[v
0
,...,v
`
]
)(f
#
σ)|
[v
`
,...,v
k
]
= (f
#
σ) y.
So done.
Now if M is compact, then we simply define the duality map as
D
M
= [M] · : H
d
(M; R) → H
d−`
(M; R).
If not, we note that
H
d
c
(
M
;
R
) is the directed limit of
H
d
(
M, K
;
R
) with
K
compact, and each
H
d
(
M, L
;
R
) has a fundamental class. So we can define the
required map for each K, and then put them together.
More precisely, if
K ⊆ L ⊆ M
are such that
K, L
are compact, then we have
an inclusion map
(id, inc) : (M, M \ L) → (M, M \ K).
Then we have an induced map
(id, inc) : H
d
(M | L; R) → H
d
(M | K; R)
that sends the fundamental class
µ
L
to
µ
K
, by uniqueness of the fundamental
class.
Then the relative version of our lemma tells us that the following map
commutes:
H
`
(M | K; R) H
`
(M | L; R)
H
d−`
(M; R) H
d−`
(M; R)
(id,inc)
∗
µ
K
_ · µ
L
_ ·
id
Indeed, this is just saying that
(id)
∗
(µ
L
(id, inc)
∗
(ϕ)) = µ
K
ϕ.
So we get a duality map
D
M
= lim
−→
(µ
K
· ) : lim
−→
H
`
(M | K; R) → H
d−`
(M; R).
Now we can prove Poincar´e duality.
Proof.
We say
M
is “good” if the Poincar´e duality theorem holds for
M
. We
now do the most important step in the proof:
Claim 0. R
d
is good.
The only non-trivial degrees to check are
= 0
, d
, and
= 0 is straightforward.
For = d, we have shown that the maps
H
d
c
(R
d
; R) H
d
(R
d
| 0; R) Hom
R
(H
d
(R
d
| 0; R), R)
∼
UCT
are isomorphisms, where the last map is given by the universal coefficients
theorem.
Under these isomorphisms, the map
H
d
c
(R
d
; R) H
0
(R
d
; R) R
D
R
d
ε
corresponds to the map
Hom
K
(
H
d
(
R
d
|
0;
R
)
, R
)
→ R
is given by evaluating a
function at the fundamental class
µ
0
. But as
µ
0
∈ H
d
(
R
d
|
0;
R
) is an
R
-module
generator, this map is an isomorphism.
Claim 1. If M = U ∪ V and U, V, U ∩ V are good, then M is good.
Again, this is an application of the five lemma with the Mayer-Vietoris
sequence. We have
H
`
c
(U V ) H
`
c
(U) ⊕ H
d
c
(V ) H
`
c
(M) H
`+1
c
(U V )
H
d−`
(U V ) H
d−`
(U) ⊕ H
d−`
(V ) H
d−`
(M) H
d−`−1
(U V )
D
U_V
D
U
⊕D
V
D
M
D
U_V
We are done by the five lemma if this commutes. But unfortunately, it doesn’t.
It only commutes up to a sign, but it is sufficient for the five lemma to apply if
we trace through the proof of the five lemma.
Claim 2.
If
U
1
⊆ U
2
⊆ · · ·
with
M
=
S
n
U
n
, and
U
i
are all good, then
M
is
good.
Any compact set in M lies in some U
n
, so the map
lim
−→
H
`
c
(U
n
) → H
`
c
(U
n
)
is an isomorphism. Similarly, since simplices are compact, we also have
H
d−k
(M) = lim
−→
H
d−k
(U
n
).
Since the direct limit of open sets is open, we are done.
Claim 3. Any open subset of R
d
is good.
Any
U
is a countable union of open balls (something something rational
points something something). For finite unions, we can use Claims 0 and 1 and
induction. For countable unions, we use Claim 2.
Claim 4. If M has a countable cover by R
d
’s it is good.
Same argument as above, where we instead use Claim 3 instead of Claim 0
for the base case.
Claim 5. Any manifold M is good.
Any manifold is second-countable by definition, so has a countable open
cover by R
d
.
Corollary. For any compact d-dimensional R-oriented manifold M, the map
[M] · : H
`
(M; R) → H
d−`
(M; R)
is an isomorphism.
Corollary.
Let
M
be an odd-dimensional compact manifold. Then the Euler
characteristic χ(M ) = 0.
Proof.
Pick
R
=
F
2
. Then
M
is
F
2
-oriented. Since we can compute Euler
characteristics using coefficients in F
2
. We then have
χ(M) =
2n+1
X
r=0
(−1)
i
dim
F
2
H
i
(M, F
2
).
But we know
H
i
(M, F
2
)
∼
=
H
2n+1−i
(M, F
2
)
∼
=
(H
2n+1−i
(M, F
2
))
∗
∼
=
H
2n+1−i
(M, F
2
)
by Poincar´e duality and the universal coefficients theorem.
But the dimensions of these show up in the sum above with opposite signs.
So they cancel, and χ(M ) = 0.
What is the relation between the cap product and the cup product? If
σ ∈ C
k+`
(X; R), ϕ ∈ C
k
(X; R) and ψ ∈ C
`
(X; R), then
ψ(σ ϕ) = ψ(ϕ(σ|
[v
0
,...,v
k
]
)σ|
[v
k
,...,v
k+`
]
)
= ϕ(σ|
[v
0
,...,v
k
]
)ψ(σ|
[v
k
,...,v
k+`
]
)
= (ϕ ψ)(σ),
Since we like diagrams, we can express this equality in terms of some diagram
commuting. The map
h
:
H
k
(
X
;
R
)
→ Hom
R
(
H
k
(
X
;
R
)
, R
) in the universal
coefficients theorem is given by
[ϕ] 7→ ([σ] 7→ ϕ(σ)).
This map exists all the time, even if the hypothesis of the universal coefficients
theorem does not hold. It’s just that it need not be an isomorphism. The formula
ψ(σ ϕ) = (ϕ ψ)(σ)
then translates to the following diagram commuting:
H
`
(X; R) Hom
R
(H
`
(X; R), R)
H
k+`
(X; R) Hom
R
(H
`+k
(X; R), R)
ϕ^ ·
h
( · _ϕ)
∗
h
Now when the universal coefficient theorem applies, then the maps
h
are isomor-
phisms. So the cup product and cap product determine each other, and contain
the same information.
Now since Poincar´e duality is expressed in terms of cap products, this
correspondence gives us some information about cupping as well.
Theorem.
Let
M
be a
d
-dimensional compact
R
-oriented manifold, and consider
the following pairing:
h · , · i : H
k
(M; R) ⊗ H
d−k
(M, R) R
[ϕ] ⊗ [ψ] (ϕ ψ)[M]
.
If
H
∗
(
M
;
R
) is free, then
h · , · i
is non-singular, i.e. both adjoints are isomor-
phisms, i.e. both
H
k
(M; R) Hom(H
d−k
(M; R), R)
[ϕ] ([ψ] 7→ hϕ, ψi)
and the other way round are isomorphisms.
Proof. We have
hϕ, ψi = (−1)
|ϕ||ψ|
hψ, ϕi,
as we know
ϕ ψ = (−1)
|ϕ||ψ|
ψ ϕ.
So if one adjoint is an isomorphism, then so is the other.
To see that they are isomorphsims, we notice that we have an isomorphism
H
k
(M; R) Hom
R
(H
k
(M; R), R) Hom
R
(H
d−k
(M; R), R)
[ϕ] ([σ] 7→ ϕ(σ)) ([ψ] 7→ ϕ([M] ψ))
UCT
D
∗
m
.
But we know
ϕ([M] ψ) = (ψ ϕ)([M]) = hψ, ϕi.
So this is just the adjoint. So the adjoint is an isomorphism.
This is a very useful result. We have already seen examples where we can
figure out if a cup product vanishes. But this result tells us that certain cup
products are not zero. This is something we haven’t seen before.
Example. Consider CP
n
. We have previously computed
H
∗
(CP
n
, Z) =
(
Z ∗ = 2i, 0 ≤ i ≤ n
0 otherwise
Also, we know
CP
n
is
Z
-oriented, because it is a complex manifold. Let’s forget
that we have computed the cohomology ring structure, and compute it again.
Suppose for induction, that we have found
H
∗
(CP
n−1
, Z) = Z[x]/(x
n
).
As
CP
n
is obtained from
CP
n−1
by attaching a 2
n
cell, the map given by inclusion
i
∗
:
H
2
(
CP
n
, Z
)
→ H
2
(
CP
n−1
, Z
) is an isomorphism. Then the generator
x ∈ H
2
(CP
n−1
, Z) gives us a generator y ∈ H
2
(CP
n
, Z).
Now if we can show that
y
k
∈ H
2k
(
CP
n
, Z
)
∼
=
Z
is a generator for all
k
, then
H
∗
(CP
n
, Z)
∼
=
Z[y]/(y
n+1
).
But we know that
y
n−1
generates
H
2n−2
(
CP
n
, Z
), since it pulls back under
i
∗
to x
n−1
, which is a generator. Finally, consider
H
2
(CP
2
, Z) ⊗ H
2n−2
(CP
2
, Z) Z
y ⊗ y
n−1
y
n
[CP
n
].
Since this is non-singular, we know y
n
∈ H
2n
(CP
n
, Z) must be a generator.
Of course, we can get H
∗
(RP
n
, F
2
) similarly.
11.4 Applications
We go through two rather straightforward applications, before we move on to
bigger things like the intersection product.
Signature
We focus on the case where
d
= 2
n
is even. Then we have, in particular, a
non-degenerate bilinear form
h · , · i : H
n
(M; R) ⊗ H
n
(M; R) → R.
Also, we know
ha, bi = (−1)
n
2
hb, ai = (−1)
n
hb, ai.
So this is a symmetric form if
n
is even, and skew-symmetric form if
n
is odd.
These are very different scenario. For example, we know a symmetric matrix is
diagonalizable with real eigenvalues (if
R
=
R
), but a skew-symmetric form does
not have these properties.
So if
M
is 4
k
-dimensional, and
Z
-oriented, then in particular
M
is
R
-oriented.
Then the map
h · , · i
:
H
2k
(
M
;
R
)
⊗ H
2k
(
M
;
R
)
→ R
can be represented by a
symmetric real matrix, which can be diagonalized. This has some real eigenvalues.
The eigenvalues can be positive or negative.
Definition
(Signature of manifold)
.
Let
M
be a 4
k
-dimensional
Z
-oriented
manifold. Then the signature is the number of positive eigenvalues of
h · , · i : H
2k
(M; R) ⊗ H
2k
(M; R) → R
minus the number of negative eigenvalues. We write this as sgn(M).
By Sylvester’s law of inertia, this is well-defined.
Fact.
If
M
=
∂W
for some compact 4
k
+ 1-dimensional manifold
W
with
boundary, then sgn(M) = 0.
Example. CP
2
has
H
2
(
CP
2
;
R
)
∼
=
R
, and the bilinear form is represented by
the matrix (1). So the signature is 1. So
CP
2
is not the boundary of a manifold.
Degree
Recall we defined the degree of a map from a sphere to itself. But if we have a
Z
-oriented space, we can have the fundamental class [
M
], and then there is an
obvious way to define the degree.
Definition
(Degree of map)
.
If
M, N
are
d
-dimensional compact connected
Z-oriented manifolds, and f : M → N, then
f
∗
([M]) ∈ H
d
(N, Z)
∼
=
Z[N].
So f
∗
([M]) = k[N] for some k. This k is called the degree of f, written deg(f).
If
N
=
M
=
S
n
and we pick the same orientation for them, then this recovers
our previous definition.
By exactly the same proof, we can compute this degree using local degrees,
just as in the case of a sphere.
Corollary.
Let
f
:
M → N
be a map between manifolds. If
F
is a field and
deg(f) 6= 0 ∈ F, then then the induced map
f
∗
: H
∗
(N, F) → H
∗
(M, F)
is injective.
This seems just like an amusement, but this is powerful. We know this is in
fact a map of rings. So if we know how to compute cup products in
H
∗
(
M
;
F
),
then we can do it for H
∗
(N; F) as well.
Proof. Suppose not. Let α ∈ H
k
(N, F) be non-zero but f
∗
(α) = 0. As
h · , · i : H
k
(N, F) ⊗ H
d−k
(N, F) → F
is non-singular, we know there is some β ∈ H
d−k
(N, F) such that
hα, βi = (α β)[N] = 1.
Then we have
deg(f) = deg(f) · 1
= (α β)(deg(f)[N])
= (α β)(f
∗
[M])
= (f
∗
(α) f
∗
(β))([M])
= 0.
This is a contradiction.
11.5 Intersection product
Recall that cohomology comes with a cup product. Thus, Poincar´e duality gives
us a product on homology. Our goal in this section is to understand this product.
We restrict our attention to smooth manifolds, so that we can talk about
the tangent bundle. Recall (from the example sheet) that an orientation of the
manifold is the same as an orientation on the tangent bundle.
We will consider homology classes that come from submanifolds. For con-
creteness, let
M
be a compact smooth
R
-oriented manifold, and
N ⊆ M
be
an
n
-dimensional
R
-oriented submanifold. Let
i
:
N → M
be the inclusion.
Suppose
dim M
=
d
and
dim N
=
n
. Then we obtain a canonical homology class
i
∗
[N] ∈ H
n
(M; R).
We will abuse notation and write [
N
] for
i
∗
[
N
]. This may or may not be zero.
Our objective is to show that under suitable conditions, the product of [
N
1
] and
[N
2
] is [N
1
∩ N
2
].
To do so, we will have to understand what is the cohomology class Poinacr´e
dual to [
N
]. We claim that, suitably interpreted, it is the Thom class of the
normal bundle.
Write
ν
N⊆M
for the normal bundle of
N
in
M
. Picking a metric on
T M
, we
can decompose
i
∗
T M
∼
=
T N ⊕ ν
N⊆M
,
Since
T M
is oriented, we obtain an orientation on the pullback
i
∗
T M
. Similarly,
T N is also oriented by assumption. In general, we have the following result:
Lemma.
Let
X
be a space and
V
a vector bundle over
X
. If
V
=
U ⊕ W
, then
orientations for any two of U, W, V give an orientation for the third.
Proof.
Say
dim V
=
d
,
dim U
=
n
,
dim W
=
m
. Then at each point
x ∈ X
, by
K¨unneth’s theorem, we have an isomorphism
H
d
(V
x
, V
#
x
; R)
∼
=
H
n
(U
x
, U
#
x
; R) ⊗ H
m
(W
x
, W
#
x
; R)
∼
=
R.
So any local
R
-orientation on any two induces one on the third, and it is
straightforward to check the local compatibility condition.
Can we find a more concrete description of this orientation on
ν
N⊆M
? By
the same argument as when we showed that H
i
(R
n
| {0})
∼
=
H
i
c
(R
d
), we know
H
i
(ν
N⊆M
, ν
#
N⊆M
; R)
∼
=
H
i
c
(ν
N⊆M
; R).
Also, by the tubular neighbourhood theorem, we know
ν
N⊆M
is homeomorphic
to an open neighbourhood U of N in M. So we get isomorphisms
H
i
c
(ν
N⊆M
; R)
∼
=
H
i
c
(U; R)
∼
=
H
d−i
(U; R)
∼
=
H
d−i
(N; R),
where the last isomorphism comes from the fact that
N
is homotopy-equivalent
to U .
In total, we have an isomorphism
H
i
(ν
N⊆M
, ν
#
N⊆M
; R)
∼
=
H
d−i
(N; R).
Under this isomorphism, the fundamental class [
N
]
∈ H
n
(
N
;
R
) corresponds to
some
E
N⊆M
∈ H
d−n
(ν
N⊆M
, ν
#
N⊆M
; R)
But we know
ν
N⊆M
has dimension
d − n
. So
E
N⊆M
is in the right dimension to
be a Thom class, and is a generator for
H
d−n
(
ν
N⊆M
, ν
#
N⊆M
;
R
), because it is a
generator for H
d−n
(N; R). One can check that this is indeed the Thom class.
How is this related to the other things we’ve had? We can draw the commu-
tative diagram
H
n
(N; R) H
n
(U; R) H
d−n
c
(U; R)
H
n
(M; R) H
d−n
(M; R)
∼ ∼
i
∗
extension by 0
∼
The commutativity of the square is a straightforward naturality property of
Poincar´e duality.
Under the identification
H
d−n
c
(
U
;
R
)
∼
=
H
d−n
(
ν
N⊆M
, ν
#
N⊆M
;
R
), the above
says that the image of [
N
]
∈ H
n
(
N
;
R
) in
H
d−n
c
(
U
;
R
) is the Thom class of the
normal bundle ν
N⊆M
.
On the other hand, if we look at this composition via the bottom map, then
[N] gets sent to D
−1
M
([N]). So we know that
Theorem.
The Poincar´e dual of a submanifold is (the extension by zero of) the
normal Thom class.
Now if we had two submanifolds
N, W ⊆ M
. Then the normal Thom classes
give us two cohomology classes of
M
. As promised, When the two intersect
nicely, the cup product of their Thom classes is the Thom class of [
N ∩ W
]. The
niceness condition we need is the following:
Definition
(Transverse intersection)
.
We say two submanifolds
N, W ⊆ M
intersect transversely if for all x ∈ N ∩ W , we have
T
x
N + T
x
W = T
x
M.
Example. We allow intersections like
but not this:
It is a fact that we can always “wiggle” the submanifolds a bit so that the
intersection is transverse, so this is not too much of a restriction. We will neither
make this precise nor prove it.
Whenever the intersection is transverse, the intersection
N ∩ W
will be a
submanifold of M , and of N and W as well. Moreover,
(ν
N∩W ⊆M
)
x
= (ν
N⊆M
)
x
⊕ (ν
W ⊆M
)
x
.
Now consider the inclusions
i
N
: N ∩ W → N
i
W
: N ∩ W → W.
Then we have
ν
N∩W ⊆M
= i
∗
N
(ν
N⊆M
) ⊕ i
∗
W
(ν
W ⊆M
).
So with some abuse of notation, we can write
i
∗
N
E
N⊆M
i
∗
W
E
W ⊆M
∈ H
∗
(ν
N∩W ⊆M
, ν
#
N∩W ⊆M
; R),
and we can check this gives the Thom class. So we have
D
−1
M
([N]) D
−1
M
([W ]) = D
−1
M
([N ∩ W ]).
The slogan is “cup product is Poincar´e dual to intersection”. One might be
slightly worried about the graded commutativity of the cup product, because
N ∩ W = W ∩ N as manifolds, but in general,
D
−1
M
([N]) D
−1
M
([W ]) 6= D
−1
M
([W ]) D
−1
M
([N]).
The fix is to say that
N ∩ W
are
W ∩ N
are not the same as oriented manifolds
in general, and sometimes they differ by a sign, but we will not go into details.
More generally, we can define
Definition
(Intersection product)
.
The intersection product on the homology
of a compact manifold is given by
H
n−k
(M) ⊗ H
n−`
(M) H
n−k−`
(M)
(a, b) a · b = D
M
(D
−1
M
(a) D
−1
M
(b))
Example. We know that
H
2k
(CP
n
, Z)
∼
=
(
Z 0 ≤ k ≤ n
0 otherwise
.
Moreover, we know the generator for these when we computed it using cellular
homology, namely
[CP
k
] ≡ y
k
∈ H
2k
(CP
n
, Z).
To compute [
CP
`
]
·
[
CP
`
], if we picked the canonical copies of
CP
`
, CP
k
⊆ CP
n
,
then one would be contained in the other, and this is exactly the opposite of
intersecting transversely.
Instead, we pick
CP
k
= {[z
0
: z
1
· · · z
k
: 0 : · · · : 0]}, CP
`
= {[0 : · · · : 0 : w
0
: · · · : w
`
]}.
It is a fact that any two embeddings of
CP
k
→ CP
n
are homotopic, so we can
choose these.
Now these two manifolds intersect transversely, and the intersection is
CP
k
∩ CP
`
= CP
k+`−n
.
So this says that
y
k
· y
`
= ±y
l+`−n
,
where there is some annoying sign we do not bother to figure out.
So if x
k
is Poincar´e dual to y
n−k
, then
x
k
x
`
= x
k+`
,
which is what we have previously found out.
Example. Consider the manifold with three holes
b
1
b
2
b
3
a
1
a
2
a
3
Then we have
a
i
· b
i
= {pt}, a
i
· b
j
= 0 for i 6= j.
So we find the ring structure of
H
∗
(
E
g
, Z
), hence the ring structure of
H
∗
(
E
g
, Z
).
This is so much easier than everything else we’ve been doing.
Here we know that the intersection product is well-defined, so we are free to
pick our own nice representatives of the loop to perform the calculation.
Of course, this method is not completely general. For example, it would be
difficult to visualize this when we work with manifolds with higher dimensions,
and more severely, not all homology classes of a manifold have to come from
submanifolds (e.g. twice the fundamental class)!
11.6 The diagonal
Again, let
M
be a compact
Q
-oriented
d
-dimensional manifold. Then
M × M
is
a 2
d
-dimensional manifold. We can try to orient it as follows — K¨unneth gives
us an isomorphism
H
d+d
(M × M; Q)
∼
=
H
d
(M; Q) ⊗ H
d
(M; Q),
as
H
k
(
M
;
Q
) = 0 for
k > d
. By the universal coefficients theorem, plus the fact
that duals commute with tensor products, we have an isomorphism
H
d+d
(M × M; Q)
∼
=
H
d
(M; Q) ⊗ H
d
(M; Q).
Thus the fundamental class [
M
] gives us a fundamental class [
M × M
] =
[M] ⊗ [M].
We are going to do some magic that involves the diagonal map
∆ : M M × M
x (x, x).
This gives us a cohomology class
δ = D
−1
M×M
(∆
∗
[M]) ∈ H
d
(M × M, Q)
∼
=
M
i+j=d
H
i
(M, Q) ⊗ H
j
(M, Q).
It turns out a lot of things we want to do with this
δ
can be helped a lot by
doing the despicable thing called picking a basis.
We let
{a
i
}
be a basis for
H
∗
(
M, Q
). On this vector space, we have a
non-singular form
h · , · i : H
∗
(M, Q) ⊗ H
∗
(M; Q) → Q
given by
hϕ, ψi 7→
(
ϕ ψ
)([
M
]). Last time we were careful about the degrees
of the cochains, but here we just say that if
ϕ ψ
does not have dimension
d
,
then the result is 0.
Now let {b
i
} be the dual basis to the a
i
using this form, i.e.
ha
i
, b
j
i = δ
ij
.
It turns out δ has a really nice form expressed using this basis:
Theorem. We have
δ =
X
i
(−1)
|a
i
|
a
i
⊗ b
i
.
Proof. We can certainly write
δ =
X
i,
C
ij
a
i
⊗ b
j
for some
C
ij
. So we need to figure out what the coefficients
C
ij
are. We try to
compute
((b
k
⊗ a
`
) δ)[M × M ] =
X
C
ij
(b
k
⊗ a
`
) (a
i
⊗ b
j
)[M × M]
=
X
C
ij
(−1)
|a
`
||a
i
|
(b
k
a
i
) ⊗ (a
`
b
i
)[M] ⊗ [M]
=
X
C
ij
(−1)
|a
`
||a
i
|
(δ
ik
(−1)
|a
i
||b
k
|
)δ
j`
= (−1)
|a
k
||a
`
|+|a
k
||b
k
|
C
k`
.
But we can also compute this a different way, using the definition of δ:
(b
k
⊗ a
`
δ)[M × M ] = (b
k
⊗ a
`
)(∆
∗
[M]) = (b
k
a
`
)[M] = (−1)
|a
`
||b
k
|
δ
k`
.
So we see that
C
k`
= δ
k`
(−1)
|a
`
|
.
Corollary. We have
∆
∗
(δ)[M] = χ(M),
the Euler characteristic.
Proof. We note that for a ⊗ b ∈ H
n
(M × M), we have
∆
∗
(a ⊗ b) = ∆
∗
(π
∗
1
a π
∗
2
b) = a b
because π
i
◦ ∆ = id. So we have
∆
∗
(δ) =
X
(−1)
|a
i
|
a
i
b
i
.
Thus
∆
∗
(δ)[M] =
X
i
(−1)
|a
i
|
=
X
k
(−1)
k
dim
Q
H
k
(M; Q) = χ(M).
So far everything works for an arbitrary manifold. Now we suppose further
that
M
is smooth. Then
δ
is the Thom class of the normal bundle
ν
M⊆M×M
of
M → M × M.
By definition, pulling this back along ∆ to
M
gives the Euler class of the normal
bundle. But we know
ν
M⊆M×M
∼
=
T M
, because the fiber at
x
is the cokernel of
the map
T
x
M T
x
M ⊕ T
x
M
∆
and the inverse given by
T
x
M ⊕ T
x
M → T
x
M
(v, w) 7→ v − w
gives us an isomorphism
T
x
M ⊕ T
x
M
∆T
x
M
∼
=
T
x
M.
Corollary. We have
e(T M)[M] = χ(M ).
Corollary. If M has a nowhere-zero vector field, then χ(M) = 0.
More generally, this tells us that
χ
(
M
) is the number of zeroes of a vector
field M → T M (transverse to the zero section) counted with sign.
Lemma.
Suppose we have
R
-oriented vector bundles
E → X
and
F → X
with
Thom classes u
E
, u
F
. Then the Thom class for E ⊕ F → X is u
E
u
F
. Thus
e(E ⊕ F ) = e(E) e(F ).
Proof. More precisely, we have projection maps
E ⊕ F
E F
π
E
π
F
.
We let U = π
−1
E
(E
#
) and V = π
−1
F
(F
#
). Now observe that
U ∪ V = (E ⊕ F )
#
.
So if dim E = e, dim F = f, then we have a map
H
e
(E, E
#
) ⊗ H
f
(F, F
#
) H
e
(E ⊕ F, U) ⊗ H
f
(E ⊕ F, V )
H
e+f
(E ⊕ F, (E ⊕ F )
#
)
π
∗
E
⊗π
∗
F
^
,
and it is easy to see that the image of
u
E
⊗ u
F
is the Thom class of
E ⊕ F
by
checking the fibers.
Corollary. T S
2n
has no proper subbundles.
Proof.
We know
e
(
T S
2n
)
6
= 0 as
e
(
T S
2n
)[
S
2
] =
χ
(
S
2n
) = 2. But it cannot be a
proper cup product of two classes, since there is nothing in lower cohomology
groups. So
T S
2n
is not the sum of two subbundles. Hence
T S
2n
cannot have a
proper subbundle
E
or else
T S
2n
=
E ⊕E
⊥
(for any choice of inner product).
11.7 Lefschetz fixed point theorem
Finally, we are going to prove the Lefschetz fixed point theorem. This is going
to be better than the version you get in Part II, because this time we will know
how many fixed points there are.
So let
M
be a compact
d
-dimensional manifold that is
Z
-oriented, and
f
:
M → M
be a map. Now if we want to count the number of fixed points,
then we want to make sure the map is “transverse” in some sense, so that there
aren’t infinitely many fixed points.
It turns out the right condition is that the graph
Γ
f
= {(x, f(x)) ∈ M × M } ⊆ M × M
has to be transverse to the diagonal. Since Γ
f
∩
∆ is exactly the fixed points of
f, this is equivalent to requiring that for each fixed point x, the map
D
x
∆ ⊕ D
x
F : T
x
M ⊕ T
x
M → T
x
M ⊕ T
x
M
is an isomorphism. We can write the matrix of this map, which is
I I
D
x
f I
.
Doing a bunch of row and column operations, this is equivalent to requiring that
I 0
D
x
f I − D
x
f
is invertible. Thus the condition is equivalent to requiring that 1 is not an
eigenvalue of D
x
f.
The claim is now the following:
Theorem
(Lefschetz fixed point theorem)
.
Let
M
be a compact
d
-dimensional
Z
-oriented manifold, and let
f
:
M → M
be a map such that the graph Γ
f
and
diagonal ∆ intersect transversely. Then Then we have
X
x∈fix(f)
sgn det(I − D
x
f) =
X
k
(−1)
k
tr(f
∗
: H
i
(M; Q) → H
k
(M; Q)).
Proof. We have
[Γ
f
] · [∆(M)] ∈ H
0
(M × M; Q).
We now want to calculate ε of this. By Poincar´e duality, this is equal to
(D
−1
M×M
[Γ
f
] D
−1
M×M
[∆(M)])[M × M ] ∈ Q.
This is the same as
(D
−1
M×M
[∆(M)])([Γ
f
]) = δ(F
∗
[M]) = (F
∗
δ)[M],
where F : M → M × M is given by
F (x) = (x, f (x)).
We now use the fact that
δ =
X
(−1)
|a
i
|
a
i
⊗ b
i
.
So we have
F
∗
δ =
X
(−1)
|a
i
|
a
i
⊗ f
∗
b
i
.
We write
f
∗
b
i
=
X
C
ij
b
j
.
Then we have
(F
∗
δ)[M] =
X
i,j
(−1)
|a
i
|
C
ij
(a
i
⊗ b
j
)[M] =
X
i
(−1)
|a
i
|
C
ii
,
and C
ii
is just the trace of f
∗
.
We now compute this product in a different way. As Γ
f
and ∆(
M
) are
transverse, we know Γ
f
∩
∆(
M
) is a 0-manifold, and the orientation of Γ
f
and
∆(M) induces an orientation of it. So we have
[Γ
f
] · [∆(m)] = [Γ
f
∩ ∆(M)] ∈ H
0
(M × M; Q).
We know this Γ
f
∩
∆(
M
) has
| fix
(
f
)
|
many points, so [Γ
f
∩
∆(
M
)] is the sum
of
| fix
(
f
)
|
many things, which is what we’ve got on the left above. We have to
figure out the sign of each term is actually sgn det(I − D
x
f), and this is left as
an exercise on the example sheet.
Example.
Any map
f
:
CP
2n
→ CP
2n
has a fixed point. We can’t prove this
using the normal fixed point theorem, but we can exploit the ring structure of
cohomology to do this. We must have
f
∗
(x) = λx ∈ H
2
(CP
2
; Q) = Qx.
for some λ ∈ Q. So we must have
f
∗
(x
i
) = λ
i
x
i
.
We can now very easily compute the right hand side of the fixed point theorem
X
k
(−1)
k
tr(f
∗
: H
k
→ H
k
) = 1 + λ + λ
2
+ · · · + λ
2n
.
and this cannot be zero.