cech cohomology and good covers · u2u which is a map between chain complexes and therefore gives...

37
January 26, 2019 CECH COHOMOLOGY AND GOOD COVERS DANIEL ROSSANO Abstract. Given a topological space X, we can compute the Cech cohomology of X with respect to some cover U . By taking a refinement of U , V , we have a map a V ∈V , a U∈U which is a map between chain complexes and therefore gives us a map on cohomology: ˇ H (X, V ) ˇ H (X, U ). In other words, when we use a refinement of some other cover, the refinement may yield different answers in its cohomology groups. To obtain a definite answer for the Cech cohomology, we must utilize direct limits. However, we can avoid using direct limits with the use of a theorem which states that if use a good cover, then any refinement of that cover will have an isomorphism on its cohomology groups. Once we have defined Cech cohomology, we show that there exists an algorithm that can compute the Cech cohomology for us. The algorithm needs to use -cubes instead of -balls, as it is difficult to determine intersections of multiple -balls algorithmically. Contents 1. Topology 2 2. Algebra 8 2.1. Homological Algebra 12 3. Category Theory 18 3.1. Direct Limit 19 4. Sheaves 20 5. Cech cohomology 22 5.1. Understanding Cech Cohomology as a Direct Limit 34 5.2. Cech Cohomology in Practice 34 6. References 37 1

Upload: others

Post on 14-Mar-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

January 26, 2019

CECH COHOMOLOGY AND GOOD COVERS

DANIEL ROSSANO

Abstract. Given a topological space X, we can compute the Cech cohomology of X with respect to some

cover U . By taking a refinement of U , V, we have a map∐V ∈V

↪→∐U∈U

which is a map between chain complexes and therefore gives us a map on cohomology: H•(X,V) ←H•(X,U). In other words, when we use a refinement of some other cover, the refinement may yield different

answers in its cohomology groups. To obtain a definite answer for the Cech cohomology, we must utilize

direct limits. However, we can avoid using direct limits with the use of a theorem which states that ifuse a good cover, then any refinement of that cover will have an isomorphism on its cohomology groups.

Once we have defined Cech cohomology, we show that there exists an algorithm that can compute the Cechcohomology for us. The algorithm needs to use ε-cubes instead of ε-balls, as it is difficult to determine

intersections of multiple ε-balls algorithmically.

Contents

1. Topology 22. Algebra 82.1. Homological Algebra 123. Category Theory 183.1. Direct Limit 194. Sheaves 205. Cech cohomology 225.1. Understanding Cech Cohomology as a Direct Limit 345.2. Cech Cohomology in Practice 346. References 37

1

Page 2: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Before we understand what Cech cohomology is, let us first provide some motivation for learning aboutit. In layman’s terms, Cech cohomology tells us about the structure of a space. In particular, we can learnabout certain features, such as of holes or loops, present in the set. This idea is not just interesting tothose studying pure mathematics, but also to those in applied mathematics. For example, an algorithm thatcomputes the Cech cohomology on a data set can tell us if there are any ”gaps” in the data.

To understand Cech cohomology, and how the process works, we must gain a working vocabulary intopology, algebra (especially homological algebra), and category theory. Only then can we understand theformal definition of Cech cohomology. Once we understand Cech cohomology, we can outline an algorithmthat performs the Cech cohomology on a data set. Lastly, we will compare the Cech cohomology to theVietoris-Rips Complex.

1. Topology

To understand Cech cohomology, an elementary knowledge of topology is required. Basic ideas of settheory are also required, however it will be assumed that the reader is already familiar with such concepts.Our foray into topology will begin, of course, with the definition of a topology.

Definition 1.1. (Topology) Let X be a set. A topology on X is a collection of subsets of X denoted by τand satisfying the following three properties:

1. X and ∅ are elements of τ2. Arbitrary unions of elements of τ are also elements τ .3. Finite intersections of elements of τ are also elements of τ

Any set which can have a topology defined is said to be a topological space, and any element of a topologyis said to be an open set on the topological space. (Munkres, 74).

Interestingly, having a topology is not a strong requirement. This is because in general we can define atopology commonly referred to as the trivial topology on a set X. The aforementioned topology, τ , is justthe set containing X and ∅. One sees that this is indeed a topology, since X ∪ ∅ = X and X ∩ ∅ = ∅ andthus the three requirements of a topology are satisfied. Many of the sets that are of particular interest tomathematicians are also topological spaces.

Example 1.2. (A topology on Rn) We can show that the set Rn has a topology. The topology we willuse in this example is referred to as the usual topology on Rn. To define our topology, we use the euclideandistance formula on Rn, given by d(x, y) =

√(x1 − y1)2 + . . .+ (xn − yn)2. Choosing a distance ε > 0, we

can define a set Bε(x) = {y ∈ Rn|d(x, y) < ε for some point x ∈ Rn}. Note that the sets of Bε(x) are justdisks in Rn with radius ε centered at X. Now we define the standard topology on Rn by τ = {U ⊂ Rn| forall u ∈ U , there exists some ε > 0 such that Bε(u) ⊂ U}. In other words, a set is open if every point canbe surrounded by a disk which is contained inside the set. We can show that τ is a topology on Rn. First,we show that Rn and ∅ are both elements of τ . It is easy to see that Rn ∈ τ . Any point x ∈ Rn can besurrounded by a ball contained entirely within Rn, and so we say Rn ∈ τ . Next we check that ∅ ∈ τ . Thereis no element of ∅ for us to surround with an ε-ball, and so it is vacuously true that ∅ ∈ τ .

Next we check that an arbitrary union of elements of τ are also elements of τ . We consider the arbitraryunion ⋃

j∈JUj

where each Uj ∈ τ . Consequently, each uj ∈ Uj can be surrounded by some ε-ball in Uj . Then if x is inthe arbitrary union, it follows that x ∈ U1 or x ∈ U2 or x ∈ U3 and so on. We know then that x is in someUj , and as we know any element of Uj can be surrounded by an ε-ball. Since this Uj is contained in thearbitrary union, and the ε-ball is contained within Uj , we have that

Bε(x) ⊂⋃j∈J

Uj for all x ∈⋃j∈J

Uj which implies⋃j∈J

Uj ∈ τ

Lastly, we show that any finite intersectionk⋂j=1

Uj

2

Page 3: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) S1 (shown in black) with an open set of R2

(blue).

(b) An open set on the subspace topology ofS1 resulting from 1A.

Figure 1. S1 with an open set of R2 (A) and an open set of the subspace topology on S1 (B).

of elements of τ are also elements of τ . Let x be an element of

k⋂j=1

Uj

Then x ∈ Uj for all j ∈ {1, . . . , k}. Since each Uj ∈ τ , x can be surrounded by an ε-ball contained withineach Uj . Our intersection consists of a finite number of subsets of Rn, and as such, there exists a smallestε-ball containing x. It follows that for the smallest ε-ball, denoted by Bε(x), we have Bε(x) ⊂ Bε′(x) for allBε′(x) ⊂ Uj where Uj is any set in the finite intersection. Thus

Bε(x) ⊂k⋂j=1

Uj

andk⋂j=1

Uj ∈ τ.

Therefore, the topology generated by ε-balls is a topology on Rn.

As we have just shown, Rn is a topological space. This result is particularly useful for applied mathematics,where most work is contained in some subset of Rn. Importantly, it turns out that we can define a topologyon any subset of Rn, which allows us to extend any properties of topological spaces to said subset.

Definition 1.3. (Subspace topology) Let X be a topological space with a topology τX and Y ⊂ X. We candefine a topology on Y , called the subspace topology, by τY = {U ∩ Y |U ∈ τX} (Munkres, 86).

Example 1.4. (Subspace topology on S1) Consider S1 ⊂ R2. Recall from Example 1.2 that open sets onR2 are in the form of disks with radius ε > 0. Open sets on S1, then, are points on S1 intersected with theseε-balls. In other words, open sets of S1 are just arcs, as you can see in Figure 1.

Example 1.4 hints at an important concept in our discussion of Cech cohomology. Notice that an openset on the subspace topology of S1 was just a ”fragment” of S1. It follows that if we used enough carefullyplaced ε-balls, the resulting open sets in the subspace topology would ”cover” S1.

Definition 1.5 (Open cover). Let X be a topological space, and let U be a collection of subsets of X. Wesay that U = {Ui}i∈I , is a cover of X if

⋃i∈I

Ui = X. If each set Ui of U is open on X, then U is called an

open cover of X.

Covers are the cornerstone of computing the Cech cohomology. We make use of covers to induce aCech Complex on a given topological space, which allows us to compute the necessary cohomology groups.Open covers are required for this process, as we will discuss later on. For now, we familiarize ourselves withopen covers through the following examples.

3

Page 4: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Example 1.6 (An open cover of S1). One way to create an open cover is to obtain one from the subspacetopology. Consider S1 ⊂ R2. We know from Example 1.2 that open sets of R2 are disks with some radius ε.Then we can cover S1 with these ε-balls; in this case, we use three. However, our goal is to cover S1 withsets that are open in S1, and ε-balls alone do not meet the requirement. However, we can intersect each ofour ε-balls with S1 and obtain open sets on the subspace topology for S1. In doing so, we obtain three opensets whose union is equal to S1.

Example 1.7 (An open cover of Rn). We can create an open cover of Rn using ε-balls. Let U = {Bε(x)|x ∈Rn} That is, let U be the set of ε-balls centered at some point x ∈ Rn. We can consider each Bε(x) ⊂ Rn,and since each ε-ball is contained within itself, it follows that each Bε(x) is open on R. Lastly, note thateach x ∈ Rn can be surrounded by some ε-ball, and so if we take the union of all the ε-balls - that is, theunion of all the elements of U - we find that the union necessarily yields Rn. We have now shown that Ucreates an open cover of Rn.

Note that this cover is uncountably infinite. There is no limit to how many elements are in a cover. Theonly requirement is that the union of every set in the cover is equal to the original space.

We are not limited to using ε-balls to create an open cover of Rn. As long as the sets in our open coverare in some topology on Rn, we can make them whatever shape we wish. An open cover of cubes will beparticularly useful for those wishing to make an algorithm for the Cech cohomology.

Example 1.8. (A cover for Rn with cubes) If we wish to cover Rn, we are not limited to just ε-balls. Wecan just as easily use ε-cubes: n-dimensional cubes with side length ε. Let U = {Sε(x)|x ∈ Rn}, whereSε(x) = {y ∈ Rn such that |yi − xi| < ε/2 for all i ∈ {1, . . . , n}, x ∈ Rn}. The set Sε(x) is just a cubecentered at a point x ∈ Rn whose side length is ε, and the set U is the collection of all such cubes for everypoint in Rn. Now if τ is the topology generated by surrounding every point in some U ⊂ Rn with an ε-cubecontained within U , we find that each Sε(x) is open in τ . If we take the union of each element of U , we takethe union of all the ε-cubes centered at each point of Rn, which of course is also Rn. Thus, we can create acover of Rn by using cubes.

To show that this forms an open cover, we have to show that the cubes are open. There are two ways toaccomplish this:

(1.) Show that under the usual topology, each ε-cube sits inside an ε-ball. Since each ε-ball is an openset in the usual topology, it follows that an ε-cube contained in an ε-ball will also be open.

(2.) Show that there is a topology generated by ε-cubes, constructed the same way as the usual topology.It follows from the definition (once we prove this is indeed a topology) that each ε-cube is open,since every element of an ε-cube is obviously contained by an ε-cube inside the same set.

For the sake of brevity and originality, we take the first option, since the second choice would be a proofnearly identical to the one in Example 1.2. Consider Rn under the usual topology, and let Sε(s) be an ε-cubeand x ∈ Sε(s). Then |xi − si| < ε/2 for all i ∈ {1, . . . , n}. It follows that |xi − si| ≥ 0 and ε > 0, andso we also have the inequality |xi − si|2 < (ε/2)2 = ε2/4 for all i ∈ {1, . . . , n}. Since each |xi − si| ∈ R,it follows that |xi − si|2 = (xi − si)2 for all i ∈ {1, . . . , n}. Then our equality |xi − si|2 < ε2/4 becomes(xi − si)2 < ε2/4. It follows then that

n∑i=1

(xi − si)2 = (x1 − s1)2 + . . .+ (xn − sn)2 < ε2/4 + ε2/4 + . . .+ ε2/4 =⇒ d(x, s)2 < nε2/4

Since d(x, s)2 ≥ 0 and nε2/4 > 0, we have that d(x, s) = d(s, x) < ε√n/2. Thus, x ∈ Bε

√n/2(s) and

Sε(s) ⊂ Bε√n/2(s). This implies Sε(s) is an open set of the usual topology. Any element in Bε

√n/2(s) can

be surrounded by an ε-ball Bε′(s) ⊂ Bε√n/2(s). Since any element of Sε(s) belongs to Bε

√n/2(s), it follows

that any element of Sε(s) can be surrounded by an ε-ball small enough to fit in the cube. Thus, each set inthe cover U is open, as desired.

We see quite clearly that there are often multiple open covers for a topological space. We could cover Rnwith infinitely-many ε-balls, or we could cover Rn with infinitely-many ε/2-balls. Intuitively, we know thateach ε/2-ball will be smaller, and will thus sit inside some ε-ball. It should follow then that we can map allof the smaller ε/2-balls to their supersets, the ε-balls.

4

Page 5: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Definition 1.9. (Refinement) Let U = {Ui}i∈I be a cover of a topological space X. A refinement is a coverV = {Vj}j∈J of X such that for all j ∈ J there exists an i ∈ I such that Vj ⊂ Ui. Importantly, this meansthat there exists a refinement map ∐

V ∈VV ↪→

∐U∈UU

Refinements are important to the formal definition of Cech cohomology. We will need to take the ”mostrefined” open cover for a topological space as part of the definition. Refinements are also a particularlyinteresting aspect of sheaves, another cornerstone of Cech cohomology, which we will discuss in Section 4.For now, we look at a refinement of ε-balls.

Example 1.10. (Refinement of a cover of Rn with ε-balls) Consider the cover U = {Bε(x)|x ∈ Rn}. Recallthat each ball Bε(x) is a disk of radius ε > 0. Then the ball Bε/2(x) ⊂ Bε(x). If we let V = {Bε/2(x)|x ∈ Rn},then for each open set V ∈ V we have an open set U ∈ U such that V ⊂ U . Then V is a refinement of theopen cover U .

Topologists are especially interested in the continuous functions between topological spaces. However,the usual idea of continuity that is taught in real analysis and calculus only applies to sets like Rn, whichhave notions of distance. Not every topological space has the property of distance, and as such a differentdefinition of continuity is needed.

Definition 1.11. (Continuous functions) Let X and Y be topological spaces. A function f : X → Y iscontinuous if for every open set V ⊂ Y , f−1(V ) is open in X. For clarification, note that by f−1(V ) wemean the inverse of f applied to elements of V . The function f is said to be continuous at a point x if foreach open neighborhood V of f(x) there exists an open neighborhood U of x such that f(U) ⊂ V (Munkres,102). A continuous function is continuous at every point in the domain.

The definition above is equivalent to the ε-δ definition of continuity, as well as the limit definition(limx→c f(x) = f(c)) of continuity. However, as mentioned previously, both of these definitions requiresome notion of distance, whereas the topological definition is independent of distance. Continuity is usefulbecause it tells us something about open sets of the domain based off of open sets from the codomain. It tellsus that a function not only maps points to points, but that, in some sense, it sends neighboring points toneighboring points. If we look at continuous functions from some topological space X to the real numbers,we can learn about the structure of X based on open sets of R, which we are now well acquainted with. Inparticular, locally constant functions provide us with information about the structure of their domain.

Example 1.12. (Locally constant functions are continuous) We define a locally constant function to be afunction f : X → Y , where X and Y are topological spaces, such that for any x ∈ X there exists an openneighborhood U of x where f(U) = {y} for some constant y ∈ Y . Not every open neighborhood is sent tothe same constant. Constant functions are a special case of locally constant functions.

To show f is continuous, we let V ⊂ Y be an open set. Next we consider the set f−1(V ) = {x ∈ X|f(x) ∈V } and show that it is open in X. If f−1(V ) = ∅, then it is open by definition. Otherwise, let a ∈ f−1(V ).Since f is locally constant, there exists an open set Ua of X such that f(x) = y′ for all x ∈ Ua. Since a ∈ Uawe have f(a) = y′, which implies y′ ∈ V by a ∈ f−1(V ). It follows that for all x ∈ Ua we have f(x) = y′ ∈ V ,and so Ua ⊂ f−1(V ). By Definition 1.11, this means that f is continuous.

Example 1.12 tells us that locally constant functions from a topological space to R are indeed continuous,but it does not give us any particularly useful information regarding the domain. As it turns out, locallyconstant functions can tell us if our domain is in one piece or split into several pieces. First, we mustunderstand what it means for a topological space to be ”in one piece.”

