Homology for Normal Humans

My friend asked me for help understanding this information-theory paper. Specifically, what is homology?

I’ll walk you through the graded-chain-complex of a 3-simplex = triangular pyramid, but know that you could extend this kinda easily by sticking simplices together—that’s a “simplicial complex”. You could also stick n-spheres onto that, and have a “CW-complex”. I won’t get around to describing homology, but just knowing what a graded complex is, I think gets you close, and is easier to digest at one sitting. The overall message is that this definition of “shape” relies on looking at all the pieces together—“the pieces” being whole, one dimension lower, one dimension lower, one dimension lower, ….

Graded chain complexes

Starting from ground zero, I think the first thing anyone could learn about homology is the setting. Mathematicians tried probing spaces with homotopies but found the logic of homotopies to be hairy. They needed to invent homology, and in order to do that they needed to invent graded chain complexes.


So they invented the graded complex. Grading occurs in a couple settings; I drew the “simplicial” (triangular) setting above. Another setting is with polynomials: I learned at age 13 that x³+2x⁴ doesn’t combine to 3x⁷.

† (Like Fractions, writing polynomial addition as algebra makes people want to do things that make no logical or geometric sense. People write ½ + ¼ = ⅙ or ½ + ½ = ¼, but would never write ◐ + ◑ = ◔.

Another setting could be 1000 + 10 does not equal 2000, but nobody makes this mistake.)

Grading does show up elsewhere but let’s leave off that.

Grading is not about stuff that’s totally incomparable. There are ways to combine and x⁵; addition just isn’t it. You can think of

  • x⁵ and , or
  • ▲ and boundary() ≝ △, or
  • △ and boundary() ≝ ∴ or
  • ■ and ∂(■) ≝ □

as being alike, kind-of comparable, but of different dimension.


This is the part I think anyone can understand. The idea of complexes, which are the setup to homology, is to consider the entirety of {pyramid, triangular faces, edges, vertices} at once, or at least several of the neighbourly pieces at one time.

This is just a way of defining and setting up the system of inferences—a bit like defining classes in programming. There’s nothing that a ten-year-old can’t conceive or understand in “Think about the faces, the edges, and the corners at once”. (The mental heavy-lifting is in working with the harder spaces, figuring out that this is a good setup, proving that it is, calculating homology, doing things with them, and relating this to other areas of maths.)

The word “complex” just means to think of {pyramid, ▲+▲+▲+▲, |||||||, ••••} all together.

Chains of ∂ Maps

The → connection in simplicial chain complexes … → pyramid → ▲ → △ → ∴ → ∅ is the boundary map ∂. (each → being a homomorphism).

Keep reading

Don’t get me wrong, I love cat theory as much as the next person, but I see why a lot of mathematicians threat it with such disdain, and the reason is cat theorists themselves. Some of them seem to have everything so precisely backwards from what seems natural for other mathematicians.
This is like “chicken vs egg” problem, or more like “definition vs property” problem: what seems like a definition for us, is a property for them, and the other way around.

Let me illustrate on an example from today’s talk on (abelian) sheaf cohomology.

We all know that sheaf cohomology records the non-exactness of the global sections functor, which, in turn, is a consequence of the image of a sheaf morphism failing to be a sheaf in general. Here’s how the presenter discussed the issue:

1. Define sheafification as the left adjoint of the inclusion Sh(X) into Psh(X) (as a full subcategory)

2. (Pre)sheaves form an abelian category, and abelian categories have a general notion of a (co)kernel (as the pushforward/pullback along the map to/from zero object), so we define the (co)kernel of the (pre)sheaf morphism to be exactly that.

3. One can show that the kernel of a sheaf morphism taken in Psh(X) (defined in 2) is the same as the kernel taken in Sh(X), but the cokernel in Sh(X) is the same as sheafification (defined in 1) of the cokernel in Psh(X)

Having notions of kernels and cokernels, we can then proceed to define exactness in Sh(X) and Psh(X) etc.

This is clean and concise and tells me absolutely nothing.

Here’s what would seem a natural process for me:

1. Seeing how local data can’t always be patched together to form global data (i.e. not every presheaf is a sheaf), we’re interested in how can we force given local data to work together, i.e what additional data do we need to throw in so that our local things could be glued together. Hence we define the sheafification - the smallest sheaf with the same stalks as the given presheaf.

2. Seeing how our presheaves are abelian, and we have a well-understood notions of exactness, kernels and cokernels for abelian groups, we try to define same notions for presheaves in the obvious way (i.e define kernel of presheaf morphism to be the the presheaf of kernels etc).

3. We observe that the kernel of a morphism between sheaves is a sheaf, but the cokernel is not necessarily (which reflects that given F->G, G-global sections don’t always lift to F-global sections - the fact that is immediate from an undergraduate complex analysis course: there’s no globally defined logarithm on the unit circle, and hence global sections on U(1) don’t lift to global sections on R)

4. Hence it seems natural to define cokernel of a sheaf morphism to be the sheafification of the cokernel presheaf.

5. And now we can show that defined in this way, (co)kernels of (pre)sheaves are exactly (co)kernels in the abelian category sense, and use all the wonderful homological algebra machinery to describe properties of our constructions.

All the definitions can be shown to be equivalent, so can (and should! that’s precisely the point) be used interchangeably, but the first, up-down definition, seems to be “I defined an abstract thing, and now I’m going to find something that is actually described by my thing. But if I don’t find something that is described by my thing then I have a whole lot of information (because my definition was so abstract) about nothing.” Second, down-up definition, is “Here’s a thing I’m interested in, and I am going to see if I can find some existing machinery to describe it. But if I don’t find the necessary machinery, I can invent it, because I already know the properties of my thing, it’s lying right there in front of me!”

Basically what I’m saying is, as far as my style of processing mathematics goes, category theory is amazing and incredibly useful for describing things, but please stop using it to define things

The idea of the derived category, as we understand it today, can be formulated as follows:

a) An object \(X\) of an abelian category should be identified with all its resolutions.

b) The main reason for such an identification is that some most important functors, such as Hom, tensor products, \(\Gamma\), etc. should be redefined. Their “naive” definitions should be applied only to some special objects, which are acyclic with respect to this functor. If, say, \(X\) is a flat module and \(Y\) is an arbitrary one, then \(X \otimes Y\) is the correct definition of the tensor product. But in the general case, in order to get a correct definition one has to replace \(X \otimes Y\) by \(P^{\bullet} \otimes Y\), where \(P^{\bullet}\) is a flat resolution of the module \(X\). Similarly, to get the correct definition of the group \(\Gamma (\mathcal{F})\) of a sheaf \(\mathcal{F}\) one has to take the complex \(\Gamma(\mathcal{I}^{\bullet})\) where \(\mathcal{I}\) is an injective resolution of \(\mathcal{F}\).

c) To adopt this point of view we must consider from the very beginning not only objects of an abelian category and their resolutions, but arbitrary complexes. One of the reasons why we have to do this is that \(P^{\bullet} \otimes Y\) and \(\Gamma(\mathcal{I}^{\bullet})\) would usually have nontrivial cohomology in several degrees and not only in degree zero. Hence the relation that enables us to identify an object and its resolution should be generalized to arbitrary complexes. The appropriate generalization is given by the notion of a quasi-isomorphism.

d) The equivalence relation between complexes generated by quasi-isomorphisms is rather complicated, and what happens after the factorization by this equivalence relation is difficult to trace. The technique that enables us to do it form the core of the theory of derived categories.

e) The above redefinitions of such functors as \(\otimes, \Gamma\) and others makes semi-exact functors into “exact” ones, in some sense. The very notion of exactness in a derived category is by no means obvious–the origin of this notion in the classical homological algebra is the exact sequence of higher derived functors, which is invariant under the change of a resolution.

—  Gelfand and Manin, Methods of Homological Algebra

A history of 20th-century mathematics in ~500 words, with example pictures:

The inheritance of Cantor’s Set Theory allowed the 20th century to create the domain of “Functional Analysis”.

This comes about as an extension of the classical Differential and Integral Calculus in which one considers not merely a particular function (like the exponential function or a trigonometric function), but the operations and transformations which can be performed on all functions of a certain type.

The creation of a “new” theory of integration, by Émile Borel and above all Henri Lebesgue, at the beginning of the 20th century, followed by the invention of normed spaces by Maurice Fréchet, Norbert Wiener and especially Stefan Banach, yielded new tools for construction and proof in mathematics.

The theory is seductive by its generality, its simplicity and its harmony, and it is capable of resolving difficult problems with elegance. The price to pay is that it usually makes use of non-constructive methods (the Hahn-Banach theorem, Baire’s theorem and its consequences), which enable one to prove the existence of a mathematical object, but without giving an effective construction.

[I]n 1955 … [Nancy] … was the golden age of French mathematics, where, in the orbit of Bourbaki and impelled above all by Henri Cartan, Laurent Schwartz and Jean-Pierre Serre, mathematicians attacked the most difficult problems of geometry, group theory and topology.

New tools appeared: sheaf theory and homological algebra … which were admirable for their generality and flexibility.