Definition 1.13. (Connected spaces) Let X be a topological space. We say X is connected if there areno pairs of disjoint open subsets of X whose union is X. That is, X is connected if there does not existopen sets U, V ⊂ X such that U ∩ V = ∅ and U ∪ V = X. A set satisfying these conditions is said to be aconnected space (Munkres, 146).

The opposite of a connected space is very easy to figure out based on Definition 1.13. A topological spaceX is not connected if there exist disjoint open sets U, V ⊂ X such that U ∪ V = X. Going back to locallyconstant functions, it turns out that we can determine whether or not the domain of a locally constantfunction is connected based on the values of the function.

5

Page 6: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Example 1.14. (Locally constant functions on non-connected sets can take multiple values) Consider aspace X which is not connected. Let U1 and U2 be two open subsets of X whose union is X. Define a

function f : X → Y by f :=

{f(x) = y, where y is a constant in Y x ∈ U1

f(x) = y′ where y′ is a constant in Y x ∈ U2

. We see that f is locally

constant, since for any x ∈ X, either x ∈ U1 or x ∈ U2 and f(x) is constant on either open set.

Example 1.14 is only part of what we were hoping to prove. To show that the values of a locally constantfunction determine the connectedness of the function’s domain, we have to show that there is a differencebetween locally constant functions on non-connected sets and locally constant functions on connected sets.Well, if locally constant functions on non-connected sets can take multiple values, it should follow that locallyconstant functions on a connected set are constant. That is, locally constant functions on a connected settake a single value. For this statement to be true, we need an additional property for the codomain of thefunction. It must be Hausdorff.

Proposition 1.15. A locally constant function whose domain is a connected set and whose codomain isHausdorff takes a single value.

Proof. Let f : X → Y be a locally constant function on a connected set X, with the codomain, Y beingHausdorff. By Hausdorff, we mean a topological space satisfying an additional property: that if y, y′ ∈ Y withy 6= y′, there exist two open neighborhoods V, V ′ ⊂ Y such that y ∈ V , y′ ∈ V ′, and V ∩V ′ = ∅. Intuitively,we can think of Hausdorff spaces as topological spaces whose points can be ”separated.” Importantly, if Yis Hausdorff, then Y − {y} is open, as we now show. Let a ∈ Y − {y}. It follows that a 6= y, and since Y isHausdorff, there exist disjoint open neighborhoods Ua and Va of a and y respectively. Since a ∈ Ua, we haveUa ⊂ Y − {y} and thus Y − {y} is open. This fact will be the crux of our proof.

Since f is locally constant, there exists an open set U of X such that f(U) = {y}, where y is some constantin Y . Now consider the set f−1(Y − {y}). As we have shown, since Y is Hausdorff, Y − {y} is open. Sincef is locally constant, it is continuous, and therefore f−1(Y − {y}) is open in X. This implies we have anopen cover U = {U, f−1(Y − {y})}. But note that we have U ∩ f−1(Y − {y}) = ∅, which will contradict theconnectedness of X unless either U = ∅ or f−1(Y − {y}) = ∅. The case where both sets are empty impliesX = ∅, which would mean f is not a function. Similarly, if U = ∅, then f is not a locally constant function,as U is the open set that f is constant on. It follows then that f−1(Y −{y}) = {x ∈ X|f(x) ∈ Y −{y}} = ∅,which implies there is no x ∈ X that does not map to the constant y. Therefore, f is constant. �

Example 1.14 and Proposition 1.15 explain why locally constant functions will be crucial to our study ofCech cohomology. Recall that Cech cohomology tells us about the structure of a topological space. Givenan open cover {Ui}i∈I of a topological space X, if we look at the set of locally constant functions from eachUi to R, we determine whether or not each Ui is a connected space. The 0-th cohomology group will tell ushow disconnected a space is based on the Ui.

Additionally, locally constant functions allow us to discern whether or not a topological space is con-tractible. The idea of contractibility in our discussions can best be understood through homotopy.

Definition 1.16 (Homotopy). Let X and Y be topological spaces with continuous functions f and g betweenthem. A homotopy between X and Y is a continuous function H : X × [0, 1]→ Y such that H(x, 0) = f(x)and H(x, 1) = g(x) for all x ∈ X. If such a function exists, f is said to be homotopic to g, which we denoteby f ' g. If g is a constant function, f is said to be null-homotopic. Intuitively, we can think of two functionsas homotopic if one can be continuously deformed to another.

Example 1.17 (sin(x) is homotopic to cos(x)). Consider the functions f, g : R→ R2 where f(x) = sin(x)and g(x) = cos(x). Recall that sin(x) and cos(x) are both continuous. To show these functions arehomotopic, we need a function H : R × [0, 1] → R2 such that H(x, 0) = f(x) and H(x, 1) = g(x) forall x ∈ R. If we let H(x, t) = tcos(x) + (1 − t)sin(x), we have a continuous function where H(x, 0) =0 · cos(x) + 1 · sin(x) = 0 + sin(x) = f(x) and H(x, 1) = 1 · cos(x) + 0 · sin(x) = cos(x) + 0 = cos(x) = g(x).Thus we say that sin(x) ' cos(x). We can see from Figure 2 that this is the case.

Example 1.18 (x2 is homotopic to 3). Consider f, g : R → R such that f(x) = x2 and g(x) = 3. Both ofthese functions are continuous, and we can define a continuous function H : R × [0, 1] → R by H(x, t) =(1− t)x2 + 3t. It follows that H(x, 0) = x2 = f(x) and H(x, 1) = 3 = g(x), and so we say that x2 ' 3. Thatis, f is null-homotopic. We can also see this in Figure 3.

6

Page 7: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) g(x) = cos(x) (blue) and H(x, t) for t = 0 (gray).

(b) f(x) = sin(x) (green), H(x, t) for t = 0.5, and g(x)

(c) f(x) and H(x, t) for t = 1

Figure 2. The sine and cosine functions on the interval [−π, π] along with H(x, t) fordifferent values of t

Note that in Examples 1.17 and 1.18, H used the pattern H(x, t) := (1− t) · f(x) + t · g(x). This patternonly holds when the codomain is a subset of Rn which is convex. The convex property is unique to Euclideanspaces, and as such we cannot use it unless we have a notion of distance in the codomain.

Now that we are familiar with homotopic functions, particularly null-homotopy, we can understand con-tractibility. There are multiple definitions for contractibility, but the one that follows naturally from null-homotopy is the easiest to understand.

Definition 1.19 (Contractibile). A topological space X is contractible if its identity map is null-homotopic.By identity map, we mean a function idX : X → X such that idX(x) = x for all x ∈ X. Intuitively, we saythat a topological space is contractible if it can be continuously deformed to a single point in the set.

Example 1.20 (R is contractible). Consider the identity function on R, denoted by idR. For a functiong : R → R such that g(x) = c for some constant c ∈ R, we can define a function H(x, t) := (1 − t)x + tc.Since this is a continuous function satisfying H(x, 0) = idR and H(x, 1) = g(x), we have that the identityfunction idR is homotopic to the constant function g. Since the identity function on R is null-homotopic, theset R is contractible.

Example 1.21 (Sn is not contractible). Consider a sphere in Rn with radius ε. Let x be a point on thesurface of the sphere. Intuitively, then, we see that there can be no way to continuously deform all of thepoints on the n-sphere to x. If we ”shrink” the radius, then the point x lies outside the sphere! To prove thisformally, other methods of showing contractibility are required. However, these methods will be omitted, asthey are tangential to our discussion.

7

Page 8: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) g(x) = 3 (blue) and H(x, t) for t = 0 (gray).

(b) f(x) = x2 (green), H(x, t) for t = 0.7, and g(x)

(c) f(x) and H(x, t) for t = 1

Figure 3. The functions f(x) = x2 and g(x) = 3 on the interval [−3, 3] along with H(x, t)for different values of t

Contractibility plays a pivotal role in Cech cohomology. Note that contractibility implies a set is connected.If a contractible space X were not connected, we could not ”shrink” the disjoint open sets U1, U2 ⊂ X to asingle point without leaving X, and therefore X would not be contractible.

2. Algebra

Now that we know the necessary topology to understand Cech cohomology, we need to understand thealgebra behind it. First we outline the basics of group theory, before moving on to homological algebraand defining cohomology groups. A rudimentary knowledge of linear algebra will be assumed, as it is onlyneeded for computing the Cech cohomology. Basic properties of matrices and vector spaces, as well as therank-nullity theorem, are all we need. Vector spaces will be briefly discussed, as they align perfectly withour discussion of R-modules.

Definition 2.1. (Groups and subgroups) Let G be a set. We say G is a group if there exists a binaryoperation on G, denoted by ∗ : G×G→ G satisfying the following properties:

1. a ∗ (b ∗ c) = (a ∗ b) ∗ c for all a, b, c ∈ G (associativity)2. There exists an element g of G such that a ∗ g = a for all a ∈ G (identity)3. For every element a of G, there exists an element a′ ∈ G such that a ∗ a′ = g (inverses)

If in addition to previous three properties we have that for all a, b ∈ G, a ∗ b = b ∗ a, then G is said to be acommutative or abelian group. A set H ⊂ G is said to be a subgroup if the binary operation ∗|H×H formsa group with elements of H.

8

Page 9: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Example 2.2. (R forms a group under addition) Consider the set R along with the binary operation,addition, denoted by +. Recall that (R,+) forms a group, a fact which rises from the axiomatic constructionof the real numbers. We have that for any a, b, c ∈ R, a + (b + c) = (a + b) + c. There is an element 0 ∈ Rsuch that for any a ∈ R, a+ 0 = a. Lastly, note that for any a ∈ R there exists an element −a ∈ R satisfyinga+ (−a) = 0. Thus, we see that R is a group under addition. Furthermore, we know that this is an abeliangroup, as a+ b = b+ a for all a, b ∈ R.

We could have shown just as easily that Rn is a group under addition. The proofs are essentially the sameas Example 2.2, but the operation is defined on each component of an element of Rn. It follows that sinceR is a group under the same operation(s), and since each component of Rn is in R, all of the properties ofabelian groups apply to Rn.

We do not need real numbers to show a set is a group. For example, a set of functions can form a group.We just need to be a bit more careful with how we define our binary operation.

Example 2.3. (The set of functions GS is a group) Given a set, S, and a group, G, we can define a setGS as the set of functions f : S → G. We wish to show that GS forms a group. First we define a binaryoperation ∗ : GS × GS → GS by (f ∗ g)(s) = µ(f(s), g(s)), where f, g ∈ GS , s ∈ S and µ is the binaryoperation on G.

Next, we wish to show that for any f, g, h ∈ GS , we have f ∗ (g ∗ h) = (f ∗ g) ∗ h. Well, f ∗ (g ∗h) = µ(f(s), µ(g(s), h(s))) where s ∈ S. But since f(s), g(s), h(s) ∈ G and G is a group, we have thatf ∗ (g ∗ h) = µ(f(s), µ(g(s), h(s))) = µ(µ(f(s), g(s)), h(s)) = (f ∗ g) ∗ h.

Now we show that there exists an identity element of GS . We denote our identity of GS by the constantfunction z(s) = e, where e is the identity of G. Then for any f ∈ GS , we have that f ∗ z = µ(f(s), z(s)) =µ(f(s), e). Since G is a group, we have that µ(f(s), e) = f(s), which means (f ∗ z)(s) = µ(f(s), z(s)) =µ(f(s), e) = f(s) for each s ∈ S and so f ∗ z = f .

Lastly, we show that for any f ∈ GS , there exists an element g ∈ GS such that f ∗ g = z. Such afunction can be defined by g(s) = f(s)′, where f(s)′ is the inverse of the element f(s) in the group G. Thenf ∗ g = µ(f(s), g(s)) = µ(f(s), f(s)′) = e = z(s) = z

Since GS is associative, has an identity element, and inverse elements, GS is a group under the binaryoperation ∗.

Example 2.4. (The set of locally constant functions, R, forms an abelian group) Let X be a set. We definethe set R to be the set of all locally constant functions from X to R. The set R is just a special case of GS

from Example 2.3! The set of real numbers R is a group under addition. Since we are considering functionsfrom a set to a group, we know that we can define a binary operation ∗ on R by f ∗ g = f(x) + g(x). Toshow that this forms a group, all we need to do is show it is closed. That is, we have to show f ∗ g is alsoa locally constant function. Well, f ∗ g = f(x) + g(x), where f(x) and g(x) are constants in R. Their sum,f(x) + g(x) will also be a constant, and so we see that f ∗ g is also locally constant and f ∗ g ∈ R.

Note that we have an abelian group in this instance, since addition of real numbers f(x) and g(x) iscommutative. Although it was easy to prove that R is a group, this fact will be immensely helpful in ourdiscussion of Cech cohomology.

Particularly useful functions are ones that can ”split up” the binary operations in the domain andcodomain. Such functions are referred to as homomorphisms. However, the properties of a homomorphismvary depending on the structure of its domain and codomain. The most basic homomorphism we will con-sider is the group homomorphism, which have severeal interesting properties that apply to homomorphismsof other structures as well.

Definition 2.5. (Group homomorphisms) Let A and B be two groups with binary operations µ and ρrespectively. A group homomorphism is a function f : A → B satisfying ρ(f(a1), f(a2)) = f(µ(a1, a2)) forall a1, a2 ∈ A and f(a1), f(a2) ∈ B

Proposition 2.6. For a group homomorphism f : A→ B we have that ker(f) = {a ∈ A|f(a) = eB ∈ B} isa subgroup of A and im(f) = {b ∈ B|f(a) = b for some a ∈ A} is a subgroup of B.

Proof. Recall that a subset H ⊂ G is a subgroup if it forms a group under the restriction of the binaryoperation on the group G. Let µ be the binary operation on A and ν be the binary operation on B. Beforewe show that ker(f) and im(f) are subgroups, we first show that they maintain closure. Let a, b ∈ ker(f). By

9

Page 10: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

definition, ker(f) ⊂ A, which means that a, b ∈ A, and therefore µ(a, b) ∈ A. But f(µ(a, b)) = ν(f(a), f(b)),and since a, b ∈ ker(f) we have that ν(f(a), f(b)) = ν(eB , eB) = eB ∈ B. Thus, µ(a, b) ∈ ker(f) and we saythat ker(f) is closed under the binary operation µ. Now let x, y ∈ im(f). This means that there are elementsc, d ∈ A such that f(c) = x and f(d) = y. Note that im(f) ⊂ B, so we have that x, y ∈ B and ν(x, y) ∈ B.Then ν(x, y) = ν(f(c), f(d)) = f(µ(c, d)), where µ(c, d) is an element of A. Therefore, ν(x, y) ∈ im(f) andim(f) is closed under the binary operation ν.

Now we show that ker(f) is a subgroup of A. Let a, b, c ∈ ker(f). Note that these must also be elements ofA, since ker(f) ⊂ A. SinceA is a group under the operation µ, we have that µ|ker(f)×ker(f)(a, µ|ker(f)×ker(f)(b, c)) =µ|ker(f)×ker(f)(µ|ker(f)×ker(f)(a, b), c). Therefore, ker(f) is associative under the restricted operation µ|ker(f)×ker(f).

The identity element of ker(f) will be identical to the identity element of A, but of course we mustshow that this is true. Let eA be the identity element of A and eB be the identity of B. Well, eA =µ(eA, eA) by definition. Then f(eA) = f(µ(eA, eA)) = ν(f(eA), f(eA)). Since f(eA) is an element of the

group B, there exists an element f(eA)−1

of B such that ν(f(eA), f(eA)−1

) = eB . Applying f(eA)−1

to

both sides of f(eA) = ν(f(eA), f(eA)) we have that ν(ν(f(eA), f(eA)), f(eA)−1

) = ν(f(eA), f(eA)−1

) ⇒ν(f(eA), ν(f(eA), f(eA)

−1)) = ν(f(eA), f(eA)

−1) ⇒ ν(f(eA), eB) = eB ⇒ f(eA) = eB . Therefore, the

identity element eA of A is in ker(f). But this does not tell us that eA is the identity of ker(f), so we mustwork a bit more. Let a ∈ ker(f). Then a ∈ A and µ|ker(f)×ker(f)(a, eA) = µ(a, eA) = a. Therefore, eA isthe identity element of ker(f).

Lastly for ker(f), we check for the existence of inverse elements. Let a ∈ ker(f). Then we know thata ∈ A and that there exists some a′ ∈ A such that µ(a, a′) = eA. We now show that this same element a′

must also be an element of ker(f). Well, eB = f(eA) = f(µ(a, a′)) = ν(f(a), f(a′)) and since a ∈ ker(f)it follows that ν(f(a), f(a′)) = ν(eA, f(a′)) = f(µ(eA, a

′)) = f(a′), so a′ ∈ ker(f). Finally we check thata′ acts as an inverse under the restriction of µ. µ|ker(f)×ker(f)(a, a′) = µ(a, a′) = eA. Since ker(f) ⊂ Ais associative and has an identity element and inverses under the operation µ|ker(f)×ker(f), it is true thatker(f) is a subgroup of A.