The apples of the garden of the Hesperides were the famous conjectures stated by André Weil in 1954: these conjectures appeared as a combinatorial problem … of a discouraging generality….

The fascinating aspect of these conjectures is that they … fuse … opposites: “discrete” and “continuous”, or “finite” and “infinite”.

Methods invented in topology to keep track of invariants under the continuous deformation of geometric objects, must be employed to enumerate a finite number of configurations.

Like Moses, André Weil caught sight of the Promised Land, but unlike Moses, he was unable to cross the Red Sea on dry land, nor did he have an adequate vessel. André Weil … was not … ignorant of these techniques …. But [he] was suspicious of “big machinery” ….

Homological algebra, conceived as a general tool reaching beyond all special cases, was invented by Cartan and Eilenberg (… in 1956). This book is a very precise exposition, but limited to the theory of modules over rings and the associated functors “Ext” and “Tor”. It was already a vast synthesis of known methods and results, but sheaves do not enter into this picture. Sheaves … were created together with their homology, but the homology theory is constructed in an ad hoc manner….

In the autumn of 1950, Eilenberg …undertook with Cartan to [axiomatise] sheaf homology; yet the construction … preserves its initial ad hoc character.

When Serre introduced sheaves into algebraic geometry, in 1953, the seemingly pathological nature of the “Zariski topology” forced him into some very indirect constructions.


1.1.4, Weibel

i) Show that for any chain complex \(\{C_n\}\) and \(R\)-module \(A\) that \(\{\mathrm{Hom}_R(A, C_n)\}\) is also a chain complex.

ii) Show that, for a given \(n\), if \(H_n(\mathrm{Hom}_R(Z_n,C_.)) = 0\) then \(H_n(C_.) = 0\); does the converse hold?

* * *

i) One verifies \(\{\mathrm{Hom}_R(A, C_n)\}\) equipped with the boundary maps \(d_n’: \mathrm{Hom}_R(A, C_n) \to \mathrm{Hom}_R(A, C_{n-1})\) by \(\phi \mapsto d_n \circ \phi\) makes \(\{\mathrm{Hom}_R(A, C_n)\}\) a chain complex.

ii) Observe \(\ker(d_n’) = \{\phi \in \mathrm{Hom}(Z_n, C_n) : \mathrm{im}(\phi) \subseteq \ker(d_n)\}\) so \(\ker(d_n’) = \mathrm{End}_R(Z_n)\). If \(H_n(\mathrm{Hom}_R(Z_n,C_.)) = 0\) then \(\mathrm{im}(d_{n+1}) = B_n’ \simeq Z_n’ = \ker(d_n’) \simeq \mathrm{End}_R(Z_n)\). In particular,

\[\phi \in B_n’ \iff \exists \psi : Z_n \to C_{n+1} : \phi = d_{n + 1} \circ \psi \implies \forall \phi \in \mathrm{End}_R(Z_n), \mathrm{im}(\phi) \subseteq B_n\]

so the image of the identity map \(\mathrm{id}_{\ker(d_n)}\) lies inside \(B_n\), hence \(Z_n \subseteq B_n \implies B_n = Z_n \implies H_n(C_.) = 0\).

Now, the converse holds \(\iff\) every endomorphism of \(B_n = Z_n\) factors through \(C_{n+1} \overset{d_{n+1}}{\to} B_n\) \(\implies\) in particular there exists a section \(\phi : B_n \to C_{n+1}\) that provides a right-inverse to \(d_{n+1}\), i.e. \(\mathrm{id}_{B_n} = d_{n+1} \circ \phi\), which would split the short exact sequence \(0 \to \ker(d_{n+1}) \to C_{n+1} \to B_n \to 0\); combining any chain complex such that the above sequence at \(d_{n+1}\) does not split with the contrapositive of the preceding chain of implications tells us the converse does not always hold. \(_\square\)

1.1.3, Weibel

Show that every chain complex \(\{C_n\}\) of vector spaces is of the form \(C_n \simeq B_n \oplus H_n \oplus B_{n - 1}\) with boundary maps the projection-inclusion \(d_n : C_n \to B_n\).

We’ll need, first, that every short exact sequence of vector spaces splits; by the splitting lemma, it’ll be enough to show (say) that for a short exact sequence \(0 \to A_1 \overset{f_1}{\to} A_2 \overset{f_2}{\to} A_3 \to 0\) of vector spaces that we have a retraction \(f_3 : A_2 \to A_1\).

Now, the Zorn’s lemma argument for the existence of bases can be easily reformulated in terms of basis extensions, i.e.chains of the poset of linearly independent sets which also contains some linearly independent \(\gamma\); the usual proof is then recovered by having \(\gamma\) be empty, so we can talk about extending bases in any vector space.