Now we show that im(f) is a subgroup of B. We have already shown that im(f) is closed underthe operation ν, so we can begin by showing im(f) is associative. Let x, y, z ∈ im(f). It follows thatx, y, z ∈ B, and so we have that ν|im(f)×im(f)(x, ν|im(f)×im(f)(y, z)) = ν(x, ν(y, z)) = ν(ν(x, y), z) =ν|im(f)×im(f)(ν|im(f)×im(f)(x, y), z).

Next we show im(f) has an identity element. As one may suspect, the identity of im(f) will be the sameas the identity element of B. We have already shown that eB ∈ im(f), as we know that f(eA) = eB . Now weshow that eB does indeed act as an identity element. Let x ∈ im(f). Then x ∈ B and ν|im(f)×im(f)(x, eB) =ν(x, eB) = x as desired.

Finally we show that there are inverses for each element of im(f). We know that an element x ∈ im(f) isan element of B and thus has an inverse x′ ∈ B. To show that x′ ∈ im(f), we show that there exists some ele-ment a′ ∈ A such that f(a′) = x′. Since x ∈ im(f), there exists some a ∈ A such that f(a) = x. Since a ∈ A,there also exists some element a′ ∈ A such that µ(a, a′) = eA. Note that x′ = ν(x′, eB) = ν(x′, f(eA)) =ν(x′, f(µ(a, a′))) = ν(x′, ν(f(a), f(a′)) = ν(ν(x′, f(a)), f(a′)) = ν(ν(x′, x), f(a′)) = ν(eB , f(a′)) = f(a′).Since x′ = f(a′) for some a′ ∈ A, x′ ∈ im(f). But because x′ ∈ B, it follows immediately thatν|im(f)×im(f)(x, x

′) = ν(x, x′) = eB . Since im(f) ⊂ B is associative under ν, and has an identity elementand inverses, im(f) is a subgroup of B. �

Proposition 2.7. For a group homomorphism f : A → B, f is injective if and only if ker(f) = {eA} andf is surjective if and only if im(f) = B

Proof. We first show that a group homomorphism f is injective provided ker(f) = {eA}, where eA is theidentity of the group A. Suppose that for some a, b ∈ A we have f(a) = f(b). Since f(a), f(b) ∈ B and

B is a group, there exists a unique element f(b)−1

such that ν(f(b), f(b)−1

) = eB , where ν is the binary

operation on B and eB is the identity element of B. Apply f(b)−1

to both sides of f(a) = f(b), we get

ν(f(a), f(b)−1

) = ν(f(b), f(b)−1

) ⇒ ν(f(a), f(b)−1

) = eB ⇒ f(µ(a, b−1)) = eB , where µ(a, b−1) ∈ A andb−1 is the inverse to the element b ∈ A. Thus µ(a, b−1) ∈ ker(f). But since ker(f) = {eA}, it followsthat µ(a, b−1) = eA. Applying b, the inverse of b−1, to both sides yields µ(µ(a, b−1), b) = µ(eA, b) ⇒µ(a, µ(b−1, b)) = µ(eA, b) ⇒ µ(a, eA) = µ(eA, b) ⇒ a = b. Therefore f is injective, just as we had hoped toprove.

10

Page 11: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Next we show that if f is injective, then ker(f) = {eA}. Let x ∈ ker(f). Then f(x) = eB , and so{eA} ⊂ ker(f). But it is also true that f(eA) = eB . Consequently, f(x) = f(eA), and since f is injectivethis implies that x = eA. Therefore the only unique element of ker(f) is eA. That is, ker(f) ⊂ {eA} andthus ker(f) = {eA}.

Now we suppose that im(f) = B and show that f must then be surjective. If im(f) = B, surjectivityfollows by definition. Recall that im(f) = {b ∈ B|f(a) = b for some a ∈ A}. Since im(f) = B, it followsthat every element b in the codomain of f , there exists some element a in the domain of f such that f(a) = b.This is exactly what it means for a function to be surjective.

Finally, we check that if f is a surjective function, then im(f) = B. Once again, the conclusion followsimmediately from the definition of the assumption. For a function g to be surjective, every element y in thecodomain of g must have at least one element x in the domain of g such that g(x) = y. Thus, for any b ∈ B,we know there exists some a ∈ A such that f(a) = b. In other words, b ∈ im(f) and B ⊂ im(f). We alreadyknow that im(f) ⊂ B, so we have im(f) = B. �

Propositions 2.6 and 2.7 are important in understanding concepts of homological algebra. By use ofProposition 2.6, we will see that homology groups are in fact groups. Proposition 2.7 is crucial to proofsinvolving short exact sequences.

Similar to topological spaces, groups are not a very strict requirement for a set, and as such they will beused frequently. However, richer algebraic structures are also of use in the Cech cohomology. We now talkabout rings, which will help us understand R-modules.

Definition 2.8. (Rings) Let R be an abelian group under addition. R is a ring if there is another binaryoperation, denoted by ·, satisfying associativity, and the following two properties: a · (b + c) = a · b + a ·c and (a+ b) · c = a · c+ b · c for all a, b, c ∈ R

Note that R is not required to be a group under ·, as neither an identity or inverses are necessary for aring. Needs reference.

Example 2.9. (R is a ring) Consider the set R, which we proved in Example 2.2 forms a group underaddition. If we consider the operation · to be multiplication of real numbers, we can show that R is a ring.Let a, b, c ∈ R. We have that multiplication of real numbers is associative, and that for any a, b, c ∈ R,we have that a · (b + c) = a · b + a · c and (a + b) · c = a · c = b · c. Furthermore, R is an abelian groupunder ·, as we have the existence of an identity element, 1, the existence of inverses, and commutativity formultiplication of real numbers. All of these properties arise axiomatically from the definition of the set R.Any ring satisfying the same properties is said to be a field.

Definition 2.10. (R-modules) Let G be a group under addition and R be a ring. A left R-module is formedby the set G and a binary operation · : R×A→ A defined by r ·a ∈ A and satisfying the following properties:

1. r · (a+ b) = r · a+ r · b2. (r + s) · a = r · a+ s · a3. r · (s · a) = (r · s) · a

Note that the properties above hold only for a left R-module. A right R-module has exactly the sameproperties, but the elements of the group G are ”hit” from the right by elements of the ring R. If theoperation · is commutative, the module is said to be a bi-module. Needs reference

R-modules are used extensively in the Cech cohomology. In particular, they help us build a Cech Complex.The following are examples of some interesting R-modules

Example 2.11. (A binary operation · : Z×Q→ Q forms an R-module) Consider the set of rational numbersQ. Note that this set is a group under addition, a structure which it passes to its superset, R. Also notethat the set of integers, Z, forms a ring, as it is a group under addition, and satisfies basic associativity anddistributivity under multiplication. Thus, we can form an R-module where Z is the ring. We show that the

operation Z × Q ·−→ Q has the necessary properties for an R-module, starting with distributivity from theadditive group. Since Z ⊂ Q, multiplication here is always between rational numbers. However, Q is a ring,as it also inherits multiplicative structure from R. Thus, the binary operation · on the ring Q is essentiallythe same as the operation · : Z×Q→ Q, and we will use them interchangeably. Then for any r, s ∈ Z anda, b ∈ Q, we have that r · (a+ b) = r · a+ r · b, since r ∈ Q and Q is a ring. Similarly, (r+ s) · a = r · a+ s · a

11

Page 12: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

because s is also an element of Q. Lastly, we have r · (s · a) = (r · s) · a because the ring operation · on Qmust be associative. Therefore, the operation Z×Q ·−→ Q forms an R-module with the additive group Q.

Most of what we did in Example 2.11 relied on the fact that Z ⊂ Q. As it turns out, any subring formsa module with its parent ring. By subring, we mean a subset of a ring which preserves the additive andmultiplicative structures well enough to be considered a ring. For example, we could have shown just aseasily that an operation · : Q× R → R forms an R-module with the additive group R, since Q is a subringof R.

Example 2.12. (Vector spaces are modules) Vector spaces are R-modules where the ring R is a field and theadditive group is abelian. For our discussions, we consider the modules where the field is R. The propertiesof a vector space V are as follows:

1. For all u, v, w ∈ V , u+ (v + w) = (u+ v) + w2. There exists an element 0 ∈ V such that v + 0 = v for all v ∈ V3. For all v ∈ V , there exists an element −v ∈ V such that v + (−v) = 04. For all v, w ∈ V we have v + w = w + v5. 1v = v for all v ∈ V , and where 1 denotes the identity element for multiplication in R6. For all α, β ∈ R and v ∈ V , α(βv) = (αβ)v7. For all α ∈ R and v, w ∈ V we have α(u+ v) = αu+ αv8. For all α, β ∈ R and v ∈ V we have (α+ β)v = αv + βv Probably needs a reference.

The first four properties are satisfied by an abelian group V . Properties 6-8 are necessary for any R-module. Property 5 may not always be applicable for an R-module, since rings are not required to haveidentity elements for their secondary operation. However, if our ring is a field, then we are guaranteed amultiplicative identity.

Example 2.13. (R×R is a vector space) Consider the set R of locally constant functions from a topologicalspace X to the real numbers. We show that R is a vector space by showing it is an R-module with amultiplicative identity. First, define addition by f + g = f(x) + g(x). For vector spaces, we need scalarmultiplication, which we can obtain naturally by defining r · f = r · f(x) for any r ∈ R, f ∈ R, and x ∈ X.Note that since f(x) ∈ R, it follows that r · f(x) ∈ R, and therefore we have defined a map · : R× R → R,since there exists a locally constant function from X to R such that g(x) = r ·f(x). As discussed in Examples2.4 and 2.7, R is an abelian group under addition, and R is a ring. Next we check that · satisfies the necessaryproperties for R-modules.

Let r, s ∈ R and f, g ∈ R. Then r · (f + g) = r · (f(x) + g(x)) for some x ∈ X. Since f(x), g(x) ∈ R wehave that r · (f(x) + g(x)) = r · f(x) + r · g(x). Similarly, (r + s) · f = (r + s) · f(x) for some x ∈ X, andsince f(x) ∈ R, we have (r+ s) · f(x) = r · f(x) + s · f(x). Lastly, we see that r · (s · f) = r · (s · f(x)) wherex ∈ X and f(x) ∈ R. Then r · (s · f(x)) = (r · s) · f(x). Therefore, R is an R-module.

Lastly, we show that this module has a multiplicative identity. Well, we know that for any x ∈ X andf ∈ R we have f(x) = c, where c is some constant in R. Then for the multiplicative identity 1 ∈ R and anyf ∈ R we have 1 · f = 1 · f(x) = f(x). Therefore, R is a vector space.

Examples 2.12 and 2.13 are very useful for defining the Cech Complex. Sets of the Cech Complex aredirect products of sets of locally constant functions. It follows that this is a product of vector spaces, whichis itself a vector space. The properties of vector spaces allow us to compute the Cech cohomology by hand.However, just as how we are thinking of vector spaces as R-modules, we must rethink matrices (linear maps)as R-module homomorphisms.

Definition 2.14. (R-module homomorphisms) Let f : A→ B be a function between two R-modules sharingthe same ring. f is said to be an R-module homomorphism if for all a, c ∈ A and r ∈ R: f(a+c) = f(a)+f(c)and f(r · a) = r · f(a) (Hungerford, 170).

Note that while we only showed Proposition 2.6 and Proposition 2.7 to be true for group homomorphisms,they can be extended to hold for homomorphisms of other structures as well. We could show, for example,that for a R-module homomorphism f , ker(f) is a sub-module of its domain.

2.1. Homological Algebra. As its name suggests, Cech cohomology is ultimately a way of computingthe cohomology groups for a topological space X. If we wish to understand Cech cohomology, we must

12

Page 13: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

first understand what homology groups are. Now that we know a bit of group theory, we can learn somehomological algebra to familiarize ourselves with homology groups.

Definition 2.15. (Equivalence relations and equivalence classes) Let A, and B, be sets. A set R is a relationfrom A to B if R ⊂ A × B. A relation R from A to itself is said to be an equivalence relation on A if thefollowing properties hold:

1. For all a ∈ A we have (a, a) ∈ R (reflexive)2. If (a, b) ∈ R then (b, a) ∈ R (symmetric)3. If (a, b) ∈ R and (b, c) ∈ R then (a, c) ∈ R (transitive)

For an equivalence relation R on A, if (a, b) ∈ R, we write a ∼ b and say that a is equivalent to b under R.An equivalence class of an element a ∈ A is the set of all elements of A equivalent to a under an equivalencerelation R, denoted by the set [a] = {b ∈ A|b ∼ a} (Hungerford, 6).

Definition 2.16. (Normal subgroup) Let (G,µ) be a group. The left coset of an element a ∈ G is givenby aG = {µ(a, g) ∈ G| for some g ∈ G}. Similarly, the right coset of a is given by Ga = {µ(g, a) ∈G|forsomeg ∈ G}. For a subgroup H of G, H is said to be a normal subgroup if hG = Gh for all h ∈ H(Hungerford, 41).

Definition 2.17. (Quotient groups) Let H be a normal subgroup of (G,µ). Using an equivalence relationg ∼ g′ if gH = g′H, we define the quotient group G/H, which is given the binary operation µ. For any twoelements [g] and [g′] of G/H, we have that g, g′ ∈ G and µ([g], [g′]) = [µ(g, g′)]. (Hungerford, 42).

For our discussions, we only need to consider quotient groups under addition or multiplication. Interest-ingly, there is another method to check equivalency for additive abelian groups. We say that for an additiveabelian group G/H with classes [g] and [g′], we have that g ∼ g′ if g − g′ ∈ H. For a multiplicative group,we have g ∼ g′ if (g′)−1 · g ∈ H. We will use these methods of equivalency instead of the formal method inDefinition 2.17.

Example 2.18. (Z/5Z is a quotient group) Consider the set Z/5Z under multiplication. We can show thatthis is a group, but first we explore what elements are in this set. By 5Z, we mean the set {. . . ,−5, 0, 5, 10, . . .},all of the multiples of 5. Two classes [a], [a′] ∈ Z/5Z are equivalent if a − a′ ∈ 5Z. For example, we havethat [1] = [6], since 1 − 6 = −5 ∈ 5Z. Intuitively, then, we can think of the set Z/5Z as all of the possibleremainders of division by 5. That is, Z/5Z = {[0], [1], [2], [3], [4]}. We show that this is a group undermultiplication through the use of the following table:

· 0 1 2 3 40 0 0 0 0 01 0 1 2 3 42 0 2 4 1 33 0 3 1 4 24 0 4 3 2 1

From the table we can observe the following:

• Z/5Z is closed• There exists a multiplicative identity, [1] ∈ Z/5Z• For each element [a] of Z/5Z, there exists an inverse element [a−1] ∈ Z/5Z such that [a] · [a−1] = [1]• The set Z/5Z is commutative under multiplication

All we need to check for now is associativity. Let [a], [b], [c] ∈ Z/5Z. Then [a] · ([b] · [c]) = [a · (b · c)] =[(a · b) · c] = ([a] · [b]) · [c]. Therefore, Z/5Z is an abelian group.

So far, we have talked about algebraic structures and their homomorphisms somewhat exclusively. Ho-mological algebra frequently requires one to think about the two ideas in conjunction. We can tie algebraicstructures and their homomorphisms together the following definition.

Definition 2.19. (Chain complex) A chain complex is a sequence of groups and their homomorphisms,denoted by

(C•, d•) := . . .d−1

−−→ C0 d0−→ C1 d1−→ C2 d2−→ C2 d3−→ . . .13

Page 14: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

and satisfying dp+1 ◦ dp = 0. Informally, we can denote the property dp+1 ◦ dp = 0 by ”d2 = 0” for thesake of brevity. To most, the definition here applies to cochain complexes instead of chain complexes, butfor cohomology, we only need to consider cochain complexes. We will use ”chain complex” and ”homology”interchangeably with ”cochain complex” and ”cohomology” to reduce the number of times we use ”co’s.”

Example 2.20. (The sequence 0δ−1

−−→ R δ0−→ R3 δ1−→ R2 δ2−→ 0 forms a chain complex) Consider the sequence

0δ−1

−−→ R δ0−→ R3 δ1−→ R2 δ2−→ 0. We can show that this is a chain complex by constructing functions δ0 and δ1

satisfying the requirement d2 = 0. Note that we do not need to define δ−1 or δ2, since the domain of δ−1 is0 and δ2 will map everything to 0 anyway. We can check that d2 = 0 without defining those maps. It willbe assumed that R3 and R2 are groups under addition, as this is a fact we can verify for any Rn in a proofthat is nearly identical to Example 2.2.

Now we define a map δ0 : R→ R3 and δ1 : R3 → R2 such that δ1 ◦ δ0 = 0. Define δ0(x) = (x, 0, 0) ∈ R3

and δ1(x, y, z) = (0, y) ∈ R2. It follows then that δ1◦δ0 = δ1(δ0(x)) = δ1(x, 0, 0) = (0, 0) = 0 ∈ R2. Thus, wesee that δ2 = 0. Next we check that δ0 and δ1 are both group homomorphisms. For any x1, x2 ∈ R we haveδ0(x1+x2) = (x1+x2, 0, 0) and δ0(x1)+δ0(x2) = (x1, 0, 0)+(x2, 0, 0) = (x1+x2, 0+0, 0+0) = (x1+x2, 0, 0),which of course means δ0(x1 + x2) = δ0(x1) + δ0(x2). Checking that δ1 is a group homomorphism is just assimple. For any (x1, y1, z1), (x2, y2, z2) ∈ R3, we have δ1((x1, y1, z1) + (x2, y2, z2)) = δ1((x1 +x2, y1 +y2, z1 +z2) = (0, y1+y2). But we also have that δ1((x1, y1, z1))+δ1((x2, y2, z2)) = (0, y1)+(0, y2) = (0+0, y1+y2) =(0 + y2), and so we say δ1((x1, y1, z1) + (x2, y2, z2)) = δ1((x1, y1, z1)) + δ1((x2, y2, z2)).

Note that δ−1 and δ2 are also group homomorphisms, which we can check without defining them. Themap δ−1 must necessarily be a group homomorphism, since its domain and codomain consist only of 0. Asfor δ2, we have for any (x1, y1), (x2, y2) ∈ R2 that δ2((x1, y1) + (x2, y2)) = δ2((x1 + x2, y1 + y2) = 0 andδ2((x1, y1)) + δ2((x2, y2)) = 0 + 0 = 0, which implies δ2((x1, y1) + (x2, y2)) = δ2((x1, y1)) + δ2((x2, y2)).

Now we check that d2 = 0 Since δ0 is a group homomorphism, we can see that δ0 ◦ δ−1 = δ0(0), whichmaps to the 0 of the codomain of δ0. Similarly, we see that δ2 ◦ δ1 must map to 0, since δ2 : R2 → 0.

Therefore, the sequence 0δ−1

−−→ R δ0−→ R3 δ1−→ R2 δ2−→ 0 is a chain complex.

Definition 2.21. (Chain map) A chain map is a collection of homomorphisms, f•, between two chaincomplexes (A•, g•) and (B•, h•) satisfying the commutative diagram. That is, for any fp, fp+1 ∈ f• we havefp+1 ◦ gp = hp ◦ fp.

. . .gp−2

// Ap−1

fp−1

��

gp−1

// Ap

fp

��

gp // Ap+1

fp+1

��

gp+1

// . . .

. . .hp−2// Bp−1

hp−1// Bp

hp// Bp+1 hp+1

// . . .Needs reference.

Homology groups are based off of chain complexes. The aptly named Cech Complex is itself a chaincomplex. From prior comments regarding the Cech Complex, we see that the sets of the Cech Complex, gen-erated by locally constant functions of an open cover, form a sequence of R-modules. The homomorphisms,as well as the Cech Complex itself will be formally defined in Section 5.

Chain maps are not useful in computing the Cech cohomology by hand, but are immensely helpful tothose seeking to make an algorithm for the Cech cohomology. This discussion will be saved for Section 5.2,where we will have the necessary definitions at our disposal. For now, we familiarize ourselves with exactsequences before moving on to a definition of homology groups.

Definition 2.22. (Exact, short, and long sequences) An exact sequence is a chain complex (C•, δ•) whereim(δp−1) = ker(δp). If an exact sequence contains only three nontrivial groups, that is, if the sequence is inthe form 0 → A → B → C → 0 the sequence is said to be short exact. An exact sequence with more thanthree consecutive nontrivial groups is said to be a long exact sequence. (Needs a reference.)

Lemma 2.23. If the sequence 0d−1

−−→ Ad0−→ B

d1−→ Cd2−→ 0 is exact, then d0 is injective and d1 is surjective.

Proof. Suppose the sequence 0d−1

−−→ Ad0−→ B

d1−→ Cd2−→ is exact. That is, suppose im(dp−1) = ker(dp) for

each dp in the sequence. It follows, then, that im(d−1) = ker(d0). But since d−1 : 0 → A, we know thatim(d−1) = 0. Since im(d−1) = ker(d0) via our assumption, we have that ker(d0) = 0 and thus d0 is injective

14

Page 15: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

by Proposition 2.7. Similarly, we have that ker(d2) = C, since d2 : C → 0. Because ker(d2) = im(d1), wehave im(d1) = C, which is the codomain of d1. Therefore, by Proposition 2.7, d1 is surjective, just as we setout to prove. �

Definition 2.24. (Cohomology groups) Let (C•, d•) be a chain complex of abelian groups. We define thecohomology group H•(C•) by Hp(C•) := ker(dp)/im(dp−1) (Needs a reference.)

The following two theorems are useful for creating an algorithm to ”track” homology groups of differentchain complexes. As we will discuss in Section 5.2, such algorithms allow us to compute the persistenthomology of a topological space. The results of these theorems are best understood after defining Cechcohomology formally, but we prove them in this section to familiarize ourselves with homology groups.

Theorem 2.25. A chain map f• : (C•, g•) → (D•, h•) induces a map on the homology groups H•(C•) →H•(D•)

Proof. Really, this proof relies on the following lemma: If f : G→ H is a group homomorphism and A ⊂ Gand B ⊂ H are subgroups such that f(A) ⊂ B, then f induces a group homomorphism φ : G/A → H/Bgiven by φ([g]) = [f(g)]. First we will prove the lemma, then show that it applies to the theorem.

We start by showing that φ is well-defined. Suppose [g] = [g′]. Then g− g′ ∈ A. Well, φ([g]) = [f(g)] andφ([g′]) = [f(g′)]. But since f is a group homomorphism, we have that f(g− g′) = f(g)− f(g′) is an elementof B, and thus [f(g)] = [f(g′)]⇒ φ([g]) = φ([g′]).

Next we show φ is a group homomorphism. φ([g] + [g′]) = φ([g + g′]) = [f(g + g′)] = [f(g) + f(g′)] sincef is a group homomorphism. It follows that φ([g] + [g′]) = [f(g) + f(g′)] = [f(g)] + [f(g′)] = φ([g]) +φ([g′]).Thus we have proven the lemma.

We will rely heavily on the following diagram for the next part of this proof.

. . .gp−2

// Cp−1

fp−1

��

gp−1

// Cp

fp

��

gp // Cp+1

fp+1

��

gp+1

// . . .

. . .hp−2// Dp−1 hp−1

// Dp hp// Dp+1 hp+1

// . . .

To show that the lemma is applicable to the theorem above, we need to show that we have a mapfp : ker(gp)→ ker(hp) and that im(gp−1) ⊂ ker(gp), im(hp−1) ⊂ ker(hp), and fp(im(gp−1) ⊂ im(hp−1).

Let x ∈ ker(gp). We have then that gp(x) = 0 ∈ Cp+1. It follows that fp+1 ◦ gp(x) = 0 ∈ Dp+1, andby the commutative diagram we have hp ◦ fp(x) = 0 ∈ Dp+1, which implies fp(x) ∈ ker(hp), yielding thedesired map.

Next, let a ∈ im(gp−1). This means a = gp−1(b) for some b ∈ Cp−1. Thus, gp(a) = gp◦gp−1(b) = 0 ∈ Cp+1

because (C•, g•) is a chain complex. Therefore gp−1(b) = a ∈ ker(gp) and im(gp−1) ⊂ ker(gp). Recall thatker(gp) is a subgroup of the domain Cp, and that im(gp−1) is a subgroup of the codomain Cp, and so wehave im(gp−1) is a subgroup of ker(gp).

Now let x ∈ im(hp−1). Then x = hp−1(y) for some y ∈ Dp−1. Since (D•, h•) is a chain complex, theelement x belongs to ker(hp), as hp ◦hp−1(y) = hp(x) = 0 ∈ Dp+1. Thus im(hp−1) ⊂ ker(hp) and im(hp−1)is a subgroup of ker(hp).

Lastly, let a ∈ im(gp−1). It follows that a = gp−1(b) for some b ∈ Cp−1. Then fp(a) = fp ◦ gp−1(b) = k isan element of Dp. Since we are working in a commutative diagram, it follows that hp−1 ◦fp−1(b) = k, whichimplies k = hp−1(j) for some j = fp−1(b) ∈ Dp−1. Thus fp(a) = k ∈ im(hp−1) and f(im(gp−1) ⊂ im(hp−1).

Therefore, we can use the lemma above to define a map φp : ker(gp)/im(gp−1) → ker(hp)/im(hp−1) byφp([x]) = [fp(x)]. Thus we have a map φ• : H•(C•)→ H•(D•) induced by the chain map f•.

Theorem 2.26. (A short exact sequence of chain complexes implies a long exact sequence of cohomologygroups).

15

Page 16: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Proof. The following diagram will be referenced extensively for much of this proof.

. . . 0

��

0

��

0

��

0

��

. . .

. . .αp−3// Ap−2

fp−2

��

αp−2// Ap−1

fp−1

��

αp−1// Ap

fp

��

αp// Ap+1

fp+1

��

αp+1// . . .

. . .βp−3

// Bp−2

gp−2

��

βp−2

// Bp−1

gp−1

��

βp−1

// Bp

gp

��

βp

// Bp+1

gp+1

��

βp+1

// . . .

. . .γp−3

// Cp−2

��

γp−2

// Cp−1

��

γp−1

// Cp

��

γp

// Cp+1

��

γp+1

// . . .

. . . 0 0 0 0 . . .

We are given a sequence 0→ A•f•−→ B•

g•−→ C• → 0 where f• and g• are chain maps between the chain

complexes (A•, α•), (B•β•), and (C•, γ•) satisfying a short exact sequence 0 → Apfp

−→ Bpgp−→ Cp → 0 for

each p. What we want to show is that these conditions induce a long exact sequence of cohomology groups

in the form . . .→ Hp−1(C•)δp−1

−−−→ Hp(A•)φpA−−→ Hp(B•)

φpB−−→ Hp(C•)

δp−→ Hp+1(A•)→ . . .Recall from Theorem 2.24 that the maps φ•A and φ•B are defined by φpA([x]) = [fp(x)] and φpB([y]) = [gp(y)]

for some [x] ∈ Hp(A•) and [y] ∈ Hp(B•). Since we have already proved that these maps are well-definedgroup homomorphisms, we can ignore them until we need to show that the sequence of homology groups isexact. Instead we direct our attention to the collection of maps δ•, where δp : Hp−1(C•)→ Hp(A•). Beforewe define such a map, we first show that there is a map ker(γp−1)→ ker(αp).

Let c ∈ ker(γp−1). Then c is an element of Cp−1 such that γp−1(c) = 0 ∈ Cp. Since c ∈ Cp−1 andgp−1 is surjective by Lemma 2.22, we have that c ∈ im(gp−1). Thus there exists some y ∈ Bp−1 such thatgp−1(y) = c. Since this is a commutative diagram, and we have that γp−1 ◦ gp−1(y) = 0 ∈ Cp, we have thatgp◦βp−1(y) = 0 ∈ Cp, which implies βp−1(y) ∈ ker(gp). It follows then that βp−1 ∈ im(fp), since in an exactsequence we have ker(gp) = im(fp). Thus there exists some element x ∈ Ap such that fp(x) = βp−1(y).Note that x is unique, since the function fp is injective. Now we wish to show that x ∈ ker(αp). Well,βp ◦ βp−1(y) = 0 ∈ Bp+1 because we have a chain complex (B•, β•). But recall that fp(x) = βp−1(y), so wehave that βp ◦fp(x) = 0 ∈ Bp+1. Since this is a commutative diagram, fp+1 ◦αp(x) = 0 ∈ Bp+1 and αp(x) ∈ker(fp+1). The function fp+1 is injective, so it follows that ker(fp+1) = {0} and αp(x) = 0. Therefore,x ∈ ker(αp), meaning there exists a map ker(γp−1)→ ker(αp). Importantly, this means that there exists aclass [x] ∈ Hp(Ap). This allows us to define a map δp−1 : Hp−1(C•)→ Hp(A•) by δp−1([c]) = [x]. However,recall that when we derived the element y ∈ Bp−1, we were not guaranteed that this element was unique.To check that δp−1 is well-defined, we must check that [x] is independent of the choice of y, and then showthat if [c] = [c′] ∈ Cp−1 then δp−1([c] = δp−1([c′]).

Suppose there exist two elements y, y′ ∈ Bp−1 such that gp−1(y) = gp−1(y′) = c ∈ Cp−1, where c wasthe element we assumed belonged to ker(γp−1). It follows then, since we are working in chain complexesof abelian groups, that gp−1(y) − gp−1(y′) = 0 ⇒ gp−1(y − y′) = 0 ∈ Cp−1 ⇒ y, y′ ∈ ker(gp−1). It followsby the property of a short exact sequence that ker(gp−1) = im(fp−1). Then there exists a unique elementa ∈ Ap−1 such that fp−1(a) = y − y′ ∈ Bp−1. Note that γp−1 ◦ gp−1(y) = γp−1 ◦ gp−1(y′) = 0 ∈ Cp,and since we have a commutative diagram this implies gp ◦ βp−1(y) = gp ◦ βp−1(y′) = 0 ∈ Cp. Thenβp−1(y), βp−1(y′) ∈ ker(gp) ⇒ βp−1(y), βp−1)y′) ∈ im(fp). Then there exist unique elements x, x′ ∈ Ap

such that fp(x) = βp−1(y) and fp(x′) = βp−1(y′). But note that gpβp−1(y− y′) = gp(βp−1(y)−βp−1(y′)) =gp ◦ βp−1(y)− gp ◦ βp−1(y′) = 0 ∈ Cp and βp−1(y − y′) ∈ ker(gp). We see then that βp−1(y − y′) ∈ im(fp).We already know which element of Ap maps to βp−1(y − y′), since x, x′ are unique and for the elementx − x′ ∈ Ap we have fp(x − x′) = fp(x) − fp(x′) = βp−1(y) − βp−1(y′) = βp−1(y − y′). Recall thatfp−1(a) = y − y′. Thus, βp−1 ◦ fp−1(a) = βp−1(y − y′). As we have just shown, fp(x − x′) = βp−1, andsince this is a commutative diagram, βp−1 ◦ fp−1(a) = fp ◦ αp−1(a) = βp−1(y − y′). Because fp is injective,it follows that since fp ◦ αp−1(a) = fp(x− x′) = βp−1(y − y′), we have αp−1(a) = x− x′. This means thatx− x′ ∈ im(αp−1). Recall that x and x′ both have classes [x], [x′] ∈ Hp(Ap). But since x− x′ ∈ im(αp−1),

16

Page 17: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

by definition of the quotient group Hp(Ap) = ker(αp)/im(αp−1) that [x] = [x′]. Therefore, the class [x] isindependent of our choice of y.

Next, we show that δp−1 is well-defined. Suppose [c] = [c′] ∈ Hp−1(Cp−1). Then c− c′ ∈ im(γp−2). Well,c − c′ must be equal to some element of im(γp−2), so c − c′ = γp−2(z) for some z ∈ Cp−2. This impliesc = γp−2(z) + c′. Since gp−2 is surjective, there exists some q ∈ Bp−2 such that gp−2(q) = z. Similarly,since gp−1 is surjective, there exist elements p, y ∈ Bp−1 such that gp−1(p) = γp−2(z) and gp−1(y) = c. Thisimplies that gp−1(p+ y) = gp−1(p) + gp−1(y) = γp−2(z) + c = c′. Recall that [c], [c′] ∈ Hp−1(Cp−1) impliesc, c′ ∈ ker(γp−1). Then γp−1(c) = γp−1(c′) = 0 ∈ Cp. We have then that γp−1 ◦ gp−1(y) = 0 ∈ Cp andγp−1 ◦ gp−1(p + y) = 0 ∈ Cp. Because this is a commutative diagram, it follows that gp ◦ βp−1(y) = 0 andgp ◦ βp−1(p + y) = 0. Note that βp−1(p + y) = βp−1(p) + βp−1(y), but since γp−2 ◦ gp−2(q) = γp−2 andgp−1(p) = γp−2, by the commutative diagram we have that gp−1 ◦ βp−2(q) = γy−2(z). Thus, βp−2(q) = p,and βp−1(p) = βp−1 ◦ βp−2(q) = 0 ∈ Bp. Then βp−1(p + y) = βp−1(p) + βp−1(y) = βp−1(y). We see thenthat the resulting x which maps to βp−1(y) and x′ which maps to βp−1(y+p) will be the same, which implies[x] = [x′]⇒ δp−1([c]) = δp−1([c′]). Therefore, our map δp−1 is well defined.

Note that since Hp−1(Cp−1) and Hp(Ap) are groups, we must show that δp−1 is a group homomorphism.Well, δp−1([c]) + δp−1([c′]) = [x] + [x′] = [x + x′]. What we really want to show is that δp−1([c] + [c′]) =δp−1([c+ c′]) = [x+x′]. Well, [c+ c′] ∈ Hp−1(Cp−1) implies c+ c′ ∈ ker(γp−1). Thus, γp−1(c+ c′) = 0 ∈ Cp.Since gp−1 is surjective, there exist elements y, y′ ∈ Bp−1 such that gp−1(y) = c and gp−1(y′) = c′. It followsnaturally that c + c′ = gp−1(y) + gp−1(y′) = gp−1(y + y′). Then γp−1 ◦ gp−1(y + y′) = 0 ∈ Cp, and sincethis is a commutative diagram gp ◦ βp−1(y + y′) = 0 ∈ Cp Then βp−1(y + y′) ∈ ker(gp). Note that sincec, c′ ∈ ker(γp−1) and gp−1(y) = c and gp−1(y′) = c′ it is true for the same reasons that βp−1(y), βp−1(y′) ∈ker(gp). Then βp−1(y + y′), βp−1(y), βp−1(y′) ∈ im(fp) via the exact sequence. Since f is injective, thismeans there are unique elements x, x′ ∈ Ap such that fp(x) = βp−1(y) and fp(x′) = βp−1(y′). This meansthat we also have fp(x+x′) = fp(x)+fp(x′) = βp−1(y)+βp−1(y′) = βp−1(y+y′). Since βp◦βp−1 = 0 ∈ Bp,it follows that βp ◦fp(x+x′) = βp ◦βp−1(y+y′) = 0 ∈ Bp. Using the commutative property of this diagramyields fp+1 ◦ αp(x + x′) = 0 ∈ Bp, which means αp(x + x′) ∈ ker(fp+1). Because fp+1 is injective thismeans αp(x + x′) = 0 ∈ Ap+1 and x + x′ ∈ ker(αp). Thus x + x′ has a class [x + x′] ∈ Hp(Ap), which wederived from [c+ c′]. Therefore δp−1([c+ c′]) = [x+x′] = [x] + [x′] = δp−1([c]) + δp−1[c′] and δp−1 is a grouphomomorphism.

Lastly, we show that the sequence . . . → Hp−1(C•)δp−1

−−−→ Hp(A•)φpA−−→ Hp(B•)

φpB−−→ Hp(C•)

δp−→Hp+1(A•) → . . . is exact. This requires us to show that ker(φpA) = im(δp−1), ker(φpB) = im(φpA), andker(δp) = im(φpB).

Let [a] ∈ im(δp−1). Then there exists a class [c] ∈ Hp−1(Cp−1) such that δp−1([c]) = [a] ∈ Hp(Ap). Wealso have that φpA([a]) = [fp(a)]. Recall that we have shown that fp(a) maps to some element βp−1(y) ∈ Bp,where y is an element of Bp−1 such that gp−1(y) = c. It follows that βp−1(y) = fp(a) and fp(a) ∈ im(βp−1).Since fp and βp are homomorphisms, for the identity element 0 ∈ Ap we have βp◦fp(0) = βp(0) = 0 ∈ Bp+1,and fp(0) ∈ ker(βp). Therefore fp(0) = 0 ∈ Bp has a class [0] ∈ Hp(Bp). But note that fp(a) − 0 =fp(a) ∈ im(βp−1), so we have that [0] = [fp(a)] = φpA([a]). Then [a] ∈ ker(φpA) and im(δp−1) ⊂ ker(φpA).Now we show equality. Let [x] ∈ ker(φpA). Then φpA([x]) = [fp(x)] = [0] ∈ Hp(Bp). Since φpA is a grouphomomorphism, φpA([0]) = [fp(0)] = [0]. This implies fp(x) = fp(0) = 0, and since f is injective, x = 0 ∈ Ap.Since δp−1 is a homomorphism, we know that for [0] ∈ Hp−1(Cp−1) we have δp−1([0]) = [0] = [x] ∈ Hp(Ap).Thus [x] ∈ im(δp−1) and ker(φpA) = im(δp−1)

Let [b] ∈ im(φpA). Then φpA([a]) = [fp(a)] = [b] for some [a] ∈ Hp(Ap). This implies fp(a) = b, whichmeans b ∈ im(fp). Then b ∈ ker(gp) = im(fp). Therefore, φpB([b]) = [gp(b)] = [0] ∈ Hp(Cp). Thus[b] ∈ ker(φpB) and im(φpA) ⊂ ker(φpB). Now let [b] ∈ ker(φpB). Well, φpB([b]) = [gp(b)] = [0], which impliesgp(b) = 0. Then b ∈ ker(gp)⇒ b ∈ im(fp). Since b ∈ im(fp), there exists some a ∈ Ap such that fp(a) = b.We already know [b] is a class, so it follows that [b] = [fp(a)] = φpA([a]), which means [b] ∈ im(φpA). Thereforeker(φpB) = im(φpA).

Let [c] ∈ im(φpB). There exists some element [b] ∈ Hp(Bp) such that φpB [b] = [gp(b)][c]. Note that [b]belongs to Hp(Bp) and thus b ∈ ker(βp). Then we have gp(b) = c and βp(b) = 0 ∈ Bp+1. fp+1 is a grouphomomorphism, so 0 is in its image, and since fp+1 is injective, the only element that can map to 0 is theelement 0 ∈ Ap+1. Thus we can map [c] to the class [0] (recall that we showed this is the class [c] maps toregardless of our choice for b). Then δp([c]) = [0] ∈ Hp+1Ap+1, [c] ∈ ker(δp), and im(φpB) ⊂ ker(δp). Suppose

17

Page 18: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

we have some [x] ∈ ker(δp). Well, since δp([x]) = [0], we have that 0 ∈ Ap+1. But recall that this maps tosome βp(y) ∈ Bp+1, where y is an element of Bp such that gp(y) = x. But fp+1 is a group homomorphism,so fp+1(0) = βp(y) = 0 ∈ Bp+1. Therefore, y ∈ ker(βp) and [y] ∈ Hp(Bp). Then φpB([y]) = [gp(y)] = [x]and [x] ∈ im(φpB). Therefore, ker(δp) = im(φpB) and the sequence of homology groups is exact. �

Homology groups, at first glance, seem tangential to topology. To compute homology groups, the onlyrequirement is that we have a chain complex, which consist not of topological data, but algebraic structures.To define Cech cohomology, we need a way to take a topological space X and generate abelian groups fromopen sets of X. To understand this idea, we need to understand some basic ideas of category theory.

3. Category Theory

Category theory is the ”big picture” of mathematics. In category theory, entire branches of mathematicsare thought of as categories. In this light, we can attempt to understand ”maps” and similarities betweendifferent categories. We begin our discussion of category theory by defining categories and looking at someexamples of them. Then we will return to the idea of ”mapping” between categories.

Definition 3.1. (Categories) A category C is a collection of objects and morphisms having the followingproperties:

1. Each morphism f : X → Y has a domain object and codomain object in C2. Each object X of C has an identity morphism idX : X → X, which satisfies for any morphismf : W → X and g : X → Y the condition that idX ◦ f = f and g ◦ idX = g.

3. For any objects X,Y, Z of C and morphisms f, g of C where f : X → Y and g : Y → Z, we haveg◦f : X → Z. That is, if the codomain of f is equal to the domain of g, then there exists a compositemorphism from the domain of f to the codomain of g

4. If f : A→ B, g : B → C, and h : C → D, then h ◦ (g ◦ f) = (h ◦ g) ◦ f .

(Riehl, 3).

Example 3.2. (Category of groups) Consider the collection of objects C of groups and their homomorphisms.Well, we know then that each morphism in C has a domain and codomain of objects in C, otherwise it isnot a group homomorphism!

Next we see that each object G of C has an identity morphism. This is just a matter of checking ifidG : G → G is a homomorphism. Well, if the group G has the binary operation µ, we have that for anyg, h ∈ G, µ(idG(g), idG(h)) = µ(g, h) = idG(µ(g, h)). Thus, idG is itself a homomorphism for any group G.Also, for group homomorpisms f : A → G and g : G → B, we have that idG ◦ f(a) = idG(f(a)) = f(a) forall a ∈ A and g ◦ idG(x) = g(x) for all x ∈ G. Therefore idG ◦ f = f and g ◦ idG = g.

Now we check that for any objects X,Y, Z of C with homomorphisms f : X → Y and g : Y → Z wehave the composite morphism g ◦ f : X → Z in C. We will assume that the binary operations on X,Y,and Z are µ, ν, and ρ respectively. Then for any x, x′ ∈ X we have g ◦ f(µ(x, x′)) = g ◦ ν(f(x), f(x′)) =ρ(g ◦ f(x), g ◦ f(x′)), which satisfies the requirements for a group homomorphism.

Lastly, we show that for group homomorphisms f : A → B, g : B → C, and h : C → D we cancompose the functions associatively. Well, h ◦ (g ◦ f) = h ◦ (g(f(a))) = h ◦ (g(f(a))) = h(g(f(a))), and(h ◦ g) ◦ f(a) = h(g ◦ f(a)) = h(g(f(a))) for all a ∈ A. It follows that h ◦ (g ◦ f) = (h ◦ g) ◦ f . Therefore, thecollection of groups and their homomorphisms, C, is a category.

Example 3.3. Category of R-modules Consider the collection C of all R-modules and their homomor-phisms. With R-module homomorphisms as the designated morphisms for C, we know immediately thateach morphism has a domain and codomain in C.

Now we check that the identity map on an R-module A is itself an R-module homomorphism. Let R bethe ring of the abelian group A and let a, b ∈ A and c ∈ R. Then for the identity map idA : A→ A we haveidA(a+b) = a+b = idA(a)+idA(b) and idA(c·a) = c·a = c·idA(a). For R-module homomorphisms f : B → Aand g : A→ C we have (idA ◦ f)(b) = idA(f(b)) = f(b) for all b ∈ B and (g ◦ idA)(a) = g(idA(a)) = g(a) forall a ∈ A. Then idA ◦ f = f and g ◦ idA = g.

Next we check that for R-modules X,Y, Z with homomorphisms f : X → Y and g : Y → Z we have thecomposite morphism g ◦ f : X → Z. Let R be the ring of the abelian group Z and let x, x′ ∈ X and r ∈ R.Then g ◦ f(x + x′) = g(f(x) + f(x′) = g ◦ f(x) + g ◦ f(x′) and g ◦ f(r · x) = g(r · f(x)) = r · (g ◦ f(x)) asdesired.

18

Page 19: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Finally, we check that the composition of R-module homomorphisms is associative. Let f : A → B,g : B → C, and h : C → D. Then h ◦ (g ◦ f)(a) = h ◦ (g(f(a)) = h(g(f(a))) and (h ◦ g) ◦ f(a) = h(g ◦ f(a)) =h(g(f(a))) for all a ∈ A. Therefore, we have h ◦ (g ◦ f) = (h ◦ g) ◦ f and the collection of R-modules andtheir homomorphisms is a category.

Definition 3.4. (Functors) Let C and D be categories. A functor is a map F : C → D such that for eachobject X of C we have an object FX in D and for each morphism f : c → c′ of C we have a morphismFf : Fc → Fc′ of D satisfying

(1.) Fidc = idFc

(2.) For a morphism g : d→ d′ of C we have Fg◦f = Fg ◦ Ff .

(Riehl, 13).

Example 3.5. (Forgetful functors) In category theory, a forgetful functor is a functor in which structure ofthe domain of the functor is ”forgotten,” or removed in the codomain. One such functor would be a mapF : ModR → Gr, where ModR is the category of R-modules and Gr is the category of groups. We definethis functor by taking an R-module and ”forgetting” the ring and its operation. This leaves us with a group,which of course would be considered an object in Gr. We now show that this is in fact a functor.

Let A be an object of ModR. If we apply the functor F to the object A, we forget the ring B of A as

well as the binary operation B ×A ·−→ A. Then the object FA is an abelian group, which by definition is anobejct of Gr.

Let f : A → A′ of be a morphism of ModR. After applying FA and FA′ , we can create a morphismFf : FA → FA′ of Gr. Recall that an R-module homomorphism already satisfies the property for a grouphomomorphism, but with the additional requirement that f(r · a) = r · f(a) for an element r of the ring andan element a of the abelian group. To create a morphism Ff , we simply take the R-module homomorphismf and forget the latter requirement while maintaining the group homomorphism requirement. From this wesee that there is an object FA of Gr for every object A of ModR, as well as a morphism Ff of Gr for everymorphism f of ModR. Consider FidR for some object R of ModR. It follows that FidR will be the identityof R, but as a group homomorphism. Then FidR acts as the identity on the group FR and FidR = idFR

. Foran R-module homomorphisms f : A→ B and g : B → C, we have Fg◦f , which acts as the composition g ◦ fas a group homomorphism. It follows that Fg◦f = Fg ◦ Ff , and therefore F is a functor.

A similar forgetful functor would be Y : Gr → Set, where Gr is the category of groups and Set is thecategory of sets. Y is said to be a forgetful functor since the binary operation on an object of Gr is ignoredfor the sake of considering the group as a set. Since proving Y is a functor would be nearly identical to theproof for F , we assume for brevity that this is the case.

Example 3.6. (The homology functor) Consider the category Ch, whose objects are chain complexesand morphisms are chain maps. For brevity we assume that Ch is indeed a category, though we couldcheck this easily, similar to the categories we discussed in Examples 3.2 and 3.3. We can create a functorfrom Ch to the category of groups, Gr, with a functor F : Ch → Gr such that FC• is the homologygroup H•(C•). It follows then that each chain complex C• has an object H•(C•) in Gr, since we candefine homology groups for any chain complex. For each chain map f : C• → D• we have a morphismFf : FC• → FD• which is given by the induced map on homology groups that we defined in Theorem 2.26.For the identity chain map idC on a chain complex C, we have FidC , which is the induced identity mapon homology φ• : H•(C•) → H•(C•). For chain maps f• : C• → D• and g• : D• → E•, we have themorphism Fg◦f , which is a homology map φ• : H•(C•) → H•(E•) given by φp([c]) = [(g ◦ f)(c)]. We alsohave Ff acting as the map H•(C•) → H•(D•) and Fg is the map H•(D•) → H•(E•). It follows that(Fg ◦ Ff )([c]) = Fg(Ff ([c])) = Fg([f(c)]) = [g(f(c))] = [(g ◦ f)(c)] = phi•([c]). Therefore, F is a functor.

The functors in Examples 3.5 and 3.6 are useful, but recall that our goal was to map from the category oftopological spaces (one sees that if we have the morphisms be continuous functions, this is indeed a category)to the category of groups. For Cech cohomology, we can look at functors which satisfy some other usefulproperties, known as sheaves. We turn to sheaves in Section 4, but for now we consider another concept incategory theory which will help us define the Cech cohomology.

3.1. Direct Limit.

Definition 3.7. (Direct limit) A collection of data A is a directed system if it consists of the following data:19

Page 20: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

1. A directed set I which is equipped with a reflexive and transitive binary operation ≤ such that eachelement i ∈ I has a lower bound.

2. A collection of groups {Ai}i∈I which is indexed by the directed set I3. A collection of group homomorphisms fij : Aj → Ai satisfying fij ◦ fjk = fik for all i ≤ j ≤ k andfii = idAi

The direct limit of a directed system, denoted by lim(A) = limi∈I Ai is given by

limi∈I

Ai =∐i∈I

Ai/ ∼

where ∼ is a relation between Ai and Aj defined by Ai ∼ Aj if there exists a lower bound k for {i, j} suchthat fki(xi) = fkj(xj) for some xi ∈ Ai and xj ∈ Aj .

The idea behind the direct limit is that we take the category theory equivalent of the disjoint union ofgroups in A, modulo a relation that relates the pairs of groups which have lower bounds satisfying a certaincondition under the morphisms of A. Essentially, we take ”all” of the groups in A and identify all of theelements satisfying the relation ∼. Often there are groups at the ”tail” which are unchanged by any fij .These elements are called stable groups, and are isomorphic to the limit of the directed system.

To truly define Cech cohomology, we must make use of direct limits, including the previously mentionedproperty of stable groups. However, the methods required to properly use these tools are unknown to theauthor, as we shall discuss in further detail in Section 5. For now, we turn our attention to the concept ofsheaves: functors which make the Cech cohomology process possible.

4. Sheaves

Cech cohomology is computed on a topological space, but the cohomology groups require a chain complexof algebraic structures such as groups or modules to compute. The Cech Complex uses a sheaf to constructthese algebraic structures.

Definition 4.1. (Presheaves and sheaves) Let X be a topological space. A presheaf F on X is a collectionof sets satisfying the following properties:

1. For every open set U ⊂ X we have a set F (U). The set F (∅) is assumed to contain only one element.2. For every inclusion of open sets V ⊂ U , we have a map ρV,U : F (U) → F (V ) called the restriction

map, which satisfies for an inclusion W ⊂ V ⊂ U ρW,U = ρW,V ◦ ρV,UWe say F is a sheaf if in addition to satisfying the first two properties we have for every open set V of X,every open coverW = {Wi}i∈I of V , and every family of sets {si}i∈I where si ∈ F (Wi) and ρWi∩Wj ,Wi(si) =ρWi∩Wj ,Wj (sj), there exists a unique s ∈ F (V ) such that ρWi,V (s) = si (Brylinski, 1-2).

One sees that presheaves are in fact functors. The category of a presheaf’s domain is determined by themorphisms of open cover objects Ui ↪→ Uj . For our discussions, we assume our presheaves take inputs fromthe category of topological spaces and land in the category of groups. If F is a presheaf over a topologicalspace X, we have that for an open set U ⊂ X, which is itself an object in the category of topological spaces,has an object F (U) in the category of groups. For an inclusion V ⊂ U of open sets, we have that the inclusionmap (which is by definition continuous, and therefore a morphism) has a map Ff = ρV,U : F (U) → F (V ).Thus, by Definition 3.4, a presheaf F is a functor. In the following examples, we look at three differentpresheaves.

Example 4.2. (The sheaf of continuous functions)Let X be a topological space and FX be the collection of sets of continuous functions from X to R.

We can show that this is a sheaf. Naturally, then, for an open set U ⊂ X we have a set F (U) = {U →R|f is continuous}. If we have an inclusion V ⊂ U of open sets of X, we can create map ρV,U : F (U)→ F (V )by taking a continuous function f : U → R and restricting it to V by f |V : V → R which we denote byρV,U (f). Note that the restriction map f |V is itself continuous. For each v ∈ V and each open neighborhoodA of f |V (x) we have an open set B of U such that f(B) ⊂ A, since f is continuous. But since V ⊂ U , the setB∩V is open in V . Thus f(B∩V ) ⊂ A and f |V is continuous at each point v ∈ V . For a function, f : X → Yrestricted to some set A ⊂ X, we have that the restriction of f to A, denoted by f |A := (A× Y ) ∩ f , wheref ⊂ X × Y . Necessarily, then, for an inclusion of open sets W ⊂ V ⊂ U with a continuous function f : UR,

20

Page 21: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

we have that ρW,V ◦ρV,U (f) = ρW,V (f |V ) = (f |V )|W = (W ×R)∩ ((V ×R)∩f) = ((W ∩V )× (R∩R))∩f =((W ∩ V )× R) ∩ f = (W × R) ∩ f = f |W = ρW,U . We see then, that FX is a presheaf.

Let U be an open set of X, V = {Vi}i∈I be an open cover of U , and {si}i∈I be a family of sets wheresi ∈ F (Vi) and ρVi∩Vj ,Vi

(si) = ρVi∩Vj ,Vj(sj) for all i, j ∈ I. We wish to show that there is a unique s ∈ F (U)

such that ρVi,U (s) = si for all i ∈ I. Well, since each si is a continuous function f : Vi → R, and thatsi|Vi∩Vj = sj |Vi∩Vj for each i, j, we can define a continuous function s : U → R as a piecewise function

s(u) :={si(u) u ∈ Vi . We know this function will always be defined, since any u ∈ U must be contained

in an open set Vi of the cover V, and the corresponding si is continuous, with si and sj agreeing on theintersection Vi ∩ Vj . It follows then that for any u ∈ U and any open neighborhood A containing s(u) wehave that u ∈ Vi for some i ∈ I. Then s(u) = si(u), which means there exists some open neighborhoodB ⊂ Vi such that si(B) ⊂ A. Since B is open on Vi and Vi ⊂ U , it follows that B is also open on U . Thenthat si(B) = s(B) ⊂ A, which implies s is continuous at each point u ∈ U . Therefore s ∈ F (U). It followsby our definition of s that ρVi,U (s) = s|Vi = si for all i ∈ I.

Lastly, we show that s is unique. Suppose that there was another function t ∈ F (U) such that ρVi,U (t) =si for all i ∈ I. Then for any u ∈ U , which must also be contained in some Vi ∈ V, we have thatt(u) = t|Vi

(u) = ρVi,U ◦ t(u) = si(u). Based on our definition of s, we have that s(u) = si(u) = t(u).Therefore, s = t, and s is unique. Thus we have that the collection of sets FX is a sheaf on X. The sheaf isusually denoted by C0(X), and there are similar sheaves such as C1(X) = {f : X → R|f is differentiable},C2(X) = {f : X → R|f has continuous second derivatives}, and so on.

Example 4.3. (The presheaf of constant functions is not a sheaf) Let X be a topological space. We cancreate a presheaf FX on X by the following: FX := {f : X → R|f is constant}. It follows immediatelythat for an open set U ⊂ X we have a set F (U) = {f : U → R|f is constant}. For an inclusion of opensets V ⊂ U , we define our restriction map ρV,U : F (U) → F (V ) by ρV,U (f) = f |V , since we know that aconstant function on U will have the same value when restricted to the subset V . For an inclusion of opensets W ⊂ V ⊂ U with a constant function f : U → R, we have ρW,V ◦ ρV,U (f) = ρW,V (f |V ) = (f |V )|W =(W × R) ∩ ((V × R) ∩ f) = ((W ∩ V ) × R) ∩ f = (W × R) ∩ f = f |W = ρW,U . We see then, that FX is apresheaf. However, FX is not a sheaf, as we now show.

Consider the case where X is not a connected space. Then we have a disjoint pair of open sets U1, U2 ⊂ Xsuch that U1 ∪ U2 = X. Note that this implies U1 and U2 form an open cover of the open set X. Define aconstant function s1 ∈ F (U1) by s1(u1) =

√2 and a constant function s2 ∈ F (U2) by s2(u2) =

√3. This

yields a family of sets {s1, s2} where si ∈ F (Ui) for each i ∈ {1, 2}. Since U1 ∩ U2 = ∅, it follows thatρU1∩U2,U1(s1) = ρU1∩U2,U2(s2), since it is vacuously true that s1|∅ = s2|∅. Recall that for FX to be a sheaf, itmust guarantee under these conditions the existence of a constant function s ∈ F (X) such that ρU1,X(s) = s1and ρU2,X(s) = s2. But it is impossible for such a function to exist, since s must be constant and s1 and s2are constant functions of different values. Therefore, while FX is a presheaf, it is not a sheaf.

Example 4.4. (The sheaf of locally constant functions) The most important sheaf in our discussion of Cechcohomology will be the collection of all locally constant functions from a topological space X to the realnumbers. This set, which will denote by RX is defined by RX := {f : X → R|f is locally constant}. Foran open set U ⊂ X, we have a collection of sets RX(U) = {f : U → R|f is locally constant}, and for aninclusion of open sets V ⊂ U we define the restriction map ρV,U : F (U) → F (V ) by ρV,U (f) = f |V . Therestriction map ρ will yield yet another locally constant function, since V is just a subset of U , and thereforeany element v ∈ V is an element of U , which means there exists an open neighborhood W of v such that fis constant for all elements of W . Thus ρV,U (f) will be an element of R(V ). For an inclusion of open setsW ⊂ V ⊂ U with a locally constant function f : U → R, we have ρW,V ◦ ρV,U (f) = ρW,V (f |V ) = (f |V )|W =(W ×R)∩((V ×R)∩f) = ((W ∩V )×R)∩f = (W ×R)∩f = f |W = ρW,U . Then R satisfies the requirementsfor a presheaf. Now we show that R is a sheaf, unlike the special case of constant functions, which onlyforms a presheaf.

Suppose that for an open set U ⊂ X we have an open cover V = {Vi}i∈I and family of sets {si}i∈I wheresi ∈ R(Vi) and ρVi∩Vj ,Vi

(si) = ρVi∩Vj ,Vj(sj) for all i, j ∈ I. We need to show that there exists a unique

s ∈ R(U) such that ρVi,U (s) = si for all i ∈ I. We can define s as a piecewise function, just as we did in

Example 4.2. s(u) :={si(u) u ∈ Vi will itself be a locally constant function, as we now show. Let u ∈ U .

It follows then that u ∈ Vi for some i ∈ I. Then s(u) = si(u). Since si is locally constant, there exists21

Page 22: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

some open neighborhood W of u such that si(W ) is constant. Since W is an open subset of Vi, and Vi is anopen subset of U , si(W ) = s(W ) and W is an open subset of U . Thus there exists for each u ∈ U an openneighborhood W of u such that s is constant, and the function s is locally constant as we desired.

It follows naturally that ρVi,U (s) = s|Vi= si for all i ∈ I. Such a function exists because our only

requirement is that s be locally constant. This means that even if X is disjoint, as in the counterexample forExample 4.3, s can take different values and still belong to the set R(U). Lastly, suppose that there existsa locally constant function t ∈ R(U) satisfying ρVi,U (t) = si for all i ∈ I. Well, for some u ∈ U , which mustalso be contained in an open set Vi ∈ V, we have that t(u) = t|Vi

(u) = ρVi,U ◦ t(u) = si(u). But based on ourdefinition of s we also have s(u) = si(u) = t(u). Thus, s is unique, and we have shown that the collection Rof locally constant functions from the topological space X to the real numbers is a sheaf.

Recall from Example 2.13 that locally constant functions from a topological space to the real numbersform a vector space. It follows then that the sheaf RX over a topological space X is a functor which takestopological spaces and maps them to R-modules. We have also discussed that locally constant functionsdetermine the structure of a topological space, and as such they will be the most beneficial sheaf for us touse. Now that we understand sheaves and presheaves, we may now formally define Cech cohomology.

5. Cech cohomology

The main idea of Cech cohomology is forming a chain complex from a topological space. If we take anopen cover of a topological space, and we apply a sheaf of abelian groups to each set of the cover, we cangenerate a special kind of chain complex. We begin defining Cech cohomology by defining this chain complexand its homomorphisms.

Definition 5.1. (The Cech complex) Let A be a presheaf of abelian groups over a topological space X withopen cover U = {Ui}i∈I . A Cech complex is generated by the sections of A applied to finite intersectionsof elements of U . Let Ui0,...,ip denote the p-fold intersection of open sets of U . That is, for (i0, . . . , ip) ∈ I,Ui0,...,ip = Ui0 ∩ . . . ∩ Uip , where each Ui ∈ U . The p-th set in the Cech complex is denoted by

Cp(U , A) =∐

i0,...,ip

A(Ui0,...,ip)

Elements of Cp(U , A) are families or ”sequences” of elements α = αi0,...,ip ∈ A(Ui0,...,ip). The homomor-phisms in the Cech complex are given by

δp(α)i0,...,ip+1 =

p+1∑j=0

(−1)j(αi0,...,ij−1,ij+1,...,ip+1)|Ui0,...,ip+1

(Brylinski, 25).

Example 5.2. (For the homomorphism of the Cech complex, δp+1(δp) = 0)For the p-th set in a Cech complex, we have that the homomorphism δp : Cp → Cp+1 is given by

δp(α)i0,...,ip =

p+1∑j=0

(−1)j(αi0,...,ij ,...,ip+1)|Ui0,...,ip+1

,

where α is a family of sets in the sheaf A applied to the p-fold intersection Ui0,...,ip . Then

δp+1 ◦ δp(α) = δp+1(

p+1∑j=0

(−1)j(αi0,...,ij ,...,ip+1)

=

p+2∑k=0

(−1)k(

p+1∑j=0

(−1)j(αi0,...,ij ,...,ip+1))i0,...,ik,...,ip+2

=

p+2∑k=0

p+1∑j=0

(−1)j+k(αi0,...,ij ...,ip+1)i0,...,ik,...,ip+2

22

Page 23: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) Our topological space, S1

(b) S1 with ε-balls

Figure 4. S1 on its own (A) and with ε-balls (B).

Note that this means we cannot have j = k, as in this case we cannot remove the k-th index if we havealready removed the j-th index. Then either j < k or k < j. Adjusting our summations to account for j 6= kyields

δp+1(δp) =

p+2∑j<k

(−1)j+k(αi0,...,ij ,...,ik,...,ip+2) +

p+2∑k<j

(−1)j+k(αi0,...,ik,...,ij ,...,ip+2)

But note that regardless of whether j < k or k < j, we still remove the j-th index first. However, the casewhere j < k affects the indexing set differently from the case when k < j. When k < j, removing j first hasno influence on our removal of the k-th index. But when j < k, every index greater than j is ”shifted to theleft,” since we remove the j-th index first, and thus the k-th index then becomes what was originally thek + 1-th item in the indexing set.

For example, we see that k = 0, j = 2 corresponds to

(−1)2+0(αi1,i3,...,ip+2) = αi1,i3,...,ip+2

but j = 0, k = 1 corresponds to

(−1)0+1(αi1,i3,...,ip+2) = −αi1,i3,...,ip+2

These terms will of course cancel out when added together. However, before we can generalize these results,we must adjust our summations yet again, as the current notation does not allow us to remove j = i0 andk = i1. To adjust this, we simply allow for j ≤ k. It follows that, under this notation, each term will appearin each sum, but with alternate signs. Thus

δp+1(δp) =

p+2∑j≤k

(−1)j+k(αio,...,ij ,...,ik,...,ip+2) +

p+2∑k<j

(−1)j+k(αi0,...,ik,...,ij ,...,ip+2) = 0

Once we have a Cech complex, we may compute the cohomology groups for our topological space. Inpractice, computing the Cech cohomology can be done through linear algebra. For the next few examples,we compute the Cech cohomology for topological spaces and check the results against our intuition.

Example 5.3 (Cech cohomology of the circle, S1). Suppose we have a circle in R2. When we compute theCech cohomology of a shape, we have a distinct advantage as opposed to when we work with some randomdata set. The advantage is that when taking the Cech cohomology of a shape, we can intuitively predictwhat our cohomology groups will be. Looking at Figure 1A, we can see that there is one cluster of points:the points on the edge of the circle. We also see that there is a loop here as well - the circle itself. Theseobservations correspond to H0 = 1 and H1 = 1 respectively, and we can check our computations againstthem.

We can cover S1 with four ε-balls in R2, as seen in Figure 1B. Because the ε-balls in this example are alsocircles, they have been colored to prevent confusion. We could use the ε-balls to determine intersections, butwhen applicable, it is always better to use the actual cover of the space to determine intersections. For S1,

23

Page 24: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Figure 5. The cover for S1 along with all of the intersections.

we can take our four ε-balls and intersect them with S1 and turn our ε-spheres into four arcs. These arcs,shown in Figure 2, make it easier to determine intersections. Any overlapping arcs are said to intersect oneanother.

Although we can ignore most of the theory behind Cech cohomology when applying it practically, tofamiliarize the theory, this first exercise in Cech cohomology will outline how we apply the formal definitionsto our problem. Exercises 5.4 and 5.5, however, will focus on computations instead.

Moving on to the Cech Complex, we see from Figure 2 that we have used four open sets to cover S1, andeach pair of sets intersects for a total of four intersections. Since we have no higher intersections, we knowthat for p > 1, Cp = 0 in our Cech Complex. Since we have four open sets, we know that

C0 =∏

i∈{1,2,3,4}

R(Ui) =⊕

i∈{1,2,3,4}

R(Ui) = R(U1)⊕R(U2)⊕R(U3)⊕R(U4)

where R(Ui) is the module of locally constant functions from Ui to R. Similarly,

C1 =∏

i,j∈{1,2,3,4}

R(Uij)

where Uij represents the intersection Ui ∩Uj and i < j. Thus, our Cech Complex is defined by C• := 0δ−1

−−→C0 δ0−→ C1 δ1−→ 0. Note that δ−1 and δ1 are not necessary to define in this scenario (the former is in fact nevernecessary to define). As for the basis elements of our sets, elements of C0 are in the form (f1, f2, f3, f4) andelements of C1 are represented by (f12, f13, f23, f24). Note that while the product C1 is not ordered, we donot need to consider f11, f22, and so on. We can ignore the functions fii since they belong to the intersectionUii = Ui and thus have already been accounted for in C0. To compute our cohomology groups, we only need|im(δ−1)| and |ker(δ1)|, both of which we can see are 0.

Before we can compute the cohomology groups for S1, we need to define δ0 : R4 → R4 such that

δ0 :

f1f2f3f4

7−→f12f13f23f34

. Recall that this is accomplished by defining on each nonempty double intersection

Uij

δ0(f1, f2, f3, f4)Uij= fj − fi

24

Page 25: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) The topological space S1 ∧ S1

(b) S1 ∧ S1 covered by ε-balls

Figure 6. S1 ∧ S1 on its own (A) and with ε-balls (B).

In practice, this corresponds to the matrix δ0 =

−1 1 0 0−1 0 1 00 −1 1 00 0 −1 0

. To find |im(δ0)|, we reduce the

matrix to

1 0 0 −10 1 0 −10 0 1 −10 0 0 0

, which tells us that |im(δ0)| = rank(δ0) = 3. It follows, then, that |ker(δ0)| =

|R4| − |im(δ0)| = 4− 3 = 1. Now we may begin computing the cohomology groups for S1.

Starting with H0, we have that H0(S1,U) = ker(δ0)/im(δ−1) ∼= R|ker(δ0)|−|im(δ−1)| = R1−0 = R1. Thus,

we say H0 = 1, just as we predicted. Similarly, H1(S1,U) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| = R4−3 =R1. We have that H1 = 1, which again lines up with our intuition.

Note that in the previous example, we did not use a definite ε for the radius of our ε-balls. For a shape,we need not worry about the size of ε, but rather how many ε-balls we use. If, for instance, we tried to coverS1 with just one ε-ball, our cover for S1 would be a circle. As discussed in Example 1.20, circles are notcontractible. Our Cech Complex will likely be different if we use a different ε, though, as we may need moreε-balls if our ε is smaller; we may have higher intersections if our ε is larger. Also note that we showed theCech cohomology for any circle. When we are working with spaces, the cohomology groups will be the sameregardless of its size. A circle with a radius of 100 meters will have the same Cech cohomology of a circlewith a radius of 1 meter.

Example 5.4. (Cech cohomology of wedged circles) Consider the set S1 ∧ S1, which consists of two circlestangent to each other as pictured in Figure 3A. Computing the Cech cohomology of this set requires us tofirst generate an open cover, which we obtain by taking an open cover of a superset (R2) and intersectingit with S1 ∧ S1, as depicted in Figures 3B and 4 respectively. Notice that there is an open set U3 centeredat the point of tangency for S1 ∧ S1 which covers a significant portion of both circles. The shape formedby U3, as seen in Figure 4, is still contractible, and ensures that elements of S1 ∧ S1 are covered with theoptimal number of open sets to reduce calculation. Intuitively, we can expect H0 = 1, since the set S1 ∧ S1

is connected via the point of tangency. We can also predict that H1 = 1, because even though we have twoloops, they are connected at a single point. For any p > 1, we can expect Hp = 0, since there are evidentlyno higher dimensional loops or components.

Now to define our Cech Complex. Figure 4 shows us that we have used 5 open sets to cover S1 ∧ S1.Our arrangement of the 5 open sets yielded 6 double intersections, with no higher intersections. Recall fromExample 5.3 that this means for p > 1, we have Cp = {0}. Defining the nontrivial R-modules yields

C0 =∏

i∈{1,2,3,4,5}

R(Ui) =⊕

i∈{1,2,3,4,5}

R(Ui)

C1 =∏

i,j∈{1,2,3,4,5,6}

R(Uij) =⊕

i,j∈{1,2,3,4,5,6}

R(Uij)

25

Page 26: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Figure 7. The open cover for S1 ∧ S1

Therefore our Cech Complex is given by C•(S1 ∧ S1,U) = (0δp−1

−−−→ C0 δ0−→ C1 δ1−→ 0), where U is the opencover {Ui}i∈1,2,3,4,5. Just as with Example 5.3, there is no need to define δ−1 and δ1, since we already knowthat |im(δ−1)| = 0 and can see easily that |ker(δ1)| = |C1| = 6, which is the only information we need toknow regarding those maps. We still need a map

δ0 :

f1f2f3f4f5

7→f12f13f23f34f35f45

,

where (f1, f2, f3, f4, f5) is a basis for C0 and (f12, f13, f23, f34, f35, f45) is a basis for C1. Based on ourdefinition of δp, the desired map is

δ0(f1, f2, f3, f4, f5)ij =

1∑k=0

(−1)fi,k,j |Uij = fj − fi

where ij is the ij-th component of an element in C1. This corresponds to the matrix δ0 =

−1 1 0 0 0−1 0 1 0 00 −1 1 0 00 0 −1 1 00 0 −1 0 10 0 0 −1 1

After Gauss-Jordan reduction, δ0 becomes

1 0 0 0 −10 1 0 0 −10 0 1 0 −10 0 0 1 −10 0 0 0 00 0 0 0 0

, which implies |im(δ0)| = rank(δ0) = 4.

Thus |ker(δ0)| = |C0| − |im(δ0)| = 5− 4 = 1.Now we may begin computing the cohomology groups. Just as we predicted,

H0(U , R) = ker(δ0)/im(δ−1 ∼= R|ker(δ0)|−|im(δ−1)| = R1−0 = R1

Also in line with our intuition, we have

H1(U , R) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| = R6−4 = R2

Example 5.5. (Cech cohomology of the torus) Consider the torus, T 2 := S1 × S1 as a subset of R3. Wesee that the torus is one connected piece of data, and that it has two loops: the loop going ”sideways”across the torus, and the loop running ”vertically” around the ring of the torus. Furthermore, there is theobvious 3-dimensional loop in the center of the torus. From these observations we can expect H0 = 1,H1 = 2, and H2 = 1, with higher degree homology groups yielding 0. Since open sets of the torus can bedifficult to visualize we can use the fact that T 2 and its topology come from the quotient topology of themap q : I2 → T 2, where I = [0, 1]. We do this by identifying all the elements of I2 satisfying (x, 0) ∼ (x, 1)

26

Page 27: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Figure 8. The open cover of I2, which is also an open cover of T 2

and (0, y) ∼ (1, y). It follows that any open cover of I2 will have an open cover on T 2. Figure 9 shows anopen cover of I2.

From the figure, we see that we have 9 open sets, which means

C0 =∏

i∈1,...,9R(Ui)

has a basis of 9 elements. Our open sets yield 27 intersections, and so

C1 =∏

i,j∈1,...,27R(Uij)

This time, we have several three-fold intersections. From Figure 8, we see there are 18 triple intersections,and so

C2 =∏

i,j,k∈1,...,18

R(Uijk)

Thus our Cech complex is

0δ−1

−−→ C0 δ0−→ C1 δ1−→ C2 δ2−→ 027

Page 28: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

It follows that our matrix δ0 will map

f1f2f3f4f5f6f7f8f9

7→

f12f13f14f15f23f24f25f26f27f28f29f34f35f37f38f45f46f47f48f56f58f59f67f69f78f79f89

28

Page 29: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

which corresponds to the matrix

δ0 :=

f1 f2 f3 f4 f5 f6 f7 f8 f9

−1 1 0 0 0 0 0 0 0 f12−1 0 1 0 0 0 0 0 0 f13−1 0 0 1 0 0 0 0 0 f14−1 0 0 0 1 0 0 0 0 f150 −1 1 0 0 0 0 0 0 f230 −1 0 1 0 0 0 0 0 f240 −1 0 0 1 0 0 0 0 f250 −1 0 0 0 1 0 0 0 f260 −1 0 0 0 0 1 0 0 f270 −1 0 0 0 0 0 1 0 f280 −1 0 0 0 0 0 0 1 f290 0 −1 1 0 0 0 0 0 f340 0 −1 0 1 0 0 0 0 f350 0 −1 0 0 0 1 0 0 f370 0 −1 0 0 0 0 1 0 f380 0 0 −1 1 0 0 0 0 f450 0 0 −1 0 1 0 0 0 f460 0 0 −1 0 0 1 0 0 f470 0 0 −1 0 0 0 1 0 f480 0 0 0 −1 1 0 0 0 f560 0 0 0 −1 0 0 1 0 f580 0 0 0 −1 0 0 0 1 f590 0 0 0 0 −1 1 0 0 f670 0 0 0 0 −1 0 0 1 f690 0 0 0 0 0 −1 1 0 f780 0 0 0 0 0 −1 0 1 f790 0 0 0 0 0 0 −1 1 f89

29

Page 30: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

The matrix δ0 reduces to

f1 f2 f3 f4 f5 f6 f7 f8 f9

1 0 0 0 0 0 0 0 −1 f120 1 0 0 0 0 0 0 −1 f130 0 1 0 0 0 0 0 −1 f140 0 0 1 0 0 0 0 −1 f150 0 0 0 1 0 0 0 −1 f230 0 0 0 0 1 0 0 −1 f240 0 0 0 0 0 1 0 −1 f250 0 0 0 0 0 0 1 −1 f260 0 0 0 0 0 0 0 0 f270 0 0 0 0 0 0 0 0 f280 0 0 0 0 0 0 0 0 f290 0 0 0 0 0 0 0 0 f340 0 0 0 0 0 0 0 0 f350 0 0 0 0 0 0 0 0 f370 0 0 0 0 0 0 0 0 f380 0 0 0 0 0 0 0 0 f450 0 0 0 0 0 0 0 0 f460 0 0 0 0 0 0 0 0 f470 0 0 0 0 0 0 0 0 f480 0 0 0 0 0 0 0 0 f560 0 0 0 0 0 0 0 0 f580 0 0 0 0 0 0 0 0 f590 0 0 0 0 0 0 0 0 f670 0 0 0 0 0 0 0 0 f690 0 0 0 0 0 0 0 0 f780 0 0 0 0 0 0 0 0 f790 0 0 0 0 0 0 0 0 f89

30

Page 31: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

which means rank(δ0) = |im(δ0)| = 8 and implies |ker(δ0)| = |C0| − |im(δ0)| = 9− 8 = 1. For the matrixδ1, we wish to map

f12f13f14f15f23f24f25f26f27f28f29f34f35f37f38f45f46f47f48f56f58f59f67f69f78f79f89

7→

f124f125f134f135f237f238f246f259f267f289f347f358f456f458f478f569f679f789

which yields the matrix

δ1 :=

f12 f13 f14 f15 f23 f24 f25 f26 f27 f28 f29 f34 f35 f37 f38 f45 f46 f47 f48 f56 f58 f59 f67 f69 f78 f79 f89

1 0 −1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f1241 0 0 −1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f1250 1 −1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f1340 1 0 −1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f1350 0 0 0 1 0 0 0 −1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 f2370 0 0 0 1 0 0 0 0 −1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 f2380 0 0 0 0 1 0 −1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 f2460 0 0 0 0 0 1 0 0 0 −1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 f2590 0 0 0 0 0 0 1 −1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 f2670 0 0 0 0 0 0 0 0 1 −1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 f2890 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 0 0 1 0 0 0 0 0 0 0 0 0 f3470 0 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 0 0 0 0 1 0 0 0 0 0 0 f3580 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 0 0 1 0 0 0 0 0 0 0 f4560 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 −1 0 1 0 0 0 0 0 0 f4580 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 0 0 0 0 0 1 0 0 f4780 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 1 0 0 0 f5690 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 0 1 0 f6790 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 1 f789

31

Page 32: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) The topological space S1 (b) S1 covered by a single ε-ball (c) The resulting open cover

Figure 9. S1 on its own (A), covered with an ε-ball (B), and with an open cover (C).

which we can reduce tof12 f13 f14 f15 f23 f24 f25 f26 f27 f28 f29 f34 f35 f37 f38 f45 f46 f47 f48 f56 f58 f59 f67 f69 f78 f79 f89

1 0 0 −1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 −1 0 0 0 0 0 f1240 1 0 −1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 −1 0 0 0 0 0 0 f1250 0 1 −1 0 0 0 0 0 0 0 0 0 −1 1 0 0 0 1 0 −1 0 0 0 0 −1 1 f1340 0 0 0 1 0 0 0 0 0 −1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 f1350 0 0 0 0 1 0 0 0 0 −1 0 0 −1 1 0 0 0 1 0 −1 1 0 0 0 −1 1 f2370 0 0 0 0 0 1 0 0 0 −1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 f2380 0 0 0 0 0 0 1 0 0 −1 0 0 −1 1 0 0 0 0 0 0 0 0 1 0 −1 1 f2460 0 0 0 0 0 0 0 1 0 −1 0 0 −1 1 0 0 0 0 0 0 0 0 0 0 0 1 f2590 0 0 0 0 0 0 0 0 1 −1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 f2670 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 0 0 0 1 0 0 0 0 0 0 −1 1 f2890 0 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 0 0 0 0 1 0 0 0 0 0 0 f3470 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 −1 0 1 0 0 0 0 0 0 f3580 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 1 −1 0 1 0 0 0 f4560 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 0 0 0 0 0 0 1 −1 f4580 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 −1 0 1 0 0 0 f4780 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 0 1 0 f5690 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 −1 1 f6790 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 f789

It follows that rank(δ1) = |im(δ1)| = 17 and |ker(δ1)| = |C1| − |im(δ1)| = 27− 17 = 10. Fortunately, wedo not need to define any other matrices, since we see that from the Cech Complex that |ker(δ2)| = |C2| = 18.Thus our cohomology groups are

H0(U ,R) = ker(δ0)/im(δ−1) ∼= R|ker(δ0)|−|im(δ−1)| = R1−0 = R

H1(U ,R) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| = R10−8 = R2

H2(U ,R) = ker(δ2)/im(δ1) ∼= R|ker(δ2)|−|im(δ1)| = R18−17 = R.

Recall that since cohomology groups tell us about what types of holes are present in a space, H2 ∼= Rcorresponds to one 3-dimensional hole in the space.

So far, our Cech Complexes have only had two requirements: that X be a topological space, and that thecover U of X is an open cover. However, not every open cover yields accurate results from the cohomologygroups. We can see from the previous examples that if we were to change the number of sets in our opencover, each set in the Cech Complex will have different basis elements, and therefore the cohomology groupswill be different. As it turns out, this gives need for another requirement of the open cover U , as we shallnow demonstrate.

Example 5.6. (Cech cohomology of a circle, but with bad covers)Consider the circle S1. We know from Example 5.3 that we should arrive at H0 = 1 and H1 = 1. However,

suppose we wanted to minimize calculation. Our requirement is that the cover of S1 must be comprised ofopen sets, so if we choose a large enough open set of R2, we can intersect it with S1 and get all of S1, asshown in Figure 9C. Since S1 is obviously covered by S1, and S1 is a topological space, we should now be

32

Page 33: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) S1 covered by two ε-balls(b) The resulting open cover

Figure 10. S1 on its own (A) and with ε-balls (B).

able to construct our Cech Complex using just one open set. This implies Cp = {0} for all p > 0, and that

C0 = R(U1). The Cech Complex is then 0δ−1

−−→ C0 δ0−→ 0, which is certainly easier to work with than thecomplexes in the previous examples. But notice this already implies H1 = 0, which deviates from both ourintuition and our calculations in Example 5.3. A map δ1 would have as both its domain and codomain 0,meaning |ker(δ1)| = 0. Similarly, we see from the Cech Complex that |ker(δ0)| = |C0| = 1, which implies

|im(δ0)| = |C0| − |ker(δ0)| = 1 − 1 = 0. Therefore, H1(U , R) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| =R0−0 = R0 = {0}.

The problem is not that we have used one open set to cover S1, because even with multiple open sets, acover can still lead to incorrect calculations.

Suppose that we cover S1 with two open sets of R2, as shown in Figure 10A. These two open sets willcertainly cover S1, and even result in an intersection, which means C1 will be nonempty. We have that C0 =

R(U1)⊕R(U2) and C1 = R(U12), which results in the Cech Complex C•(S1,U) := 0δ−1

−−→ C0 δ0−→ C1 δ1−→ 0.We see that |ker(δ1)| = |C1| = 1. δ0 only needs to map (f1, f2) 7→ f12, so it follows naturally that ourmatrix is δ0 =

(−1 1

). There is no possibility of reducing δ0, so we have |im(δ0)| = rank(δ0) = 1, which

implies |ker(δ0)| = |C0| − |im(δ0)| = 2− 1 = 1. Then our cohomology groups are

H0(U , R) = ker(δ0)/im(δ−1) ∼= R|ker(δ0|−|im(δ−1)| = R1−0 = R1

which aligns with both our intuition and our prior calculations. However, we also have

H1(U , R) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| = R1−1 = R0 = {0}

which contradicts the results from Example 5.3.The reason for failure is not that we have simply used too few open sets in our cover, but rather that the

open sets we used failed a certain contractibility requirement. When we used only one open set in our cover,the open set we obtained, S1, was not contractible. As we discussed in Example 1.21, Sn is not contractiblefor any n. In the other scenario, we used two open covers on S1. Each cover was contractible, but lookingat Figure 11, we see that the intersection U12 is in two different pieces, which implies that it is impossiblefor U12 to be contractible. Not only must the open sets in our cover be contractible, their intersections mustalso be contractible.

Theorem 5.7. If X is a contractible space, then for any open cover U we have Hp(U , R) = 0 for all p > 0

The formal proof for Theorem 5.7 is currently beyond the author’s understanding. However, intuitively,we can see that if a space X is contractible, it must be connected. Otherwise, the separations of X cannot becontinuously deformed to a single point in X without leaving the set. Since X is connected, we can expectX to contain only one ”cluster” of points, which corresponds to H0(U , R) = 1. This implies that there isat least one nonzero homology group of X, and that p = 0 is not to be the base case of our proof. Since Xis contractible, for any point c ∈ X, we can continuously deform X to the point c without leaving X. Thisimplies there are no loops or holes in X, because if there were, we could not deform X to any point. Thelack of loops implies that Hp = 0 for p > 0.

33

Page 34: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Figure 11. The pairwise intersection of covers from Figure 10B

Theorem 2.7 reveals that whatever requirement is needed does not have to come from our topologicalspace. All of the examples we used to compute Cech cohomology were not contractible, yet we still obtainedreasonable results for our homology groups. It follows that we need to have a stronger requirement for ouropen covers, which we define as follows:

Definition 5.8. (Good cover) A good cover U of a topological space X is an open cover for which any finiteintersection of any number of sets in U is contractible. That is, an open cover U = {Ui}i∈I of a topologicalspace X is a good cover if any p-fold intersection of open sets Ui0,...,ip of U is contractible.

One can check that in Example 5.3 we used an open cover that was contractible, while in Example 5.6,neither of the two open covers were contractible. To minimize computations, then, we need to find a goodcover with the least number of open sets. But before we can accomplish this, we need to show that goodcovers of the same topological space will always yield the same cohomology groups.

Theorem 5.9. If U is a good cover of X and V is a refinement of U then Hp(U , R) ∼= Hp(V, R)

The proof for Theorem 2.9 is also beyond the author’s current understanding.Theorem 2.9 tells us that any pair of good covers for the same topological space will have cohomology

groups of the same dimension. We know that if we use too few covers, our cover may not be contractible.So if we wish to minimize calculation, we need to find the minimum number of open sets to create a goodcover. To accomplish this, we will need to utilize the direct limit.

5.1. Understanding Cech Cohomology as a Direct Limit.

Theorem 5.10. If U is any cover of X such that whenever V is a refinement of U we have Hp(U , R) ∼=Hp(V, R) then

limC

(C, R) ∼= Hp(U , R)

Theorem 2.10 says that for a good cover U , which by Theorem 2.9 satisfies the requirement that wheneverV is a refinement of U we haveHp(U , R) ∼= Hp(V, R), then the direct limit of all of the covers of the topologicalspace is isomorphic to the stable group Hp(U , R). The cover U , since it satisfies Hp(U , R) ∼= Hp(V, R) forany refinement V, is then the good cover with the fewest number of open sets. While the theorem did notspecify that U had to be good, we would need to show that only good covers satisfy the conditions requiredfor the refinement. The proof for Theorem 2.10 cannot be proven with the rudimentary concepts of topology,algebra, and category theory outlined previously. The advanced methods required for the proof are beyondthe scope of the author, and consequently, cannot be included in the paper.

In closing, we will discuss some interesting concepts that relate to creating an algorithm for the Cechcohomology. Much of the homological algebra from Section 2.1 will be required. Additionally, we will notbe able to use ε-balls to generate open covers, as intersections of two or more ε-balls is difficult to determine.

5.2. Cech Cohomology in Practice. So far, we have only used ε-balls to create open covers. However,so long as we have a good cover, we may use any shape we wish. Recall that n-cubes are also open on Rn.It is easy to check that n-cubes are contractible, since just like ε-balls, they are ”filled in” and can thusbe contracted to a point without leaving the set. As it turns out, if we wish to create an algorithm that

34

Page 35: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

(a) S1 covered by n-cubes(b) The resulting open cover

Figure 12. S1 covered by n-cubes of R2 (A) and the open cover formed by the intersectionof the n-cubes with S1 (B).

computes the Cech cohomology of a data set, we will need to make extensive use of n-cubes. First we outlinethat n-cubes do in fact yield the same results as ε-balls.

Example 5.11. (Cech cohomology of a circle, but with cubes)Consider the topological space S1, whose cohomology groups we found in Exercise 5.3 to be H0 = 1 and

H1 = 1. If we cover S1 using n-cubes as shown in Figure 12A, we can obtain the open cover shown in Figure12B, which is unsurprisingly similar to the open cover from Exercise 5.3. It follows from the figure that

C0 =∏

i∈1,2,3,4R(Ui) = R(U1)⊕R(U2)⊕R(U3)⊕R(U4)

C1 =∏

i,j∈1,2,3,4= R(U12)⊕R(U14)⊕R(U23)⊕R(U34)

C•(S1,U) = 0δ−1

−−→ C0 δ0−→ C1 δ1−→ 0

The map δ0 is given by

δ0(f1, f2, f3, f4)ij =

1∑k=0

(−1)k(f1, f2, f3, f4)i,k,j = fj − fi

This corresponds to the matrix δ0 =

−1 1 0 0−1 0 0 10 −1 1 00 0 −1 1

, which we can reduce to

1 0 0 −10 1 0 −10 0 1 −10 0 0 0

. Thus,

|im(δ0)| = rank(δ0) = 3, which implies |ker(δ0)| = |C0| − |im(δ0)| = 4 − 3 = 1. Based on our CechComplex, we see that |ker(δ1)| = |C1| = 4. Our cohomology groups are H0(U , R) = ker(δ0)/im(δ−1) ∼=R|ker(δ0)|−|im(δ−1| = R1−0 = R1 and H1(U ,R) = ker(δ1)/im(δ0) ∼= R|ker(δ1)|−|im(δ0)| = R4−3 = R1. We seethen, that using n-cubes produced the exact same result as when we used ε-balls to generate our cover.

At first glance, it seems unnecessary to use n-cubes when ε-balls are available. Well, issues arise if we wishto automate finding cohomology groups via Cech cohomology. When working with a data set, we cannotintersect our larger cover of ε-balls or n-cubes with the data set, as the result will be some cluster of pointsin the data set, the pairwise intersections of which may be difficult to determine. Instead, we only considerthe cover formed by centering ε-balls or n-cubes at each point in the data set and determine intersectionsfrom there. Intersections using ε-balls are easy to calculate: we say U1 ∩ U2 6= ∅ if ||U2 − U1|| < 2ε - that is,if the distance between the centers of two ε-balls is less than twice the radius ε. However, intersections ofthree or more ε-balls are difficult to determine. Even if the center of each ε-ball is less than 2ε away fromthe others, there is no guarantee for triple intersection, as shown in Figure 13. Using ε-cubes eliminatesthis issue, though we must change how we determine intersections. Recall that our ε-cubes are comprisedof open intervals. To check if two open intervals (a, b) and (c, d) intersect we check to see if a < d and

35

Page 36: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

Figure 13. A case where each pair of ε-balls intersect without a triple intersection

c < b. Through the use of the following theorems, we can check for any finite number of intersections forany number of ε-cubes.

Theorem 5.12. Let I1, I2, I3, . . . , Ik be open intervals such that Ia ∩ Ib 6= ∅ for all a, b ∈ {1, 2, 3, . . . , k}where k ∈ Z+. Then I1 ∩ I2 ∩ I3 ∩ . . . ∩ Ik 6= ∅.

Proof. We begin first by defining the collection of sets I = {Ij |j ∈ {1, 2, 3, . . . , k}}. Note that this is a finiteset, having k elements. Thus, it can be ordered in the dictionary order by inf(Ij) and sup(Ij) of each intervalrespectively. That is, with this ordering of I, for each pair of intervals Ii and Ij we have Ii < Ij wheninf(Ii) < inf(Ij) or when inf(Ii) = inf(Ij) and sup(Ii) < sup(Ij). By labeling ai = inf(Ii) and bi = sup(Ii)for each i ∈ {1, 2, 3, . . . , k}, it follows that a1 ≤ a2 ≤ a3 ≤ . . . ≤ ak Since we have Ij ∩ Ik 6= ∅ for allj ∈ {1, 2, 3, . . . , k}, applying the previous theorem gives us ak < bj . Therefore ak < b1 and ak < b2 andak < b3 and . . . and ak < bk. Consider the set B = {b1, b2, b3, . . . , bk}. Note that ak is a lower bound of Bbecause, as we have shown, ak < bi for all bi ∈ B. Also note that each bi ∈ R, so B is a finite, nonemptysubset of R. It follows, then, that B must necessarily have a greatest lowerbound, b ∈ R. We now focusour attention on the interval (ak, b). Our goal now is to show that ∅ 6= (ak, b) ⊂ (I1 ∩ I2 ∩ I3 ∩ . . . ∩ Ik).Since b is the greatest lower bound of B, and ak is a lower bound of B, we know that ak ≤ b. We knowthat ak 6= b because ak 6∈ B, but since B is a finite set, b ∈ B. Therefore we have the interval (ak, b) 6= ∅.Let s be an element of the interval (ak, b). Then it follows that ak < s < b. But as we have shown earlier,a1 ≤ a2 ≤ a3 ≤ . . . ≤ ak, and since b is a lower bound of B, b ≤ bi for all bi ∈ B. Therefore we seethat a1 < s < b1 and a2 < s < b2 and . . . and ak < bk. Thus, s ∈ Ii for all i ∈ {1, 2, 3, . . . , k} ands ∈ (I1 ∩ I2 ∩ I3 ∩ . . . ∩ Ik). More importantly, this means that ∅ 6= (ak, b) ⊂ (I1 ∩ I2 ∩ I3 ∩ . . . ∩ Ik), whichshows that the intersection of all of our open intervals is nonempty, exactly as we set out to prove. �

The results of Theorem 5.12 are useful, but only for 1 dimensional n-cubes (open intervals). Obviously,this will not suffice for a general algorithm. Fortunately, we can reduce any number of n-cubes to a productof intersecting open intervals by proving a certain property pertaining to Cartesian Products.

Proposition 5.13. Suppose we have k-many Cartesian Products A = A1 × A2 × A3 × . . . × An, B =B1 × B2 × B3 × . . .× Bn, . . ., K = K1 ×K2 ×K3 × . . .×Kn. Then (A ∩ B ∩ . . . ∩K) = (A1 ∩ B1 ∩ . . . ∩K1)× (A2 ∩B2 ∩ . . . ∩K2)× . . .× (An ∩Bn ∩Kn).

Proof. Our goal will be to show equality by proving (A∩B∩ . . .∩K) ⊂ (A1∩B1∩ . . .∩K1)× (A2∩B2∩ . . .∩K2)×. . .×(An∩Bn∩Kn) and (A∩B∩. . .∩K) ⊃ (A1∩B1∩. . .∩K1)×(A2∩B2∩. . .∩K2)×. . .×(An∩Bn∩Kn).

Let x = (x1, x2, x3, . . . , xn) ∈ (A ∩ B ∩ . . . ∩ K). Then x ∈ A, x ∈ B, . . ., x ∈ K, which means(x1, x2, x3, . . . , xn) ∈ (A1 ×A2 ×A3 × . . .×An) and (x1, x2, x3, . . . , xn) ∈ (B1 ×B2 ×B3 × . . .× Jn) and soon. Thus, xi ∈ Ai and xi ∈ Bi and so on for each i ∈ {1, 2, 3, . . . , n}. Since xi ∈ Ai and xi ∈ Bi and so on,xi ∈ Ai∩Bi∩ . . .∩Ki. That is, x1 ∈ (A1∩B1∩ . . .∩K1), x2 ∈ (A2∩B2∩ . . .∩K2), x3 ∈ (A3∩B3∩ . . .∩K3),and so on, which means (A∩B∩ . . .∩K) ⊂ (A1∩B1∩ . . .∩K1)× (A2∩B2∩ . . .∩K2)× . . .× (An∩Bn∩Kn).

Now we show that (A∩B ∩ . . .∩K) ⊃ (A1 ∩B1 ∩ . . .∩K1)× (A2 ∩B2 ∩ . . .∩K2)× . . .× (An ∩Bn ∩Kn).Let y = (y1, y2, y3, . . . , yn) ∈ (A1 ∩ B1 ∩ . . . ∩ K1) × (A2 ∩ B2 ∩ . . . ∩ K2) × . . . × (An ∩ Bn ∩ Kn). Weknow that yi ∈ Ai and yi ∈ Bi and so on for each i ∈ {1, 2, 3, . . . , n}, meaning y1 ∈ A1 and y1 ∈ B1

and so on. But note that y1 ∈ A1 and y2 ∈ A2 and y3inA3 and . . . yn ∈ An means that y ∈ A. We36

Page 37: CECH COHOMOLOGY AND GOOD COVERS · U2U which is a map between chain complexes and therefore gives us a map on cohomology: H (X;V) H (X;U). In other words, when we use a re nement

see quite easily that this will be true for all k Cartesian Products. Thus, y ∈ (A ∩ B ∩ . . . ∩ K) and(A ∩ B ∩ . . . ∩ K) ⊃ (A1 ∩ B1 ∩ . . . ∩ K1) × (A2 ∩ B2 ∩ . . . ∩ K2) × . . . × (An ∩ Bn ∩ Kn). Therefore,(A∩B∩. . .∩K) = (A1∩B1∩. . .∩K1)×(A2∩B2∩. . .∩K2)×(A3∩B3∩. . .∩K3)×. . .×(An∩Bn∩. . .∩Kn). �

Lastly, we use Theorem 5.12 and Proposition 5.13 in conjunction to prove a stronger statement of Theorem5.12, which allows us to check for any finite number of intersections of n-cubes of any dimension with ease.

Theorem 5.14. Suppose we have k-many n-cubes, A = A1 ×A2 × . . .×An, B = B1 ×B2 × . . .×Bn, . . .,K = K1 ×K2 × . . .×Kn, where any pair of intervals from any n-cube intersect. Then A ∩B ∩ . . . ∩K 6= ∅

Proof. This is a rather simple proof thanks to Proposition 5.13 and Theorem 5.12. We have A∩B∩ . . .∩K =(A1 ∩ B1 ∩ . . . ∩K1)× (A2 ∩ B2 ∩ . . . ∩K2)× . . .× (An ∩ Bn ∩ . . . ∩Kn). Since we know that any pairingof any Ai, Bi, . . . ,Ki will be nonempty, can apply Theorem 5.12 to each component of A ∩ B ∩ . . . ∩ K.Thus, A1 ∩ B1 ∩ . . . ∩ K1 6= ∅, A2 ∩ B2 ∩ . . . ∩ K2 6= ∅, and so on. From this, we know that for eachcomponent Ai ∩ Bi ∩ . . . ∩ Ki, there exists some element xi ∈ R which lies in the intersection. If we takeall of these components as a single element (x1, x2, . . . , xn), we see that this element lies in the CartesianProduct (A1∩B1∩ . . .∩K1)× (A2∩B2∩ . . .∩K2)× . . .× (An∩Bn∩ . . .∩Kn) = A∩B∩ . . .∩K. Therefore,A ∩B ∩ . . . ∩K 6= ∅.

By Theorem 5.14, we see that in order to check for k-fold intersections of any-dimensional n-cubes, weonly need to check that each pair of components of the n-cubes k-fold intersect. That is, we check that theopen intervals of each component of our n-cubes will k-fold intersect in R, and from there we can determinethat the n-cubes themselves k-fold intersect.

Recall that our ε-cubes will change size depending on ε. Given two open covers U and V for a data setconsisting of ε-cubes and ε/2-cubes respectively, it follows that the latter cover will be a refinement of theformer. However, increasing the size of ε increases the likelihood of higher intersections, and as such thecohomology groups may differ. However, the refinement induces a chain map (C•,V) → (C•,U), which inturn by Theorem 2.24 induces a map Hp(V, R)→ Hp(U , R). In other words, we can track the cohomologygroups and determine which holes ”disappear” based on the increasing size of the cover. This process isreferred to as persistent homology, since we see which homology groups ”persist” or stay the same as thesize of our cover increases.

Remark 5.15. Lastly, there is the matter of the Vietoris Rips Complex, and its relationship to the Cechcohomology using cubes. Both processes require open covers of a topological space X, chain complex inducedby the Rips Complex can only be done on a metric space X. Intersections in the Vietoris Rips Complex aredetermined solely by the distances between each open set. The case where three ε-balls overlap pairwise,but not all together, is considered a triple intersection in the Vietoris Rips Complex, since the center ofeach ε-ball is less than 2ε. However, if we consider the Vietoris Rips Complex with ε-balls and the Cechcohomology with ε-cubes, we find that both of the generated chain complexes are the same - but only if wechange our ε to some ε′ when switching from balls to cubes.

6. References

Brylinski, Jean-Luc. Loop Spaces, Characteristic Classes, and Geometric Quantization. Birkhauser, 2008.Hungerford, Thomas W. Algebra. Springer, 2003.Munkres, James R. Topology. 2nd ed., Pearson, 2013.Riehl, Emily. Category Theory in Context. 2016.

37