Take \(\gamma\) a basis for \(\mathrm{im}(f_1)\) and complete it to a basis \(\bar{\gamma}\) of \(A_2\); then every \(a_2 \in A_2\) can be written \(a_2 = \sum_{g \in \gamma} c_i g + \sum_{g \in \bar{\gamma} \backslash \gamma} c_j g\); one then defines the projection \(\pi : A_2 \to A_1\) in a natural way, and then one verifies \(\pi\) gives a retraction (or one can verify directly that \(a_2 \mapsto (\pi(a_2), f_2(a_2))\) is an isomorphism \(A_2 \simeq A_1 \oplus A_3\).)

With this, we then have via the splitting lemma and first isomorphism theorem the fact that \(\forall f \in \mathcal{L}(V,W), V \simeq \ker(f) \oplus \mathrm{im}(f)\) and \(\forall S \hookrightarrow V, V \simeq S \oplus V / S\), and hence the result

\[V_n \simeq \ker(d_n) \oplus \mathrm{im}(d_{n-1}) \simeq \mathrm{im}(d_{n+1}) \oplus \ker(d_n) / \mathrm{im}(d_{n+1}) \oplus \mathrm{im}(d_{n-1})\]\[ \simeq B_n \oplus H_n \oplus B_{n-1}\]

(for a chain complex \(\{V_n\}\) of vector spaces) follows. \(_\square\)

The splitting lemma

Okay, motivation: this is a vast generalization, among other things, of the rank-nullity theorem from linear algebra and the first isomorphism theorem in abelian categories.


\[0 \to A_1 \overset{f_1}{\to} A_2 \overset{f_2}{\to} A_3 \to 0\] be a short exact sequence in an abelian category. Then TFAE:

1) \(A_2 \simeq A_1 \oplus A_3\)
2) \(\exists f_3: A_2 \to A_1\) such that \(f_3 \circ f_1 = \mathrm{id}_{A_1}\).
3) \(\exists f_4: A_3 \to A_2\) such that \(f_2 \circ f_4 = \mathrm{id}_{A_3}\).

Clearly 1) \(\implies\) 2) \(\land\) 3) since we can take the natural projection (resp. embedding) as the required retraction (resp. section).

(Now, if we’re allowed to look at elements, the proof in the other direction is simpler and more concrete (c.f. the eponymous Wikipedia article) but I dislike elements, so we’ll give the abstract nonsense proof.)

Suppose we have a retraction \[0 \to A_1 {\overset{f_1}{\longrightarrow} \atop {\longleftarrow \atop f_3}} A_2 \cdots\] and now define \(F_1, F_2 \in (\mathrm{Hom}(A_2,A_2),+)\) by \(F_1 = f_1 \circ f_3\) and \(F_2 = \mathrm{id}_{A_2} - F_1.\)

Now, \(F_1\) factors into an epi and mono, i.e. \[A_2 \overset{\pi_{F_1}}{\to} \mathrm{Im}(F_1) \overset{\iota_{F_1}}{\to} A_2.\] (resp. \(F_2 = \iota_{F_2} \circ \pi_{F_2}\).) To continue, we’ll prove the following:
i) \(\pi_{F_1} \circ \iota_{F_1} = \mathrm{id}_{\mathrm{Im}(F_1)}\)
ii) \(\pi_{F_1} \circ f : A_1 \overset{\text{isomorphism}}{\longrightarrow} \mathrm{Im}(F_1)\)

iii) \(\pi_{F_2} \circ \iota_{F_2} = \mathrm{id}_{\mathrm{Im}(F_2)}\)

iv) \(\pi_{F_1} \circ \iota_{F_2} = 0\) 

v) \(\pi_{F_2} \circ \iota_{F_1} = 0\).

i) \(\iota_{F_1} \pi_{F_1} \iota_{F_1} \pi_{F_1} = \iota_{F_1} \pi_{F_1} \implies \pi_{F_1} \iota_{F_1} = \mathrm{id}_{\mathrm{Im}(F_1)}\) (by right- and left-cancellation).
ii) See that \(f_3 \circ \iota_{F_1}\) is both a left- and right-inverse: \(f_3 \circ \iota_{F_1} \circ \pi_{F_1} \circ f_1 = \mathrm{id}_{A_1} \circ \mathrm{id}_{A_1} = \mathrm{id}_{A_1}\) and \(\pi_{F_1} \circ f_1 \circ f_3 \circ \iota_{F_1} = \mathrm{id}_{\mathrm{Im}(F_1)}\) (by the above.)
(I’m getting tired of these subscripts, so let’s agree \(\pi_{1} = \pi_{F_1}\) and so on.)

iii) \(\iota_2 \pi_2 \iota_2 \pi_2 = (\mathrm{id} - F_1) \circ (\mathrm{id} - F_1)\)\(= \mathrm{id} - F_1 - F_1 + \circ(-F_1,-F_1) = \mathrm{id} - F_1 - F_1 + F_1\) (by the previous Lemma) \( = \iota_2 \pi_2\) and result follows as in i).

iv) We have \(\iota_1 \pi_1 \iota_2 \pi_2 = (F_1)(\mathrm{id}_{A_2} - F_1) = 0\) and the result follows from epicity and monicity.

v) Analogous to iv). Now, \(\iota_1 : \mathrm{Im}(F_1) \to A_2\) and \(\iota_2 : \mathrm{Im}(F_2) \to A_2\) induce a unique map from the biproduct \[\phi : \mathrm{Im}(F_1) \oplus \mathrm{Im}(F_2) \to A_2\] and \(\pi_1\) (I’m sure you see where this is going) and \(\pi_2\) similarly induce a unique map to the biproduct \[\psi : A_2 \to \mathrm{Im}(F_1) \oplus \mathrm{Im}(F_2).\]

Now, \(\phi \circ \psi\) is just \(F_1 + F_2 = \mathrm{id}_{A_2}\). (I’m unsure if this follows because we declare addition-of-morphisms in an abelian category to be defined by the \(\Delta\)-\(\nabla\) construction, which this clearly satisfies, or otherwise.)

And now we verify the isomorphism \(A_2 \simeq \mathrm{Im}(F_1) \oplus \mathrm{Im}(F_2)\): writing \(i_j, p_i\) for the canonical maps of the biproduct, we have \(\psi \circ \phi = i_1 \pi_1 \circ \iota_1 \circ p_1 + i_1 \circ \pi_1 \circ \iota_2 \circ p_2 + i_2 \circ \pi_2 \circ \iota_1 \circ p_1 + i_2 \circ \pi_2 \circ \iota_2 \circ p_2\)

(I’m not entirely sure why this addition is justified; I think this comes from the equivalent equational condition on the biproduct embeddings and productions) which is just \(p_1 \circ i_1 + p_2 \circ i_2 = \mathrm{id}_{\mathrm{Im}(F_1) \oplus \mathrm{Im}(F_2)}\), as desired.

Now, we have \(A_2 \simeq A_1 \oplus \mathrm{Im}(F_2)\); applying the first isomorphism theorem to the natural projection to \(\mathrm{Im}(F_2)\) from the right-hand-side of that equivalence, we get \[\mathrm{Im}(F_2) \simeq A_2 / A_1 \simeq A_2 / \ker(f_2) \simeq A_3\] and we are done. \(_\square\)
Diagonal and fold maps:

Define the diagonal and fold maps \(\Delta_A: A \to A \oplus A, \nabla_A: A \oplus A \to A\) as follows:

\(\Delta_A\) is the unique map induced from \(A\) to its biproduct by the cone \(A \overset{\mathrm{id}_A}{\longleftarrow} A \overset{\mathrm{id}_A}{\longrightarrow} A\),

and \(\nabla\) is its dual.

More specifically, let \(f,g \in \mathrm{Hom}(A,B)\) and consider the map \(f \oplus g\) induced from \(A \oplus A \to B \oplus B\) by the cone \(B \overset{f’}{\longleftarrow} A \oplus A \overset{g’}{\longrightarrow} B\), where \(f’\) and \(g’\) are induced by factoring \(f,g\) through \(A \oplus A\).

This’ll help us in showing that the sum of any two maps \(f,g \in \mathrm{Hom}(A,B), f + g = \nabla_B \circ f \oplus g \circ \Delta_A\) in an abelian category is globally determined, i.e. depends on the ambient category, rather than the ambient Hom-object.

A quick lemma:

Lemma. Let \(f \in \mathrm{Hom}(A,B), g \in \mathrm{Hom}(B,C)\) in an abelian category. Then \(-(g \circ f) = -g \circ f = g \circ -f\) in \(\mathrm{Hom}(A,C)\).

Proof. By the bilinearity of morphism-composition \((- \circ -) = \circ(-,-)\),

\[- \circ (g,f) + (g,f) = 0,\]

\[\circ (-g,f) + \circ(g,f) = \circ(0,f) = 0, \]


\[\circ (g,f) + \circ (g, -f) = \circ (g,0) = 0.\]

Combining the three equalities and dropping the \(\circ(g,f)\)’s gives the result. \(_\square\)