PMATH 945: Category Theory and Homological Algebra
Jason Bell
Estimated study time: 4 hr 9 min
Table of contents
Sources and References
Primary textbook — Saunders Mac Lane, Categories for the Working Mathematician, 2nd ed. (Springer GTM 5, 1998). The definitive classical reference.
Supplementary texts — Emily Riehl, Category Theory in Context (Dover, 2016; freely available at math.jhu.edu/~eriehl/context.pdf); Tom Leinster, Basic Category Theory (Cambridge, 2014; arXiv:1612.09375); Saunders Mac Lane and Ieke Moerdijk, Sheaves in Geometry and Logic (Springer, 1992); Francis Borceux, Handbook of Categorical Algebra I–III (Cambridge, 1994); Masaki Kashiwara and Pierre Schapira, Categories and Sheaves (Springer, 2006); Charles Weibel, An Introduction to Homological Algebra (Cambridge, 1994); Joseph Rotman, An Introduction to Homological Algebra, 2nd ed. (Springer, 2009); Peter Hilton and Urs Stammbach, A Course in Homological Algebra, 2nd ed. (Springer, 1997); Paolo Aluffi, Algebra: Chapter 0 (AMS, 2009).
Online resources — Christa Hawthorne’s PMATH 945 notes from Jason Bell’s Winter 2016 offering (cdchawthorne.com); the nLab (ncatlab.org), an open-access wiki for higher category theory and homotopy theory; the Stacks Project (stacks.math.columbia.edu), a comprehensive reference for algebraic geometry using categorical methods; MIT OpenCourseWare 18.905 (Algebraic Topology) lecture notes by Haynes Miller.
Category theory was born from a very concrete problem in algebraic topology. In the 1940s, Samuel Eilenberg and Saunders Mac Lane were studying natural equivalences between homology theories — isomorphisms that arose “without making any choice.” To make precise what it means for an isomorphism to be natural, they had to introduce the notion of a natural transformation between functors. But to define functors, they needed categories. What began as scaffolding for a definition turned out to be one of the most revolutionary frameworks in twentieth-century mathematics.
The central insight of Eilenberg and Mac Lane’s 1945 paper “General Theory of Natural Equivalences” is this: the distinction between a natural isomorphism and a mere isomorphism is mathematically meaningful and consequential. Every finite-dimensional vector space \(V\) is isomorphic to its dual \(V^*\) — but the isomorphism depends on a choice of basis and there is no canonical way to make it. By contrast, \(V\) is canonically isomorphic to its double dual \(V^{**}\) via the evaluation map \(v \mapsto \mathrm{ev}_v\). Category theory provides the language to express this distinction precisely.
Grothendieck’s 1957 paper “Sur quelques points d’algèbre homologique” — universally known as the Tôhoku paper after the journal in which it appeared — transformed the subject. Grothendieck introduced abelian categories and the machinery of derived functors in sufficient generality to apply to sheaves of abelian groups on a topological space (or later a site), making cohomology theories in algebraic geometry rigorous. His systematic use of universal properties, exactness, and functorial constructions set the template for modern algebra and algebraic geometry.
Daniel Kan’s 1958 paper “Adjoint functors” introduced what Mac Lane would later call “the most important concept” in category theory. Adjoint functors formalize the idea of “optimal solutions to universal problems” and encode the free-forgetful duality that appears throughout mathematics. Peter Freyd’s and Barry Mitchell’s embedding theorems in the early 1960s established that every small abelian category can be faithfully embedded into a module category, licensing diagram-chasing arguments in full generality. These developments — categories, functors, natural transformations, adjunctions, abelian categories, derived functors, the embedding theorem — constitute the core of this course.
Part I: Category Theory
Chapter 1: Categories
The notion of a category is at once extremely abstract and extremely concrete. It abstracts the observation that in every branch of mathematics, objects come equipped with a notion of “structure-preserving map”: sets and functions, groups and homomorphisms, topological spaces and continuous maps, vector spaces and linear transformations. A category is simply a collection of objects together with a collection of morphisms between them, subject to the rule that morphisms can be composed and that every object has an identity morphism. The power of this abstraction is not that it is complicated, but that it is comprehensive: once a construction or theorem is formulated categorically, it applies simultaneously to all branches of mathematics.
1.1 Set-Theoretic Foundations: Classes and Universes
Before defining categories, we must address a foundational subtlety. The collection of all sets is not itself a set — if it were, one could construct the Russell set \(\{x : x \notin x\}\), a contradiction. Similarly, the “category of all sets” requires us to speak of a collection of all sets as if it were a single object. This forces a choice of foundational framework.
The most flexible approach, favored by Grothendieck, is the theory of universes. A Grothendieck universe is a set \(\mathcal{U}\) satisfying: (i) if \(x \in \mathcal{U}\) and \(y \in x\) then \(y \in \mathcal{U}\); (ii) if \(x \in \mathcal{U}\) then \(\mathcal{P}(x) \in \mathcal{U}\); (iii) if \(I \in \mathcal{U}\) and \(\{x_i\}_{i \in I}\) is a family with each \(x_i \in \mathcal{U}\), then \(\bigcup_i x_i \in \mathcal{U}\); and (iv) \(\mathbb{N} \in \mathcal{U}\). The Axiom of Universes (an extension of ZFC) asserts that every set belongs to some universe. We then declare a set to be small if it is an element of \(\mathcal{U}\), and large otherwise. A category whose objects and morphisms all lie in \(\mathcal{U}\) is called small; one whose objects form a proper class (not a set in \(\mathcal{U}\)) is large.
A more elementary approach is von Neumann–Bernays–Gödel (NBG) set theory, which admits proper classes — collections too large to be sets — as first-class citizens. One can then say: a large category is one whose objects form a proper class.
For this course, we adopt the practical working mathematician’s stance: we freely speak of “the category of all groups” and “the category of all sets” without worrying about foundational paradoxes, implicitly assuming that a suitable universe has been fixed. We will be explicit about set-theoretic size when it matters — primarily in the statements of adjoint functor theorems and in the definition of limits and colimits.
- Small if both \(\mathrm{Ob}(\mathcal{C})\) and \(\bigsqcup_{A,B \in \mathrm{Ob}(\mathcal{C})} \mathrm{Hom}_\mathcal{C}(A, B)\) are elements of \(\mathcal{U}\).
- Locally small if \(\mathrm{Hom}_\mathcal{C}(A, B)\) is a set (element of \(\mathcal{U}\)) for every pair of objects \(A, B \in \mathrm{Ob}(\mathcal{C})\).
- Large if it is not small.
Most naturally occurring categories — Set, Grp, Top, R-Mod — are large but locally small. Small categories arise as indexing categories for diagrams (e.g., the category with two objects and one non-identity arrow between them, used to define morphisms as diagrams). The distinction matters in the context of the Yoneda lemma and limit-existence theorems, where local smallness is typically required.
1.2 Definition of a Category
With foundations in hand, we can give the central definition.
- A class \(\mathrm{Ob}(\mathcal{C})\) of objects.
- For each pair of objects \(A, B \in \mathrm{Ob}(\mathcal{C})\), a set \(\mathrm{Hom}_\mathcal{C}(A, B)\) of morphisms from \(A\) to \(B\). We write \(f : A \to B\) to mean \(f \in \mathrm{Hom}_\mathcal{C}(A, B)\).
- For each triple of objects \(A, B, C \in \mathrm{Ob}(\mathcal{C})\), a composition map \[ \circ : \mathrm{Hom}_\mathcal{C}(B, C) \times \mathrm{Hom}_\mathcal{C}(A, B) \to \mathrm{Hom}_\mathcal{C}(A, C), \quad (g, f) \mapsto g \circ f, \] satisfying associativity: \(h \circ (g \circ f) = (h \circ g) \circ f\) for all composable \(f, g, h\).
- For each object \(A \in \mathrm{Ob}(\mathcal{C})\), an identity morphism \(\mathrm{id}_A \in \mathrm{Hom}_\mathcal{C}(A, A)\) satisfying \(f \circ \mathrm{id}_A = f\) and \(\mathrm{id}_B \circ f = f\) for all \(f : A \to B\).
The hom-sets \(\mathrm{Hom}_\mathcal{C}(A, B)\) are required to be pairwise disjoint: each morphism has a unique source and a unique target. The identity morphism is unique: if \(e : A \to A\) satisfies \(e \circ f = f\) for all \(f : B \to A\), then \(e = e \circ \mathrm{id}_A = \mathrm{id}_A\).
1.3 Examples of Categories
The following examples illustrate the range of the definition. In each case the reader should verify that composition is associative and that identity morphisms exist.
- Set: objects are all sets, morphisms are functions, composition is function composition. This is the prototypical example and the one to which all "concrete" categories reduce via forgetful functors.
- Grp: objects are groups, morphisms are group homomorphisms.
- Ab: objects are abelian groups, morphisms are group homomorphisms. This is a full subcategory of Grp.
- Ring: objects are (unital) rings, morphisms are unital ring homomorphisms.
- CRing: objects are commutative unital rings, morphisms are unital ring homomorphisms. A full subcategory of Ring.
- Top: objects are topological spaces, morphisms are continuous maps.
- Haus: objects are Hausdorff spaces, morphisms are continuous maps. A full subcategory of Top.
- Vect\(_k\): objects are vector spaces over a fixed field \(k\), morphisms are \(k\)-linear maps.
- R-Mod: for a ring \(R\), objects are left \(R\)-modules, morphisms are \(R\)-module homomorphisms. When \(R = \mathbb{Z}\), this recovers Ab.
- Top\(_*\): objects are pointed topological spaces \((X, x_0)\), morphisms are continuous maps preserving the basepoint. The fundamental group is a functor from this category to Grp.
Products in the poset category are greatest lower bounds (meets) and coproducts are least upper bounds (joins). This observation connects order theory to category theory and will recur throughout the course when we define limits and colimits.
This observation makes the dictionary between category theory and monoid theory explicit. A functor from a one-object category \(M\) to Set is precisely a (left) \(M\)-set — a set equipped with a left action of \(M\). A functor from \(M\) to Vect\(_k\) is a representation of the monoid \(M\) over \(k\). The theory of group actions and representation theory are instances of the theory of functors from one-object categories.
Groupoids arise naturally in the study of symmetries with multiple “base points” — for example, in the theory of covering spaces, where deck transformations form a groupoid, or in stack theory, where symmetry groups of different objects may vary. The shift from groups to groupoids is part of the broader categorical perspective: instead of fixing a base point, one works with all base points simultaneously.
1.4 Monomorphisms, Epimorphisms, and Isomorphisms
In each of our concrete categories, the “injective” and “surjective” morphisms play a special role. Category theory captures these notions intrinsically, in terms of cancellation properties rather than elements.
- \(f\) is a monomorphism (or mono) if for all objects \(X\) and all \(g, h : X \to A\), \(f \circ g = f \circ h\) implies \(g = h\). We write \(f : A \hookrightarrow B\).
- \(f\) is an epimorphism (or epi) if for all objects \(Y\) and all \(g, h : B \to Y\), \(g \circ f = h \circ f\) implies \(g = h\). We write \(f : A \twoheadrightarrow B\).
- \(f\) is an isomorphism if there exists \(g : B \to A\) with \(g \circ f = \mathrm{id}_A\) and \(f \circ g = \mathrm{id}_B\). We write \(f : A \xrightarrow{\sim} B\).
- \(f\) is a split monomorphism (or section) if there exists \(r : B \to A\) with \(r \circ f = \mathrm{id}_A\). We write \(r\) is a retraction of \(f\).
The categorical definitions match the set-theoretic ones in familiar categories.
- In Set, Grp, Ab, and R-Mod: monomorphisms are exactly injective homomorphisms, and isomorphisms are exactly bijective homomorphisms.
- In Set: epimorphisms are exactly surjective functions.
- In Grp and Ab: epimorphisms are exactly surjective homomorphisms.
The situation for epimorphisms is more subtle in other categories, as the next example shows.
Proof. Suppose \(f, g : \mathbb{Q} \to R\) are ring homomorphisms with \(f \circ i = g \circ i\), i.e., \(f(n) = g(n)\) for all \(n \in \mathbb{Z}\). Since \(f\) and \(g\) are ring homomorphisms, \(f(1) = g(1) = 1_R\). For any \(p/q \in \mathbb{Q}\) with \(q \neq 0\), we have \(f(p) = g(p)\) and \(f(1/q) \cdot f(q) = f(1) = 1_R\), so \(f(1/q) = f(q)^{-1}\). Similarly \(g(1/q) = g(q)^{-1} = f(q)^{-1}\). Hence \(f(p/q) = f(p) \cdot f(1/q) = g(p) \cdot g(1/q) = g(p/q)\). So \(f = g\). \(\square\)
This example shows that in the category Ring, the notions of “epimorphism” and “surjection” genuinely differ. The inclusion \(\mathbb{Z} \hookrightarrow \mathbb{Q}\) is an epimorphism because any ring map out of \(\mathbb{Q}\) is determined by its values on \(\mathbb{Z}\). More generally, any localization map \(R \to S^{-1}R\) is an epimorphism in Ring.
A morphism that is both a monomorphism and an epimorphism is sometimes called a bimorphism. In an abelian category (Chapter 9), every bimorphism is an isomorphism — this is one of the key properties that makes abelian categories so useful.
1.5 Subcategories and the Historical Origins of Category Theory
\(\mathcal{D}\) is a full subcategory if \(\mathrm{Hom}_\mathcal{D}(A, B) = \mathrm{Hom}_\mathcal{C}(A, B)\) for all \(A, B \in \mathrm{Ob}(\mathcal{D})\): a full subcategory is determined entirely by its objects.
\(\mathcal{D}\) is a wide (or lluf) subcategory if \(\mathrm{Ob}(\mathcal{D}) = \mathrm{Ob}(\mathcal{C})\) but possibly with fewer morphisms.
- Ab is a full subcategory of Grp (same morphisms, restricted to abelian groups).
- Finite groups form a full subcategory of Grp.
- The category of finitely generated \(R\)-modules is a full subcategory of R-Mod.
- The category of bijections in Set (all sets, only bijective maps) is a wide but not full subcategory of Set: it has the same objects but fewer morphisms.
- The category hTop\(_*\) of pointed spaces with homotopy classes of basepoint-preserving maps is a subcategory of Top\(_*\).
The historical origins of category theory deserve a brief account, since the subject was deliberately constructed as a language for something else, not as an end in itself.
In the early 1940s, Samuel Eilenberg and Saunders Mac Lane were studying the algebraic invariants of topological spaces — specifically, the question of when two different constructions (two different homology theories, or two different cochain complexes) produce “the same” result. The standard notion of isomorphism was insufficient: two homology theories might be isomorphic for every space, but the isomorphisms might be defined by different, arbitrary choices (of triangulations, of basepoints, of representatives). Eilenberg and Mac Lane wanted to express the idea that two homology theories are isomorphic functorially — that the isomorphisms fit together coherently as the underlying space varies.
To make this precise, they had to define what it means for a construction to be “functorial” (vary naturally with the space), and then define what it means for two functors to be “naturally isomorphic.” These definitions required the notions of functor and natural transformation. But to define functors, one needs categories: the domain and codomain of a functor. Thus categories were invented as the minimal vocabulary needed to express naturality.
The paper “General Theory of Natural Equivalences” (Transactions of the AMS, 1945) introduced all three concepts simultaneously: categories, functors, and natural transformations. Mac Lane later recalled that colleagues initially dismissed the theory as “general abstract nonsense” — a phrase that became a badge of honor in the field. Within fifteen years, through Grothendieck’s work, category theory had become indispensable.
Chapter 2: Functors
A functor is a map between categories that respects all the structure: it sends objects to objects, morphisms to morphisms, and preserves composition and identities. Functors are the morphisms of the “category of all categories” (which, like the category of all sets, requires some care to make precise). More importantly, functors are the vehicle through which mathematical structures in one area are related to structures in another.
2.1 Definition and Basic Examples
- A function \(F : \mathrm{Ob}(\mathcal{C}) \to \mathrm{Ob}(\mathcal{D})\).
- For each pair \(A, B \in \mathrm{Ob}(\mathcal{C})\), a function \(F : \mathrm{Hom}_\mathcal{C}(A, B) \to \mathrm{Hom}_\mathcal{D}(F(A), F(B))\).
- Preservation of composition: \(F(g \circ f) = F(g) \circ F(f)\) for all composable \(f, g\).
- Preservation of identities: \(F(\mathrm{id}_A) = \mathrm{id}_{F(A)}\) for all \(A \in \mathrm{Ob}(\mathcal{C})\).
The composition of functors is again a functor. The identity functor \(\mathrm{Id}_\mathcal{C} : \mathcal{C} \to \mathcal{C}\) sends every object and morphism to itself. With these, there is a category Cat whose objects are (small) categories and whose morphisms are functors.
- \(U : \mathbf{Grp} \to \mathbf{Set}\), sending a group \(G\) to its underlying set \(|G|\) and a homomorphism to the underlying function. This functor forgets the group structure.
- \(U : \mathbf{Top} \to \mathbf{Set}\), sending a topological space to its underlying set and a continuous map to the underlying function.
- \(U : R\text{-}\mathbf{Mod} \to \mathbf{Ab}\), sending an \(R\)-module to its underlying abelian group, forgetting the \(R\)-module structure.
- \(U : \mathbf{Ring} \to \mathbf{Ab}\), sending a ring to its underlying additive group.
- \(F : \mathbf{Set} \to \mathbf{Grp}\), sending a set \(S\) to the free group \(F(S)\) on generators \(S\), and a function \(f : S \to T\) to the unique group homomorphism \(F(S) \to F(T)\) extending \(f\).
- \(F : \mathbf{Set} \to \mathbf{Vect}_k\), sending \(S\) to the free \(k\)-vector space \(k^{(S)}\) with basis \(S\).
- \(F : \mathbf{Set} \to R\text{-}\mathbf{Mod}\), sending \(S\) to the free \(R\)-module \(R^{(S)} = \bigoplus_{s \in S} R\).
The contravariant Hom functor \(h_A = \mathrm{Hom}_\mathcal{C}(-, A) : \mathcal{C}^{\mathrm{op}} \to \mathbf{Set}\) sends each object \(B\) to \(\mathrm{Hom}_\mathcal{C}(B, A)\), and each morphism \(f : B \to B'\) to the pre-composition function \(f^* = \mathrm{Hom}(f, A) : g \mapsto g \circ f\).
In R-Mod, these become \(\mathrm{Hom}_R(M, -)\) and \(\mathrm{Hom}_R(-, N)\), which are respectively a covariant and a contravariant functor landing in Ab (or even in R-Mod if \(R\) is commutative). Their failure to be exact is the foundational observation of homological algebra.
The Spec functor realizes the anti-equivalence between finitely generated reduced \(\mathbb{C}\)-algebras and affine algebraic varieties over \(\mathbb{C}\): this is the content of Hilbert’s Nullstellensatz, recast categorically.
2.2 Faithful, Full, and Essentially Surjective Functors
Not all functors are created equal. The following properties describe how well a functor “remembers” the structure of its source category.
- Faithful if for all \(A, B \in \mathrm{Ob}(\mathcal{C})\), the function \(F_{A,B} : \mathrm{Hom}_\mathcal{C}(A, B) \to \mathrm{Hom}_\mathcal{D}(FA, FB)\) is injective.
- Full if each \(F_{A,B}\) is surjective: every morphism \(FA \to FB\) in \(\mathcal{D}\) is of the form \(F(f)\) for some \(f : A \to B\) in \(\mathcal{C}\).
- Fully faithful if each \(F_{A,B}\) is bijective.
- Essentially surjective if every object \(D \in \mathrm{Ob}(\mathcal{D})\) is isomorphic to \(F(C)\) for some \(C \in \mathrm{Ob}(\mathcal{C})\).
Forgetful functors are typically faithful but not full. The forgetful functor \(\mathbf{Grp} \to \mathbf{Set}\) is faithful (an injective/surjective function between groups determines whether the homomorphism is a mono/epi), but it is not full: there are functions between group sets that are not group homomorphisms.
A concrete category is a category \(\mathcal{C}\) equipped with a faithful functor \(U : \mathcal{C} \to \mathbf{Set}\) (the “underlying set” functor). Most categories of mathematical structures — groups, rings, topological spaces, modules — are concrete in this sense. The usefulness of the concept is precisely that faithfulness means the functor “separates morphisms”: \(f \neq g\) in \(\mathcal{C}\) implies \(U(f) \neq U(g)\).
2.3 Equivalence of Categories
Isomorphism of categories — a functor \(F : \mathcal{C} \to \mathcal{D}\) with a strict inverse \(G : \mathcal{D} \to \mathcal{C}\) satisfying \(GF = \mathrm{Id}_\mathcal{C}\) and \(FG = \mathrm{Id}_\mathcal{D}\) on the nose — is too rigid to be useful. In practice, categories are “the same” when they are equivalent, meaning there is a pair of functors that compose to something isomorphic to the identity, not necessarily equal to it.
A single functor \(F : \mathcal{C} \to \mathcal{D}\) is an equivalence if and only if it is full, faithful, and essentially surjective.
The equivalence condition is strictly weaker than isomorphism. The distinction is analogous to the difference between isomorphism and homeomorphism of topological spaces, where homeomorphism (existence of a continuous bijection with continuous inverse) is the correct notion, not set-theoretic bijection alone.
This is not a curiosity: it is the starting point for noncommutative geometry (Connes), where one studies “noncommutative spaces” by studying noncommutative C*-algebras, using the Gelfand correspondence as motivation.
Chapter 3: Natural Transformations
Natural transformations are the reason categories were invented. They encode the idea that a “canonical” or “natural” construction is one that behaves coherently as the input varies: not just that there is an isomorphism \(A \cong B\) for each object in a family, but that these isomorphisms are compatible with all morphisms in the family. This is the precise content of naturality.
3.1 Definition and Examples
The naturality condition says that the components of \(\alpha\) “intertwine” \(F\) and \(G\): one can either first apply \(F\) and then the component \(\alpha\), or first apply the component \(\alpha\) and then \(G\), and get the same result.
Define \(\eta_V : V \to V^{**}\) by \(\eta_V(v) = \mathrm{ev}_v\) (the evaluation map: \(\mathrm{ev}_v(\phi) = \phi(v)\) for \(\phi \in V^*\)). Then \(\eta : \mathrm{Id} \Rightarrow (-)^{**}\) is a natural transformation: for any \(T : V \to W\), the naturality square
\[ \begin{array}{ccc} V & \xrightarrow{T} & W \\ \downarrow{\scriptstyle \eta_V} & & \downarrow{\scriptstyle \eta_W} \\ V^{\ast\ast} & \xrightarrow{T^{\ast\ast}} & W^{\ast\ast} \end{array} \]commutes. Indeed: \(\eta_W(T(v))(\phi) = \phi(T(v))\) and \(T^{**}(\eta_V(v))(\phi) = \eta_V(v)(T^*(\phi)) = (T^*\phi)(v) = \phi(T(v))\). So both paths give the same result.
In contrast, \(V \cong V^*\) for finite-dimensional \(V\), but there is no natural transformation \(\mathrm{Id} \Rightarrow (-)^*\): any such transformation would require, for each \(V\), an isomorphism \(V \to V^*\), and these cannot be chosen coherently without a choice of inner product or basis.
3.2 Natural Isomorphisms
Natural isomorphisms are the correct notion of “sameness” for functors. The double-dual example (Example 3.2) establishes that \(\mathrm{Id} \cong (-)^{**}\) as functors \(\mathbf{fdVect}_k \to \mathbf{fdVect}_k\). The single dual \((-)^*\) is not naturally isomorphic to the identity, even though \(V \cong V^*\) for each individual \(V\): the pathology is exactly the failure of naturality.
- In linear algebra, the "natural" inner product on the tensor product \(V \otimes W\) is determined by the bilinear form on \(V \times W\), and this is natural in \(V\) and \(W\).
- In commutative algebra, the natural map \(M \otimes_R R \to M\) (sending \(m \otimes r\) to \(rm\)) is a natural isomorphism of functors, while a map \(R \otimes_R M \to M\) requires a commutativity convention.
- In algebraic topology, the Poincaré duality isomorphism \(H^k(M) \cong H_{n-k}(M)\) for a closed orientable \(n\)-manifold \(M\) is natural in the sense of maps of manifolds — and this naturality is precisely what makes the duality theorem useful.
3.3 Functor Categories and Composition of Natural Transformations
Given two categories \(\mathcal{C}\) and \(\mathcal{D}\), the collection of all functors from \(\mathcal{C}\) to \(\mathcal{D}\) forms itself a category, with natural transformations as morphisms.
- Objects: functors \(F : \mathcal{C} \to \mathcal{D}\).
- Morphisms: natural transformations \(\alpha : F \Rightarrow G\).
- Composition: vertical composition of natural transformations \(\alpha : F \Rightarrow G\) and \(\beta : G \Rightarrow H\) is the natural transformation \(\beta \circ \alpha : F \Rightarrow H\) with components \((\beta \circ \alpha)_A = \beta_A \circ \alpha_A\).
- Identity: the identity natural transformation \(\mathrm{id}_F : F \Rightarrow F\) with components \((\mathrm{id}_F)_A = \mathrm{id}_{F(A)}\).
There is a second operation on natural transformations, called horizontal composition, which involves two natural transformations “side by side” (between adjacent pairs of functors).
This law is the categorical shadow of the fact that horizontal and vertical multiplication in a matrix of morphisms commute in a well-defined way.
Chapter 4: The Opposite Category and Duality
One of the most elegant features of category theory is the duality principle: every theorem of category theory has a dual theorem, obtained by reversing all arrows. This works because the definition of a category is self-dual: if one swaps sources and targets in every hom-set and reverses composition, the result is again a category. The dual of any categorical construction is again a categorical construction, obtained by applying the original construction to the opposite category.
4.1 The Opposite Category
- \(\mathrm{Ob}(\mathcal{C}^{\mathrm{op}}) = \mathrm{Ob}(\mathcal{C})\).
- \(\mathrm{Hom}_{\mathcal{C}^{\mathrm{op}}}(A, B) = \mathrm{Hom}_{\mathcal{C}}(B, A)\) for all objects \(A, B\).
- Composition in \(\mathcal{C}^{\mathrm{op}}\): given \(f \in \mathrm{Hom}_{\mathcal{C}^{\mathrm{op}}}(A, B) = \mathrm{Hom}_\mathcal{C}(B, A)\) and \(g \in \mathrm{Hom}_{\mathcal{C}^{\mathrm{op}}}(B, C) = \mathrm{Hom}_\mathcal{C}(C, B)\), their composite in \(\mathcal{C}^{\mathrm{op}}\) is \(f \circ_{\mathcal{C}} g \in \mathrm{Hom}_{\mathcal{C}^{\mathrm{op}}}(A, C) = \mathrm{Hom}_\mathcal{C}(C, A)\).
- Identity morphisms: \(\mathrm{id}_A^{\mathcal{C}^{\mathrm{op}}} = \mathrm{id}_A^\mathcal{C}\).
Informally, \(\mathcal{C}^{\mathrm{op}}\) is \(\mathcal{C}\) with all arrows reversed. Note that \((\mathcal{C}^{\mathrm{op}})^{\mathrm{op}} = \mathcal{C}\). A contravariant functor \(F : \mathcal{C} \to \mathcal{D}\) is the same thing as a covariant functor \(\mathcal{C}^{\mathrm{op}} \to \mathcal{D}\). This allows us to always work with covariant functors without loss of generality.
4.2 The Duality Principle
The duality principle is not merely a formal trick — it is a fundamental structural insight.
The following table records the most important dual pairs.
| Concept | Dual |
|---|---|
| Monomorphism | Epimorphism |
| Section (split mono) | Retraction (split epi) |
| Initial object | Terminal object |
| Product | Coproduct |
| Equalizer | Coequalizer |
| Kernel | Cokernel |
| Pullback | Pushout |
| Limit | Colimit |
| Left adjoint | Right adjoint |
| Projective module | Injective module |
| Projective resolution | Injective resolution |
| Left derived functor | Right derived functor |
| Tor | Ext |
| Filtered colimit | Cofiltered limit |
In practice, the duality principle means that one can prove only half of any symmetric pair of results (e.g., “limits” vs. “colimits”) and get the other half for free by dualizing. However, care is needed: not every statement is self-dual, and the dual of an important theorem may be trivial or may require independent verification in important special cases.
- Pontryagin Duality: The category of locally compact abelian groups is anti-equivalent to itself via \(G \mapsto \hat{G} = \mathrm{Hom}_{\mathrm{cts}}(G, \mathbb{T})\) (the Pontryagin dual). Under this duality, compact groups correspond to discrete groups, and \(\hat{\hat{G}} \cong G\) naturally.
- Gelfand Duality: As noted in Example 2.12, compact Hausdorff spaces are anti-equivalent to commutative unital C*-algebras. This is the foundation for noncommutative geometry.
- Stone Duality: The category of Boolean algebras is anti-equivalent to the category of Stone spaces (compact, totally disconnected Hausdorff spaces) via the functor of "ultrafilters" / "points of the Stone space." This connects logic (Boolean algebras = propositional theories) to topology.
- Koszul Duality: In the representation theory of algebras, certain graded algebras \(A\) have a "Koszul dual" \(A^!\) such that \((A^!)^! \cong A\), and the derived categories of \(A\)- and \(A^!\)-modules are related by an equivalence (the Koszul equivalence). This is a homological duality that generalizes classical Poincaré duality.
- Serre Duality: For a smooth projective variety \(X\) of dimension \(n\) over a field, there is a natural isomorphism \(H^k(X, \mathcal{F}) \cong H^{n-k}(X, \mathcal{F}^\vee \otimes \omega_X)^*\) where \(\omega_X\) is the canonical bundle. This is the algebraic geometry counterpart of Poincaré duality, and it arises from the adjunction between push-forward and pull-back functors via Grothendieck duality.
Chapter 5: Adjoint Functors
Adjoint functors are, in Mac Lane’s celebrated phrase, “the most important concept in all of category theory.” They formalize the idea of an “optimal solution to a universal problem”: given a functor \(G : \mathcal{D} \to \mathcal{C}\) that forgets structure, a left adjoint \(F : \mathcal{C} \to \mathcal{D}\) freely adds structure. The adjunction says precisely that maps from \(FA\) into \(B\) in \(\mathcal{D}\) are in natural bijection with maps from \(A\) into \(GB\) in \(\mathcal{C}\) — to map out of the free object is the same as to map into the underlying set. This single abstract pattern encompasses free groups, free modules, tensor products, Stone-Čech compactifications, sheafification, and hundreds of other constructions across mathematics.
5.1 The Hom-Set Formulation
commutes. Naturality in \(B\) is the analogous condition for maps \(\psi : B \to B'\).
The naturality conditions are the heart of the definition: they ensure that the bijection between hom-sets is not an accident at one particular pair \((A, B)\) but a coherent family of bijections fitting together as \(A\) and \(B\) vary. Without naturality, one could always find ad hoc bijections between hom-sets that say nothing meaningful.
5.2 The Unit-Counit Formulation
There is an equivalent formulation of adjunctions in terms of two natural transformations, the unit and counit, which are often more convenient to construct explicitly.
- The unit \(\eta : \mathrm{Id}_\mathcal{C} \Rightarrow GF\) by \(\eta_A = \alpha_{A, FA}(\mathrm{id}_{FA}) \in \mathrm{Hom}_\mathcal{C}(A, GFA)\).
- The counit \(\varepsilon : FG \Rightarrow \mathrm{Id}_\mathcal{D}\) by \(\varepsilon_B = \alpha_{GB, B}^{-1}(\mathrm{id}_{GB}) \in \mathrm{Hom}_\mathcal{D}(FGB, B)\).
The unit \(\eta_A : A \to GFA\) is the “universal map” from \(A\) into the underlying object of the free \(\mathcal{D}\)-object on \(A\). The counit \(\varepsilon_B : FGB \to B\) is the “evaluation map” — applying the free-object functor to the underlying set of \(B\) and then projecting back. The triangle identities say that these two maps are inverses in the appropriate sense.
- An adjunction bijection \(\alpha_{A,B} : \mathrm{Hom}_\mathcal{D}(FA, B) \xrightarrow{\sim} \mathrm{Hom}_\mathcal{C}(A, GB)\), natural in \(A\) and \(B\).
- Natural transformations \(\eta : \mathrm{Id}_\mathcal{C} \Rightarrow GF\) and \(\varepsilon : FG \Rightarrow \mathrm{Id}_\mathcal{D}\) satisfying the triangle identities.
5.3 Examples of Adjunctions
- Free groups: \(F : \mathbf{Set} \to \mathbf{Grp}\) (free group on a set of generators) \(\dashv\) \(U : \mathbf{Grp} \to \mathbf{Set}\) (underlying set). The adjunction bijection \(\mathrm{Hom}_{\mathbf{Grp}}(F(S), G) \cong \mathrm{Hom}_{\mathbf{Set}}(S, U(G))\) says: a group homomorphism from the free group on \(S\) is completely determined by a function from \(S\) into the underlying set of \(G\). The unit \(\eta_S : S \to U(F(S))\) sends each generator to itself (as a word of length one).
- Free modules: \(F : \mathbf{Set} \to R\text{-}\mathbf{Mod}\) (free module \(R^{(S)} = \bigoplus_{s \in S} R\)) \(\dashv\) \(U : R\text{-}\mathbf{Mod} \to \mathbf{Set}\). The bijection \(\mathrm{Hom}_R(R^{(S)}, M) \cong \mathrm{Hom}_{\mathbf{Set}}(S, M)\) says that \(R\)-module maps from the free module on \(S\) correspond to functions from \(S\) into \(M\): a module map is determined by its values on the basis elements.
- Abelianization: \((-)^{\mathrm{ab}} : \mathbf{Grp} \to \mathbf{Ab}\) \(\dashv\) \(\iota : \mathbf{Ab} \hookrightarrow \mathbf{Grp}\) (inclusion). The bijection \(\mathrm{Hom}_{\mathbf{Ab}}(G^{\mathrm{ab}}, A) \cong \mathrm{Hom}_{\mathbf{Grp}}(G, \iota(A))\) says that group homomorphisms from \(G\) to an abelian group \(A\) are the same as abelian group homomorphisms from \(G^{\mathrm{ab}}\). This is the universal property of abelianization.
- Polynomial rings: \(k[-] : \mathbf{Set} \to \mathbf{CRing}\) (polynomial ring) \(\dashv\) \(U : \mathbf{CRing} \to \mathbf{Set}\) (underlying set). The bijection \(\mathrm{Hom}_{\mathbf{CRing}}(k[x_1, \ldots, x_n], R) \cong \mathrm{Hom}_{\mathbf{Set}}(\{x_1, \ldots, x_n\}, R)\) says that a ring map from a polynomial ring is determined by the images of the variables — exactly the "evaluation" principle of ring theory.
Examples: (i) For a ring \(R\) and module \(M\), the “annihilator” construction gives a Galois connection between subsets of \(R\) and subsets of \(M\). (ii) In Galois theory, there is a Galois connection between subgroups of the Galois group and intermediate fields of a field extension. (iii) In lattice theory, the closure operator on a lattice arises as the composite \(GF\) of a Galois connection \(F \dashv G\).
5.4 The Tensor-Hom Adjunction
The single most important adjunction for homological algebra is the Tensor-Hom adjunction, which relates the tensor product and the Hom functor for modules.
We first recall the construction of the tensor product. Let \(R\) be a commutative ring (or more generally, let \(M\) be a right \(R\)-module and \(N\) a left \(R\)-module). The tensor product \(M \otimes_R N\) is the abelian group generated by symbols \(m \otimes n\) for \(m \in M, n \in N\), subject to the relations making \((m, n) \mapsto m \otimes n\) \(R\)-bilinear: \((m+m') \otimes n = m \otimes n + m' \otimes n\), \(m \otimes (n+n') = m \otimes n + m \otimes n'\), and \(mr \otimes n = m \otimes rn\) for \(r \in R\).
Define \(\Psi : \mathrm{Hom}_R(M, \mathrm{Hom}_R(N, P)) \to \mathrm{Hom}_R(M \otimes_R N, P)\) by sending \(g : M \to \mathrm{Hom}_R(N, P)\) to the map \(\Psi(g) : M \otimes_R N \to P\) determined by \(\Psi(g)(m \otimes n) = g(m)(n)\). This is well-defined by the universal property of the tensor product: the map \((m, n) \mapsto g(m)(n)\) is \(R\)-bilinear, so it factors uniquely through \(M \otimes_R N\).
One checks that \(\Phi\) and \(\Psi\) are mutually inverse: \(\Phi(\Psi(g))(m)(n) = \Psi(g)(m \otimes n) = g(m)(n)\), so \(\Phi\Psi = \mathrm{id}\); and \(\Psi(\Phi(f))(m \otimes n) = \Phi(f)(m)(n) = f(m \otimes n)\), so \(\Psi\Phi = \mathrm{id}\). Naturality in \(M\) and \(P\) is verified by diagram chasing. \(\square\)
The Tensor-Hom adjunction has an immediate and fundamental consequence for exactness. Since \(- \otimes_R N\) is a left adjoint, it preserves all colimits — in particular, it is right exact (it preserves cokernels, which are colimits). Similarly, since \(\mathrm{Hom}_R(N, -)\) is a right adjoint, it preserves all limits — in particular, it is left exact (it preserves kernels). These exactness properties are the foundational observation of homological algebra: the failure of full exactness is what gives rise to the derived functors Tor and Ext.
5.5 Properties of Adjunctions
- Right Adjoints Preserve Limits (RAPL): If \(F \dashv G\) and a limit \(\varprojlim D\) exists in \(\mathcal{D}\), then \(G(\varprojlim D) \cong \varprojlim (G \circ D)\).
- Left Adjoints Preserve Colimits (LAPC): If \(F \dashv G\) and a colimit \(\varinjlim D\) exists in \(\mathcal{C}\), then \(F(\varinjlim D) \cong \varinjlim (F \circ D)\).
RAPL/LAPC has immediate applications. The forgetful functor \(U : \mathbf{Grp} \to \mathbf{Set}\) is right adjoint to the free group functor, so it preserves all limits: the underlying set of a product of groups is the product of the underlying sets. The tensor product \(M \otimes_R -\) is left adjoint to \(\mathrm{Hom}_R(M, -)\), so it preserves colimits: tensor product distributes over direct sums, \(M \otimes_R \bigoplus_i N_i \cong \bigoplus_i (M \otimes_R N_i)\).
5.6 Monads
Every adjunction generates a monad, a fundamental construction that encompasses free algebras, closure operators, and computational effects (in the theory of programming languages).
- Associativity: \(\mu \circ T\mu = \mu \circ \mu T\) (as natural transformations \(T^3 \Rightarrow T\)).
- Unit laws: \(\mu \circ T\eta = \mathrm{id}_T = \mu \circ \eta T\).
- The free group adjunction \(F \dashv U : \mathbf{Grp} \to \mathbf{Set}\) gives the free group monad \(T\) on Set: \(T(S)\) is the free group on \(S\) (as a set), \(\eta_S : S \to T(S)\) sends each element to the corresponding generator, and \(\mu_S : T(T(S)) \to T(S)\) "evaluates" a word of words into a single word (concatenation after substitution). An algebra for this monad is precisely a group.
- The free module adjunction gives the free \(R\)-module monad on Set, whose algebras are \(R\)-modules.
- The power set functor \(\mathcal{P} : \mathbf{Set} \to \mathbf{Set}\) carries a monad structure: \(\eta_S(x) = \{x\}\) (singleton) and \(\mu_S : \mathcal{P}(\mathcal{P}(S)) \to \mathcal{P}(S)\) is \(A \mapsto \bigcup A\) (union). Algebras for this monad are complete semilattices.
Beck’s monadicity theorem (Barr-Beck theorem) gives conditions under which a functor \(U : \mathcal{D} \to \mathcal{C}\) is “monadic” — i.e., \(\mathcal{D}\) is equivalent to the category of algebras for the monad \(GF\). This theorem is the foundation for the categorical approach to universal algebra (Lawvere’s thesis, 1963) and for descent theory in algebraic geometry.
Chapter 6: The Yoneda Lemma
The Yoneda lemma is the most fundamental result of category theory, and yet it is surprisingly simple to state and prove. Its import is philosophical as much as technical: it says that a mathematical object is completely determined by its “relationships to all other objects.” More precisely, a category embeds faithfully (and fully) into its category of presheaves — functors \(\mathcal{C}^{\mathrm{op}} \to \mathbf{Set}\) — and this embedding is natural. From the Yoneda lemma one derives the theory of representable functors, which underlies Grothendieck’s functor-of-points approach to algebraic geometry, the theory of classifying spaces in algebraic topology, and the theory of universal properties throughout mathematics.
6.1 Representable Functors
Representable functors are fundamental because they are completely determined by a single object (the representing object) and a single element (the “universal element” in the image of \(\mathrm{id}_A\) under the natural isomorphism). The following examples illustrate the ubiquity of representability.
- The forgetful functor \(U : \mathbf{Grp} \to \mathbf{Set}\) is represented by the infinite cyclic group \(\mathbb{Z}\): \(\mathrm{Hom}_{\mathbf{Grp}}(\mathbb{Z}, G) \cong U(G)\) naturally, since a group homomorphism \(\mathbb{Z} \to G\) is determined by the image of \(1\). The representing object \(\mathbb{Z}\) is the free group on one generator, and the universal element is \(1 \in U(\mathbb{Z})\).
- The forgetful functor \(U : \mathbf{Ring} \to \mathbf{Set}\) is represented by \(\mathbb{Z}[x]\): \(\mathrm{Hom}_{\mathbf{Ring}}(\mathbb{Z}[x], R) \cong U(R)\), since a ring homomorphism from \(\mathbb{Z}[x]\) is determined by the image of \(x\) (the evaluation map).
- In algebraic geometry, the functor \(F : \mathbf{CRing} \to \mathbf{Set}\) sending \(R\) to the set of solutions \(\{(r_1, \ldots, r_n) \in R^n : f_1(r_1, \ldots, r_n) = \cdots = f_k(r_1, \ldots, r_n) = 0\}\) of a system of polynomial equations is represented by the ring \(\mathbb{Z}[x_1, \ldots, x_n]/(f_1, \ldots, f_k)\). This is the starting point of Grothendieck's theory of schemes as representable functors \(\mathbf{CRing} \to \mathbf{Set}\).
- The functor \(\mathrm{Der}_k(-, M) : k\text{-}\mathbf{CAlg} \to \mathbf{Ab}\) sending a \(k\)-algebra \(C\) to the module of \(k\)-derivations \(C \to M\) is represented by the module of Kähler differentials \(\Omega_{C/k}\): \(\mathrm{Der}_k(C, M) \cong \mathrm{Hom}_C(\Omega_{C/k}, M)\). See §6.4 below.
6.2 The Yoneda Lemma
So \(\Psi(\Phi(\eta))_B = \eta_B\) for all \(B\), meaning \(\Psi\Phi(\eta) = \eta\). \(\square\)
The proof reveals the Yoneda lemma’s content: a natural transformation out of a representable functor is completely determined by what it does to the identity morphism — the “universal element.” There is no choice to make at any other object, because naturality forces the entire transformation.
6.3 The Yoneda Embedding
The Yoneda embedding has profound consequences. It says that \(\mathcal{C}\) sits inside the “presheaf category” \([\mathcal{C}^{\mathrm{op}}, \mathbf{Set}]\) as a full subcategory. Objects of \(\mathcal{C}\) are “determined by their relationships to all other objects”: if \(\mathrm{Hom}(-, A) \cong \mathrm{Hom}(-, B)\) as functors, then \(A \cong B\). This is the categorical analogue of Cayley’s theorem in group theory (every group embeds in a symmetric group) — but the Yoneda embedding works for all categories simultaneously.
6.4 Presheaves and Sheaves
When \(\mathcal{C} = \mathbf{Top}_X\) (the category of open sets of a topological space \(X\), with inclusions as morphisms), a presheaf \(F : \mathbf{Top}_X^{\mathrm{op}} \to \mathbf{Set}\) assigns to each open set \(U \subseteq X\) a set \(F(U)\) of “sections over \(U\),” and to each inclusion \(V \subseteq U\) a “restriction map” \(\rho_{U,V} = F(V \hookrightarrow U) : F(U) \to F(V)\), satisfying: \(\rho_{U,U} = \mathrm{id}\) and \(\rho_{V,W} \circ \rho_{U,V} = \rho_{U,W}\).
- Locality (Separation): If \(s, t \in F(U)\) satisfy \(\rho_{U, U_i}(s) = \rho_{U, U_i}(t)\) for all \(i\), then \(s = t\).
- Gluing: If \(\{s_i \in F(U_i)\}_{i \in I}\) is a compatible family (i.e., \(\rho_{U_i, U_i \cap U_j}(s_i) = \rho_{U_j, U_i \cap U_j}(s_j)\) for all \(i, j\)), then there exists \(s \in F(U)\) with \(\rho_{U, U_i}(s) = s_i\) for all \(i\).
The prototypical sheaf is the sheaf of continuous functions: \(\mathcal{O}_X(U) = \{f : U \to \mathbb{R} : f \text{ is continuous}\}\), with restriction maps given by restriction of functions. Locality holds because a continuous function is determined by its local values; gluing holds because functions that agree on overlaps can be glued. Many other geometric sheaves — sheaves of holomorphic functions, sheaves of smooth differential forms, sheaves of algebraic sections of a vector bundle — are fundamental objects of geometry.
6.5 Kähler Differentials
The representability of the derivation functor provides an important application of the Yoneda lemma in commutative algebra.
Chapter 7: Limits and Colimits
Limits and colimits are the categorical generalizations of a vast array of constructions: products, fiber products, inverse limits, kernels, intersections on the limit side; and coproducts, pushouts, direct limits, cokernels, quotients on the colimit side. They provide a common framework for constructions involving “universal objects” satisfying “existence and uniqueness” conditions. The fundamental theme is that a limit is a terminal object in a category of cones (candidates for the universal object), and a colimit is an initial object in the dual category of cocones.
7.1 Initial and Terminal Objects
- In Set: \(\emptyset\) is the initial object (there is a unique function from the empty set to any set, namely the empty function), and any singleton \(\{*\}\) is terminal.
- In Grp: the trivial group \(\{e\}\) is both initial and terminal (a zero object). The unique group homomorphism between any two groups factors through the trivial group.
- In Ab and R-Mod: the zero module \(0\) is a zero object.
- In Ring (unital): \(\mathbb{Z}\) is the initial ring (there is a unique ring homomorphism \(\mathbb{Z} \to R\), sending \(n\) to \(n \cdot 1_R\)), and the zero ring \(0\) (in which \(0 = 1\)) is the terminal ring.
- In Field (non-zero fields): there is no initial or terminal object, because there are no ring homomorphisms between fields of different characteristics.
When a category has a zero object \(0\), one defines the zero morphism \(0_{A,B} : A \to B\) as the composite \(A \to 0 \to B\). In categories with zero morphisms (preadditive categories), one can define kernels and cokernels as equalizers and coequalizers with the zero morphism, recovering the familiar algebraic notion.
7.2 Products and Coproducts
Dually, a coproduct \(\coprod_{i \in I} A_i\) has injections \(\iota_j : A_j \to \coprod_{i \in I} A_i\) with the dual universal property: every family \(\{f_j : A_j \to X\}\) factors uniquely through the coproduct.
| Category | Product | Coproduct |
|---|---|---|
| Set | Cartesian product \(A \times B\) | Disjoint union \(A \sqcup B\) |
| Grp | Direct product \(G \times H\) | Free product \(G * H\) |
| Ab | Direct product \(A \times B\) | Direct sum \(A \oplus B\) (finite) |
| R-Mod | Direct product \(\prod M_i\) | Direct sum \(\bigoplus M_i\) |
| Top | Product topology | Disjoint union (coproduct topology) |
| Ring | Direct product \(R \times S\) | Tensor product \(R \otimes_\mathbb{Z} S\) |
7.3 Equalizers and Coequalizers
A coequalizer of \((f, g)\) is an object \(Q\) and a morphism \(q : B \to Q\) with \(q \circ f = q \circ g\), universal with this property.
In a category with zero objects, the equalizer of \(f\) and \(0_{A,B}\) is called the kernel of \(f\) (written \(\ker f \to A\)), and the coequalizer of \(f\) and \(0_{A,B}\) is the cokernel of \(f\) (written \(B \to \mathrm{coker}\,f\)).
7.4 Pullbacks and Pushouts
Given morphisms \(f : C \to A\) and \(g : C \to B\), the pushout (amalgamated sum) \(A \sqcup_C B\) is the universal object with morphisms \(\iota_A : A \to A \sqcup_C B\) and \(\iota_B : B \to A \sqcup_C B\) with \(\iota_A \circ f = \iota_B \circ g\).
- In Set: \(A \times_C B = \{(a, b) \in A \times B : f(a) = g(b)\}\) (fiber product of sets).
- In R-Mod: \(A \times_C B = \{(a, b) \in A \oplus B : f(a) = g(b)\}\) and \(A \sqcup_C B = (A \oplus B)/\langle f(c) - g(c) : c \in C\rangle\).
- In Top: Pullbacks are fiber products with the subspace topology; pushouts include adjunction spaces (attaching cells) — the basic construction of CW complexes.
- In CRing: \(A \sqcup_C B = A \otimes_C B\) (the tensor product over \(C\)) — the categorical pushout corresponds to the algebraic tensor product. In geometry, \(\mathrm{Spec}(A \otimes_C B) = \mathrm{Spec}(A) \times_{\mathrm{Spec}(C)} \mathrm{Spec}(B)\) (fiber product of affine schemes).
7.5 General Limits and Colimits
A cone over \(D\) with apex} \(N\) is an object \(N \in \mathrm{Ob}(\mathcal{C})\) together with morphisms \(\varphi_j : N \to D(j)\) for each \(j \in \mathrm{Ob}(\mathcal{J})\), such that for every morphism \(u : j \to j'\) in \(\mathcal{J}\), the triangle \(D(u) \circ \varphi_j = \varphi_{j'}\) commutes.
The limit (or inverse limit) \(\varprojlim D\) is a terminal cone: a cone \((L, \{\lambda_j\})\) through which every other cone factors uniquely. The colimit (or direct limit) \(\varinjlim D\) is an initial cocone.
Products are limits over the discrete diagram \(\mathcal{J}\) with objects \(\{i\}_{i \in I}\) and no non-identity morphisms. Equalizers are limits over the diagram \(\bullet \rightrightarrows \bullet\). Pullbacks are limits over the diagram \(\bullet \to \bullet \leftarrow \bullet\). The following theorem shows these are essentially the only cases.
7.6 Filtered Colimits and the Govorov-Lazard Theorem
- Non-empty: \(\mathcal{J}\) has at least one object.
- Bounded above: For any two objects \(j, k \in \mathcal{J}\), there exists an object \(l\) and morphisms \(j \to l\) and \(k \to l\).
- Equalization: For any two parallel morphisms \(f, g : j \rightrightarrows k\), there exists a morphism \(h : k \to l\) with \(h \circ f = h \circ g\).
The classical example of a filtered colimit is the direct limit of a directed system of modules: \(M_1 \to M_2 \to M_3 \to \cdots\), with colimit \(\varinjlim M_n = \bigoplus_n M_n / \sim\) where \(m_i \sim f_i(m_i)\) for the transition maps \(f_i : M_i \to M_{i+1}\).
Filtered colimits are important because they commute with finite limits in the category of sets (and in module categories), unlike general colimits. This property is the key technical ingredient in the Govorov-Lazard theorem.
For the “only if” direction, given a flat module \(M\), one constructs the category \(\mathcal{J}_M\) of all finitely generated free modules mapping to \(M\) (with morphisms the commuting triangles). This is a filtered category (by the flatness of \(M\) and the fact that finitely generated free modules over a ring form a filtered system), and the colimit of the diagram \(\mathcal{J}_M \to R\text{-}\mathbf{Mod}\) (sending each free module to itself) is \(M\). \(\square\)
The Govorov-Lazard theorem has a beautiful geometric interpretation: a module is flat (the tensor product with it is exact) exactly when it can be “approximated” by free modules in a directed (colimit) sense. In algebraic geometry, a morphism of schemes is flat precisely when the corresponding sheaves are flat modules, and this “local freeness up to a filtered colimit” is the algebro-geometric content of flatness.
7.7 RAPL and LAPC: Proof
The dual statement — left adjoints preserve colimits — follows by applying the RAPL theorem to the opposite categories. As immediate corollaries: the forgetful functor \(\mathbf{Grp} \to \mathbf{Set}\) (right adjoint to the free group functor) preserves all limits; tensor product \(- \otimes_R N\) (left adjoint to \(\mathrm{Hom}_R(N, -)\)) preserves all colimits; the free group functor \(\mathbf{Set} \to \mathbf{Grp}\) (left adjoint to the forgetful functor) preserves all colimits but not limits.
7.8 Kan Extensions
Kan extensions are the most general limit/colimit-type construction in category theory. Introduced by Daniel Kan in 1958, they generalize both limits and colimits, and Mac Lane’s famous dictum is: “All concepts are Kan extensions.”
This is a colimit over the comma category \(K \downarrow d\) (whose objects are pairs \((c, u)\) with \(c \in \mathcal{C}\) and \(u : K(c) \to d\) in \(\mathcal{D}\)).
Chapter 8: Monoidal Categories and Enriched Categories
This chapter introduces the notion of a monoidal category — a category with a “tensor product” operation satisfying certain coherence conditions — and the related concept of enrichment, which allows hom-sets to be replaced by “hom-objects” valued in a monoidal category. These structures provide the natural home for the tensor-Hom adjunction, for chain complexes, and for the abstract framework underlying both homological algebra and homotopy theory.
8.1 Monoidal Categories
- \(\mathcal{C}\) is a category, \(\otimes : \mathcal{C} \times \mathcal{C} \to \mathcal{C}\) is a functor (the tensor product), and \(I \in \mathrm{Ob}(\mathcal{C})\) is the unit object.
- \(\alpha_{A,B,C} : (A \otimes B) \otimes C \xrightarrow{\sim} A \otimes (B \otimes C)\) is a natural isomorphism (associator).
- \(\lambda_A : I \otimes A \xrightarrow{\sim} A\) and \(\rho_A : A \otimes I \xrightarrow{\sim} A\) are natural isomorphisms (left and right unitors).
The coherence theorem means we can write tensor products of many objects unambiguously without parentheses, since all “legal” bracketings are related by canonical isomorphisms.
- \((\mathbf{Set}, \times, \{*\})\): the Cartesian product of sets, with the singleton as unit.
- \((\mathbf{Ab}, \otimes_\mathbb{Z}, \mathbb{Z})\): tensor product of abelian groups, with \(\mathbb{Z}\) as unit.
- \((R\text{-}\mathbf{Mod}, \otimes_R, R)\): tensor product of \(R\)-modules, with \(R\) as unit. When \(R\) is commutative, this is a symmetric monoidal category.
- \((\mathbf{Vect}_k, \otimes_k, k)\): tensor product of vector spaces.
- \((\mathbf{Ch}(R), \otimes, R[0])\): the category of chain complexes of \(R\)-modules, with the tensor product of complexes \((A \otimes B)_n = \bigoplus_{p+q=n} A_p \otimes_R B_q\) and differential \(d(a \otimes b) = da \otimes b + (-1)^{|a|} a \otimes db\) (the Koszul sign rule). The unit is \(R\) concentrated in degree 0.
- \((\mathbf{Cat}, \times, \mathbf{1})\): the product of small categories, with the category with one object as unit.
The categories of sets, abelian groups, \(R\)-modules (for commutative \(R\)), and chain complexes are all symmetric monoidal. The category of representations of a group \(G\) over a field is symmetric monoidal (under tensor product), and this monoidal structure is the basis for the theory of symmetric and exterior products in representation theory.
8.2 Closed Monoidal Categories
- \((\mathbf{Set}, \times, \{*\})\) is Cartesian closed: \([B, C] = \mathrm{Hom}_{\mathbf{Set}}(B, C)\) is the set of functions from \(B\) to \(C\), and the adjunction is the classical "currying" bijection \(\mathrm{Hom}(A \times B, C) \cong \mathrm{Hom}(A, C^B)\).
- \((R\text{-}\mathbf{Mod}, \otimes_R, R)\) is closed: \([N, P] = \mathrm{Hom}_R(N, P)\), and the adjunction is the Tensor-Hom adjunction (Theorem 5.9).
- \((\mathbf{Cat}, \times, \mathbf{1})\) is Cartesian closed: \([\mathcal{C}, \mathcal{D}] = \mathrm{Fun}(\mathcal{C}, \mathcal{D})\) is the functor category.
8.3 Enriched Categories
The concept of enriched categories replaces the hom-sets of an ordinary category by objects in some monoidal category \(\mathcal{V}\), called the “enriching category.” This generalization is essential for understanding the abstract structure of homological algebra.
- A class of objects \(\mathrm{Ob}(\mathcal{C})\).
- For each pair \(A, B\), an object \(\mathcal{C}(A, B) \in \mathrm{Ob}(\mathcal{V})\) (the "hom-object").
- Composition morphisms \(\circ_{A,B,C} : \mathcal{C}(B, C) \otimes \mathcal{C}(A, B) \to \mathcal{C}(A, C)\) in \(\mathcal{V}\).
- Identity morphisms \(i_A : I \to \mathcal{C}(A, A)\) in \(\mathcal{V}\).
- A Set-enriched category is an ordinary category.
- An Ab-enriched category (hom-groups are abelian groups, composition is bilinear) is precisely a preadditive category — the starting point of Chapter 9's development of abelian categories.
- A Ch\((R)\)-enriched category (hom-objects are chain complexes, composition respects the differential) is a differential graded (dg) category. The derived category \(\mathbf{D}(R)\) of chain complexes is most naturally understood as a dg-category; this is the modern perspective on homological algebra initiated by Bondal-Kapranov (1990) and Keller (1994).
- A Cat-enriched category (hom-objects are categories, composition involves functors) is a (strict) 2-category.
Part II: Abelian Categories and Module Theory
The transition from abstract category theory to homological algebra passes through the concept of an abelian category. In Part I, we studied categories in great generality — morphisms between objects, without any algebraic structure on the hom-sets themselves. In Part II, we specialize dramatically: we require that hom-sets carry the structure of abelian groups (compatible with composition), that kernels and cokernels exist, and that a certain exactness condition holds that makes diagram-chasing valid. The resulting structure — an abelian category — is the natural habitat for all of homological algebra.
The historical development of abelian categories is itself a beautiful story. Buchsbaum (1955) and Grothendieck (1957) axiomatized the properties of categories of modules and sheaves that are needed to do homological algebra, extracting the essential features and discarding all that is inessential. The payoff was twofold: first, proofs about modules became proofs about all abelian categories simultaneously (including sheaves on topological spaces, representations of quivers, categories of filtered modules, and many more); second, and more profoundly, the abstract framework clarified why homological algebra works, reducing it to a few simple axioms from which everything else flows by pure categorical reasoning.
Chapter 9: Abelian Categories
9.1 Preadditive and Additive Categories
We build up the structure of an abelian category in stages. The first stage is to require that hom-sets carry abelian group structure compatible with composition — this is the notion of a preadditive category, also called an Ab-enriched category (as discussed briefly in §8.3).
- For each pair of objects \(A, B\), the hom-set \(\mathrm{Hom}_\mathcal{A}(A, B)\) carries the structure of an abelian group (written additively).
- Composition is bilinear: for \(f, g \in \mathrm{Hom}(A, B)\) and \(h \in \mathrm{Hom}(B, C)\) and \(k \in \mathrm{Hom}(C', A)\), we have \(h \circ (f + g) = h \circ f + h \circ g\) and \((f + g) \circ k = f \circ k + g \circ k\).
In a preadditive category, there is a distinguished “zero morphism” \(0_{A,B} : A \to B\) for every pair of objects. These zero morphisms are compatible in the sense that \(f \circ 0 = 0\) and \(0 \circ g = 0\) for composable morphisms \(f, g\). This is the categorical analogue of the fact that composing with the zero map yields the zero map.
The presence of a zero object strengthens the structure considerably. Recall from §7.1 that a zero object \(\mathbf{0}\) is an object that is both initial and terminal; the zero morphism \(0_{A,B} : A \to B\) then factors as \(A \to \mathbf{0} \to B\). In any preadditive category with a zero object, the zero morphisms are precisely these factorizations through \(\mathbf{0}\).
The biproduct \(A \oplus B\) is simultaneously a product (via \(p_1, p_2\)) and a coproduct (via \(i_1, i_2\)) — this unification of product and coproduct is a purely additive phenomenon. In Set, products and coproducts differ (one is Cartesian product, the other is disjoint union). In Ab or \(R\text{-}\mathbf{Mod}\), the direct sum \(M \oplus N\) serves as both the product and the coproduct in the additive sense, because the category is enriched over abelian groups.
- The category \(R\text{-}\mathbf{Mod}\) of left \(R\)-modules is additive: the abelian group structure on \(\mathrm{Hom}_R(M, N)\) is pointwise addition of homomorphisms, and the direct sum \(M \oplus N\) is the biproduct.
- The category \(\mathbf{Ab}\) of abelian groups is additive (a special case of \(\mathbb{Z}\text{-}\mathbf{Mod}\)).
- The category \(\mathbf{Vect}_k\) of vector spaces over a field \(k\) is additive.
- The category of finitely generated free \(\mathbb{Z}\)-modules is additive (it is the full subcategory of \(\mathbf{Ab}\) on free abelian groups of finite rank). This example is important because it is additive but not abelian.
- The category \(\mathbf{Ch}(R)\) of chain complexes of \(R\)-modules is additive; the direct sum of complexes is computed degreewise.
9.2 Kernels, Cokernels, Images, and Coimages
In an additive category, we can ask for kernels and cokernels — categorical versions of the familiar notions from linear algebra. These generalize the concepts from §7.3 (equalizers and coequalizers) in the presence of the additive structure: the kernel of \(f : A \to B\) is the equalizer of \(f\) and \(0_{A,B}\).
- The kernel of \(f\) is a morphism \(\ker f : K \to A\) such that \(f \circ \ker f = 0\), universal with this property: for any \(g : X \to A\) with \(f \circ g = 0\), there is a unique \(\bar{g} : X \to K\) with \(\ker f \circ \bar{g} = g\).
- The cokernel of \(f\) is a morphism \(\mathrm{coker}\, f : B \to C\) such that \(\mathrm{coker}\, f \circ f = 0\), universal with this property: for any \(h : B \to Y\) with \(h \circ f = 0\), there is a unique \(\bar{h} : C \to Y\) with \(\bar{h} \circ \mathrm{coker}\, f = h\).
In \(R\text{-}\mathbf{Mod}\), the kernel of \(f : M \to N\) is the submodule \(\{m \in M : f(m) = 0\} \hookrightarrow M\), and the cokernel is the quotient \(N / \mathrm{im}(f)\). These are the familiar notions. The image of \(f\) is \(\mathrm{im}(f) = \ker(\mathrm{coker}\, f)\) — the kernel of the cokernel of \(f\). Dually, the coimage is \(\mathrm{coim}(f) = \mathrm{coker}(\ker f)\) — the cokernel of the kernel of \(f\). There is always a canonical morphism \(\mathrm{coim}(f) \to \mathrm{im}(f)\), and the condition that this be an isomorphism is precisely what it means for a category to be abelian.
- The image of \(f\) is \(\mathrm{im}(f) := \ker(\mathrm{coker}\, f)\), a subobject of \(B\).
- The coimage of \(f\) is \(\mathrm{coim}(f) := \mathrm{coker}(\ker f)\), a quotient of \(A\).
9.3 Abelian Categories: Definition and Examples
We now arrive at the central definition of this part of the course.
- Every morphism has a kernel and a cokernel.
- Every monomorphism is a kernel (of its cokernel).
- Every epimorphism is a cokernel (of its kernel).
The equivalence of these formulations is a theorem (see Freyd’s Abelian Categories, 1964). The condition that coimage equals image is the “First Isomorphism Theorem” at the categorical level: the image of \(f\) is isomorphic to \(A\) modulo the kernel of \(f\), just as in linear algebra or group theory.
The definition may look technical, but its consequences are enormous. In an abelian category, one can:
- Define short exact sequences \(0 \to A \to B \to C \to 0\).
- Perform diagram chases (the Snake Lemma, Five Lemma, etc.).
- Construct long exact sequences in homology.
- Define derived functors.
All of this machinery — the entire apparatus of homological algebra — is available in any abelian category, not just in \(R\text{-}\mathbf{Mod}\).
- \(R\text{-}\mathbf{Mod}\) for any ring \(R\) (left modules) is abelian. This is the fundamental example; it is the model from which the axioms were extracted.
- \(\mathbf{Ab} = \mathbb{Z}\text{-}\mathbf{Mod}\) is abelian.
- \(\mathbf{Vect}_k\) for any field \(k\) is abelian. This is a particularly simple abelian category: every object is projective and injective, all short exact sequences split, and global dimension is 0.
- The category \(\mathbf{Sh}(X, \mathbf{Ab})\) of sheaves of abelian groups on a topological space \(X\) is abelian. This was Grothendieck's primary motivation — sheaves of \(\mathcal{O}_X\)-modules on a scheme \(X\) are the context for algebraic geometry, and the abstract framework makes sheaf cohomology a special case of derived functor cohomology.
- The category of representations \(\mathbf{Rep}_k(G)\) of a group \(G\) over a field \(k\) is abelian (it is equivalent to \(kG\text{-}\mathbf{Mod}\) for the group algebra \(kG\)).
- The category of representations of a quiver \(Q\) (assignments of vector spaces to vertices and linear maps to arrows) is abelian. Gabriel's theorem (1972) classifies quivers of finite representation type.
- The functor category \([\mathcal{C}^{op}, \mathbf{Ab}]\) of contravariant functors from any small category \(\mathcal{C}\) to \(\mathbf{Ab}\) is abelian. This encompasses all of the above examples via appropriate choices of \(\mathcal{C}\).
- The category \(\mathbf{Top}\) of topological spaces is not abelian — it is not even preadditive (there is no natural way to add continuous maps).
- The category \(\mathbf{Grp}\) of all groups is not abelian — it is not preadditive since non-abelian groups do not admit addition of homomorphisms.
- The full subcategory of \(\mathbf{Ab}\) on free abelian groups is additive but not abelian: the cokernel of \(\mathbb{Z} \xrightarrow{\times 2} \mathbb{Z}\) is \(\mathbb{Z}/2\mathbb{Z}\), which is not free.
- The category of topological abelian groups (abelian groups with compatible topology) is additive and has kernels and cokernels, but is not abelian: the canonical map from coimage to image need not be an isomorphism. (A bijective continuous homomorphism of topological abelian groups need not be a homeomorphism.)
9.4 Exact Sequences
With the notion of kernel and image in hand, we can define exact sequences — the central tool of homological algebra.
- A sequence \(A \xrightarrow{f} B \xrightarrow{g} C\) is exact at \(B\) if \(\mathrm{im}(f) = \ker(g)\) (as subobjects of \(B\)).
- A longer sequence \(\cdots \to A_{n+1} \xrightarrow{f_{n+1}} A_n \xrightarrow{f_n} A_{n-1} \to \cdots\) is exact if it is exact at every term (i.e., \(\mathrm{im}(f_{n+1}) = \ker(f_n)\) for all \(n\)).
- A short exact sequence is an exact sequence of the form \(0 \to A \xrightarrow{f} B \xrightarrow{g} C \to 0\), meaning \(f\) is monic (injective), \(g\) is epic (surjective), and \(\mathrm{im}(f) = \ker(g)\).
In \(R\text{-}\mathbf{Mod}\), a short exact sequence \(0 \to A \to B \to C \to 0\) says that \(A\) embeds as a submodule of \(B\) and \(C \cong B/A\). Such sequences encode “extensions” of \(C\) by \(A\) — a theme that will be made precise in Chapter 16 via \(\mathrm{Ext}^1\).
- Left exact if for every short exact sequence \(0 \to A \to B \to C \to 0\) in \(\mathcal{A}\), the sequence \(0 \to FA \to FB \to FC\) is exact in \(\mathcal{B}\) (i.e., \(F\) preserves kernels).
- Right exact if \(FA \to FB \to FC \to 0\) is exact (i.e., \(F\) preserves cokernels).
- Exact if \(0 \to FA \to FB \to FC \to 0\) is exact.
The prototypical examples of these distinctions are the Hom functors and the tensor product, which we now state precisely. These were already discussed from the adjunction perspective in §5.4; here we state the exactness properties that will drive the need for derived functors in Part III.
- \(\mathrm{Hom}_R(M, -) : R\text{-}\mathbf{Mod} \to \mathbf{Ab}\) is left exact (covariant).
- \(\mathrm{Hom}_R(-, M) : R\text{-}\mathbf{Mod}^{op} \to \mathbf{Ab}\) is left exact (contravariant).
- If \(M\) is a right \(R\)-module, then \(M \otimes_R - : R\text{-}\mathbf{Mod} \to \mathbf{Ab}\) is right exact.
Injectivity of \(f_*\): If \(f_*(\phi) = f \circ \phi = 0\), then since \(f\) is monic, \(\phi = 0\).
Exactness at \(\mathrm{Hom}(M,B)\): \(g_* \circ f_* = 0\) since \(g \circ f = 0\). Conversely, if \(g \circ \phi = 0\), then \(\mathrm{im}(\phi) \subseteq \ker(g) = \mathrm{im}(f)\), so \(\phi\) factors through \(f\) (since \(f\) is a kernel of \(g\)), giving \(\phi = f_*(\psi)\) for some \(\psi\).
That \(g_*\) need not be surjective is shown by the example \(0 \to \mathbb{Z} \xrightarrow{\times 2} \mathbb{Z} \to \mathbb{Z}/2 \to 0\) with \(M = \mathbb{Z}/2\): a homomorphism \(\mathbb{Z}/2 \to \mathbb{Z}/2\) cannot lift to a homomorphism \(\mathbb{Z}/2 \to \mathbb{Z}\) since \(\mathbb{Z}\) is torsion-free. \(\square\)
The failure of surjectivity in the proof above is exactly the first \(\mathrm{Ext}\) group: \(\mathrm{Ext}^1_\mathbb{Z}(\mathbb{Z}/2, \mathbb{Z}) \cong \mathbb{Z}/2 \neq 0\), as we will compute in §16.3.
9.5 The Snake Lemma and the Five Lemma
The power of abelian categories manifests most vividly in the “diagram lemmas” — results that hold in every abelian category but whose proofs are most naturally given by element-chasing in \(R\text{-}\mathbf{Mod}\) (justified by Mitchell’s Embedding Theorem in Chapter 10). We give full proofs here.
Construction of \(\partial\): Given \(c \in \ker \gamma \subseteq C\), since \(g : B \to C\) is surjective, pick \(b \in B\) with \(g(b) = c\). Since \(g'(\beta(b)) = \gamma(g(b)) = \gamma(c) = 0\), we have \(\beta(b) \in \ker(g') = \mathrm{im}(f')\). So there is a unique \(a' \in A'\) with \(f'(a') = \beta(b)\). Define \(\partial(c) := [a'] \in \mathrm{coker}\,\alpha = A'/\mathrm{im}(\alpha)\).
Well-definedness: If we chose \(b_1, b_2\) both mapping to \(c\), then \(b_1 - b_2 \in \ker g = \mathrm{im}(f)\), say \(b_1 - b_2 = f(a)\). Then \(\beta(b_1) - \beta(b_2) = \beta f(a) = f'\alpha(a)\), so the corresponding \(a'_1 - a'_2 = \alpha(a) \in \mathrm{im}(\alpha)\), and \([a'_1] = [a'_2]\) in \(\mathrm{coker}\,\alpha\).
Exactness at \(\ker\gamma\): If \(c = g(b)\) with \(b \in \ker\beta\), then \(\beta(b) = 0\), so \(a' = 0\), so \(\partial(c) = 0\). Conversely, if \(\partial(c) = 0\), then the \(a'\) found above satisfies \(a' = \alpha(a)\) for some \(a \in A\). Then \(b - f(a)\) maps to \(c\) and satisfies \(\beta(b - f(a)) = \beta(b) - f'\alpha(a) = f'(a') - f'(a') = 0\).
The other exactness checks follow by similar element-chasing, which we leave to the reader. \(\square\)
The connecting homomorphism \(\partial\) is the fundamental mechanism by which short exact sequences give rise to long exact sequences in cohomology. We will exploit it systematically in Chapter 13.
- (Short five lemma) If \(f_1\) is epic and \(f_2, f_4\) are isos, then \(f_3\) is epic.
- If \(f_5\) is monic and \(f_2, f_4\) are isos, then \(f_3\) is monic.
Let \(a \in A_3\) with \(f_3(a) = 0\). Then the image of \(a\) in \(A_4\) maps to 0 in \(B_4\) (since \(f_4\) applied to it equals the image of \(f_3(a) = 0\)), so the image of \(a\) in \(A_4\) is zero (since \(f_4\) is injective). By exactness at \(A_4\), \(a\) maps from some \(a_2 \in A_2\). Then \(f_2(a_2)\) maps to 0 in \(B_3\) (since \(f_3(a) = 0\) and the square commutes), so by exactness at \(B_2\), \(f_2(a_2)\) is the image of some \(b_1 \in B_1\). Since \(f_1\) is surjective, write \(b_1 = f_1(a_1)\). The element \(a_2 - (\text{image of }a_1)\) in \(A_2\) maps to \(f_2(a_2) - f_2(\text{image of }a_1) = b_1 - b_1 = 0\) under \(f_2\), so since \(f_2\) is injective, \(a_2\) is the image of \(a_1 \in A_1\). But then \(a\) is the image of \(a_2\), which is 0 in \(A_3\) by exactness. Thus \(a = 0\). \(\square\)
Chapter 10: Mitchell’s Embedding Theorem
10.1 Statement of the Theorem
The fundamental question after defining abelian categories is: how much richer is the class of abelian categories beyond \(R\text{-}\mathbf{Mod}\)? Mitchell’s Embedding Theorem (1964) provides the decisive answer: for small abelian categories, not richer at all — every small abelian category embeds faithfully and exactly into \(R\text{-}\mathbf{Mod}\) for some ring \(R\). This is the categorical generalization of Cayley’s theorem for groups (every group embeds in a symmetric group).
- Full: every \(R\)-module homomorphism between objects in the image of \(F\) comes from a morphism in \(\mathcal{A}\).
- Faithful: distinct morphisms in \(\mathcal{A}\) map to distinct \(R\)-module maps.
- Exact: \(F\) preserves and reflects all exact sequences.
The theorem was proved by Barry Mitchell in his 1964 paper “The full imbedding theorem.” The ring \(R\) depends on \(\mathcal{A}\) and can be quite large; it is constructed from the endomorphism ring of an injective cogenerator of \([\mathcal{A}^{op}, \mathbf{Ab}]\).
10.2 Proof Strategy
The proof of Mitchell’s theorem is one of the triumphs of abstract category theory. We sketch the main steps, emphasizing the role of the Yoneda lemma (Chapter 6).
Step 1: The Yoneda embedding. The functor \(Y : \mathcal{A} \to [\mathcal{A}^{op}, \mathbf{Ab}]\) sending \(A \mapsto \mathrm{Hom}_\mathcal{A}(-, A)\) is full, faithful, and left exact. The functor category \([\mathcal{A}^{op}, \mathbf{Ab}]\) is a Grothendieck abelian category — an abelian category with a generator and satisfying the AB5 axiom (exact filtered colimits). This is the content of Grothendieck’s 1957 Tôhoku paper.
Step 2: Enough injectives. Grothendieck’s theorem guarantees that every Grothendieck abelian category has enough injectives (every object embeds in an injective). This key result, proved in §12.2 in the special case of \(R\text{-}\mathbf{Mod}\), holds in this generality.
\[ \mathcal{A} \xrightarrow{Y} [\mathcal{A}^{op}, \mathbf{Ab}] \xrightarrow{\mathrm{Hom}(-,U)} \mathbf{Ab} \]is exact and faithful. Setting \(R = \mathrm{End}(U)^{op}\) and noting that \(\mathrm{Hom}(-, U)\) takes values in \(R\text{-}\mathbf{Mod}\) gives the desired embedding.
For practical purposes, the theorem applies whenever one is working with a specific finite diagram in an abelian category — all the objects and morphisms appearing in the diagram form a small abelian subcategory (after closing under finite limits and colimits), so the theorem applies.
10.3 The Metatheorem and Element-Chasing
The practical upshot of Mitchell’s theorem is a powerful metatheorem that justifies the computational methods of homological algebra.
The metatheorem requires care in formulation — not every first-order statement about modules translates to abelian categories (statements involving elements do not make sense in general). But the diagram-chase lemmas (Snake Lemma, Five Lemma, Nine Lemma, Horseshoe Lemma, etc.) all have the form covered by the metatheorem: they are statements about exactness of sequences derived from a given exact diagram.
In algebraic geometry, this application is ubiquitous: the snake lemma in \(\mathbf{Coh}(X)\) (coherent sheaves on a scheme \(X\)) is used constantly, and is justified by the abstract metatheorem rather than by explicit local computations.
Chapter 11: Projective Modules and Vector Bundles
Projective modules are the algebraic generalization of free modules. They arise as the “nice” objects in homological algebra — the ones for which Hom is exact. The connection to geometry, made precise by the Serre-Swan theorem, shows that projective modules over a commutative ring are the algebraic shadows of vector bundles.
The notion of a projective module is equivalent to several a priori different conditions: a lifting property, a direct summand characterization, and an exactness property of Hom. These multiple characterizations are what make projective modules so useful — depending on the context, one picks the formulation that is most convenient.
11.1 Definition and Characterizations
The lifting property is the defining characteristic of projective objects in any category. In the category \(\mathbf{Set}\), every object is projective (one can always lift along a surjection by the axiom of choice). In \(R\text{-}\mathbf{Mod}\), the class of projective modules is strictly between free modules and all modules.
- \(P\) is projective (satisfies the lifting property of Definition 11.1).
- Every surjection \(M \twoheadrightarrow P\) splits: there exists \(s : P \to M\) with \(g \circ s = \mathrm{id}_P\).
- \(P\) is a direct summand of a free module: there is a free module \(F\) and a module \(Q\) with \(F \cong P \oplus Q\).
- The functor \(\mathrm{Hom}_R(P, -) : R\text{-}\mathbf{Mod} \to \mathbf{Ab}\) is exact (not merely left exact).
(2) \(\Rightarrow\) (3): Choose a surjection \(\pi : F \twoheadrightarrow P\) from a free module \(F\) (possible since every module is a quotient of a free module). By (2), this splits: \(F \cong P \oplus \ker(\pi)\).
(3) \(\Rightarrow\) (4): Write \(F = P \oplus Q\) (free). For an exact sequence \(0 \to A \to B \to C \to 0\), applying \(\mathrm{Hom}(F, -) = \mathrm{Hom}(P, -) \oplus \mathrm{Hom}(Q, -)\): since \(F\) is free, \(\mathrm{Hom}(F, -) \) is exact (elements of \(\mathrm{Hom}(F, C)\) lift because free modules have the lifting property). Hence \(\mathrm{Hom}(P, -)\) is a direct summand of an exact functor, so it is exact.
(4) \(\Rightarrow\) (1): If \(\mathrm{Hom}(P, -) \) is exact and \(g : M \to N\) is surjective, then \(\mathrm{Hom}(P, M) \to \mathrm{Hom}(P, N)\) is surjective, which is exactly the lifting property. \(\square\)
- Every free module is projective: \(F = P \oplus 0\). Conversely, over a field, every module (= vector space) is free, hence projective.
- Over a PID (like \(\mathbb{Z}\) or \(k[x]\)), every projective module is free. This is a theorem of Kaplansky (1958) for countably generated projectives, and holds in general over PIDs.
- Over \(\mathbb{Z}/6 \cong \mathbb{Z}/2 \times \mathbb{Z}/3\) (by CRT), the module \(\mathbb{Z}/2\) is projective: \(\mathbb{Z}/6 = \mathbb{Z}/2 \oplus \mathbb{Z}/3\) as \(\mathbb{Z}/6\)-modules.
- The rank-\(n\) module of global sections of the tautological bundle on \(\mathbb{P}^{n-1}\) is projective but not free over the polynomial ring (by the Serre-Swan theorem).
11.2 The Dual Basis Lemma
The following criterion gives an explicit algebraic characterization of projective modules in terms of “dual bases,” analogous to the basis of a free module.
- For each \(x \in P\), the set \(\{i \in I : f_i(x) \neq 0\}\) is finite.
- For every \(x \in P\), \(x = \sum_{i \in I} f_i(x) \cdot x_i\) (finite sum by (1)).
(\(\Leftarrow\)) Given such \(\{x_i, f_i\}\), define \(\phi : P \to \bigoplus_i R \cdot e_i\) (free) by \(\phi(x) = \sum f_i(x) e_i\), and \(\psi : \bigoplus R e_i \to P\) by \(\psi(e_i) = x_i\). Then \(\psi \circ \phi = \mathrm{id}_P\), so \(P\) is a direct summand of a free module. \(\square\)
11.3 Projective Modules over Local Rings and the Quillen-Suslin Theorem
Over a local ring, the structure of projective modules is completely determined.
A major open question from the 1950s was whether every projective module over \(R = k[x_1, \ldots, x_n]\) (polynomial ring over a field) is free. This is the question of whether “algebraic vector bundles over affine space are trivial” — geometrically, \(\mathrm{Spec}\, k[x_1, \ldots, x_n] = \mathbb{A}^n\) is contractible, so one expects all vector bundles to be trivial. Serre posed this as a question in 1955 (“Problème de Serre”), and the answer came two decades later:
Daniel Quillen and Andrei Suslin proved this independently in 1976. Quillen’s proof used a reduction to the local case via localization; Suslin’s proof was more computational. The theorem resolved Serre’s question and confirmed the geometric intuition. It also inaugurated the deep connections between projective modules and algebraic \(K\)-theory: the Grothendieck group \(K_0(R)\) classifies projective modules up to stable isomorphism, and Quillen-Suslin says \(K_0(k[x_1,\ldots,x_n]) \cong \mathbb{Z}\), generated by the rank-1 free module.
11.4 Vector Bundles and the Serre-Swan Theorem
The Serre-Swan theorem establishes a precise algebraic-geometric dictionary between projective modules and vector bundles. It is one of the most beautiful results in algebraic geometry and noncommutative geometry.
- (Swan, 1962) The functor \(\Gamma : \mathbf{Vect}(X) \to C(X)\text{-}\mathbf{Mod}\) sending a vector bundle \(E \to X\) to its \(C(X)\)-module of global continuous sections \(\Gamma(X, E)\) is an equivalence of categories between the category of (real or complex) vector bundles on \(X\) and the category of finitely generated projective \(C(X)\)-modules.
- (Serre, 1955, algebraic version) For an affine algebraic variety \(X = \mathrm{Spec}\, A\) over an algebraically closed field, the global section functor gives an equivalence between locally free sheaves of finite rank on \(X\) and finitely generated projective \(A\)-modules.
Conversely, given a finitely generated projective \(C(X)\)-module \(P\), write \(P \oplus Q \cong C(X)^n\). The module \(C(X)^n\) corresponds to the trivial bundle \(X \times \mathbb{R}^n\). The projection \(C(X)^n \to P \to 0\) gives a family of projections in \(M_n(\mathbb{R})\) parametrized by \(X\) (since evaluating at each point gives a linear projection). The image bundle \(\{(x, v) : e(x) v = v\} \subseteq X \times \mathbb{R}^n\) is a vector bundle with sections isomorphic to \(P\). \(\square\)
For algebraic varieties, the analog of \(K^0\) is the Grothendieck group of locally free sheaves, and Hirzebruch’s Riemann-Roch theorem (and its generalization by Grothendieck) computes this group in terms of Chern classes and cohomology. The Quillen-Suslin theorem says \(K_0(\mathbb{A}^n_k) \cong \mathbb{Z}\), consistent with the contractibility of affine space.
Chapter 12: Injective Modules
Injective modules are the duals of projective modules. Where projective modules lift along surjections, injective modules extend along injections. In many ways, injective modules are harder to work with explicitly — they tend to be large and non-constructive — but they are indispensable for computing right derived functors (sheaf cohomology, Ext groups).
The key theme of this chapter is the theorem that every module embeds in an injective module (“enough injectives”), which is a non-trivial result requiring the axiom of choice. This is in contrast to “enough projectives” (every module is a quotient of a free module), which is immediate from the definition.
12.1 Definition and Baer’s Criterion
The injective condition is dual to the projective lifting property: projective modules lift along surjections, injective modules extend along injections. Equivalently, \(I\) is injective if and only if \(\mathrm{Hom}_R(-, I)\) is an exact functor (not merely left exact).
In practice, verifying injectivity directly from the definition would require checking the extension property for all injections \(A \hookrightarrow B\). Baer’s criterion reduces this to a much simpler check.
(\(\Leftarrow\)) Suppose Baer’s condition holds and \(g : A \to I\) is given with \(f : A \hookrightarrow B\) an injection. We want to extend \(g\) to a map \(\tilde{g} : B \to I\). By Zorn’s lemma, consider the collection of pairs \((C, h)\) where \(A \subseteq C \subseteq B\) and \(h : C \to I\) extends \(g\). This collection is nonempty (take \(C = A\)) and partially ordered by extension. Any chain has an upper bound (take the union). So there is a maximal pair \((C_0, h_0)\). If \(C_0 \neq B\), pick \(b \in B \setminus C_0\) and let \(\mathfrak{a} = \{r \in R : rb \in C_0\}\), a left ideal. The map \(\mathfrak{a} \to I\) sending \(r \mapsto h_0(rb)\) satisfies Baer’s criterion, so extends to a map \(R \to I\) sending \(1 \mapsto x\). Then extend \(h_0\) to \(C_0 + Rb\) by setting \(h(c + rb) = h_0(c) + rx\). This contradicts maximality of \((C_0, h_0)\), so \(C_0 = B\). \(\square\)
The use of Zorn’s lemma is essential and unavoidable — the existence of enough injectives (Theorem 12.4) is equivalent over ZF to the axiom of choice.
- Over a field \(k\), every vector space is injective (and projective). \(\mathbf{Vect}_k\) is a "semisimple" abelian category.
- The \(\mathbb{Z}\)-module \(\mathbb{Q}\) is injective: given any injection \(f : A \hookrightarrow B\) of abelian groups and \(g : A \to \mathbb{Q}\), one can extend \(g\) to \(B\) by Baer's criterion — since \(\mathbb{Z}\) has only one non-zero ideal type (namely \(n\mathbb{Z}\)), and \(\mathbb{Q}\) is divisible (every element can be "divided" by any non-zero integer), the criterion is satisfied.
- More generally, over \(\mathbb{Z}\), the injective abelian groups are precisely the divisible groups: groups \(D\) such that for each \(d \in D\) and each non-zero integer \(n\), there exists \(x \in D\) with \(nx = d\). The divisible groups are: \(\mathbb{Q}\), \(\mathbb{Q}/\mathbb{Z}\), the Prüfer groups \(\mathbb{Z}[p^{-1}]/\mathbb{Z} = \mathbb{Z}(p^\infty)\) for each prime \(p\), and their direct sums and direct products.
- Over a Noetherian ring \(R\), the injective modules have a structural description due to Matlis (see §12.3).
12.2 Enough Injectives
The existence of enough injectives is a fundamental theorem that makes right derived functors well-defined.
Step 1: Show \(\mathbb{Q}/\mathbb{Z}\) is injective as a \(\mathbb{Z}\)-module. By Baer’s criterion, given a homomorphism \(f : n\mathbb{Z} \to \mathbb{Q}/\mathbb{Z}\), we must extend to \(\mathbb{Z}\). Say \(f(n) = [a/b] \in \mathbb{Q}/\mathbb{Z}\). Then \(f(1) = f(n)/n = [a/(nb)]\) works as the extension value.
Step 2: Given an \(R\)-module \(M\), first embed \(M\) into a \(\mathbb{Q}/\mathbb{Z}\)-injective module. View \(M\) as a \(\mathbb{Z}\)-module and choose an embedding \(M \hookrightarrow D\) into a divisible abelian group (inject \(M\) into its injective envelope over \(\mathbb{Z}\)). The functor \(\mathrm{Hom}_\mathbb{Z}(R, -)\) sends injective \(\mathbb{Z}\)-modules to injective \(R\)-modules (by the Hom-tensor adjunction), and there is a natural embedding \(M \hookrightarrow \mathrm{Hom}_\mathbb{Z}(R, M)\) sending \(m \mapsto (r \mapsto rm)\). Composing \(M \hookrightarrow \mathrm{Hom}_\mathbb{Z}(R, M) \hookrightarrow \mathrm{Hom}_\mathbb{Z}(R, D)\) gives the desired embedding into an injective \(R\)-module. \(\square\)
The injective envelope (or injective hull) of a module \(M\) is a minimal injective module containing \(M\) — it is the smallest injective extension of \(M\). Injective envelopes exist and are unique up to isomorphism (Eckmann-Schopf, 1953). The injective envelope is denoted \(E(M)\) and can be constructed as the “divisible closure” or “essential extension” of \(M\): an extension \(M \subseteq I\) where \(I\) is injective and every non-zero submodule of \(I\) meets \(M\) non-trivially (this is the “essential” condition).
- \(E(\mathbb{Z}) = \mathbb{Q}\) as \(\mathbb{Z}\)-modules: \(\mathbb{Q}\) is injective and divisible, and every non-zero subgroup of \(\mathbb{Q}\) meets \(\mathbb{Z}\) non-trivially (since \(\mathbb{Q}\) is a localization of \(\mathbb{Z}\)).
- \(E(\mathbb{Z}/p) = \mathbb{Z}(p^\infty) = \mathbb{Z}[p^{-1}]/\mathbb{Z}\): the Prüfer \(p\)-group, which is the union \(\mathbb{Z}/p \subset \mathbb{Z}/p^2 \subset \mathbb{Z}/p^3 \subset \cdots\) along the natural inclusions. This is the injective envelope of \(\mathbb{Z}/p\) in \(\mathbf{Ab}\).
- Over a Noetherian ring, the indecomposable injective modules are all of the form \(E(R/\mathfrak{p})\) for prime ideals \(\mathfrak{p}\), and every injective module decomposes as a direct sum of indecomposable injectives (Matlis decomposition).
12.3 Injective Modules over Specific Rings
The structure of injective modules depends strongly on the ring \(R\). We record the most important cases.
This structure theorem is due to Prüfer (1923) and Baer (1940). The Prüfer groups \(\mathbb{Z}(p^\infty)\) are indecomposable (have no non-trivial direct sum decomposition) and serve as the “atoms” of the divisible abelian group universe.
- The functor \(D(-) = \mathrm{Hom}_R(-, E)\) is an exact contravariant equivalence (duality) between the categories of Noetherian and Artinian \(R\)-modules.
- Every indecomposable injective \(R\)-module is isomorphic to \(E(R/\mathfrak{p})\) for a unique prime \(\mathfrak{p} \in \mathrm{Spec}\, R\).
- Every injective \(R\)-module is a direct sum of indecomposable injectives \(E(R/\mathfrak{p})\).
Matlis duality (1958) is a beautiful generalization of Pontryagin duality. For \(R = \mathbb{Z}\) and a prime \(p\), it becomes the duality between \(p\)-primary abelian groups and pro-\(p\) groups. For the power series ring \(R = k[[x]]\), it is related to the duality between formal power series and polynomials.
The category \(\mathbf{Vect}_k\) is “maximally symmetric” in this sense: every object is both projective and injective, every functor is exact, and there are no derived functors to speak of (all higher derived functors vanish). The further one moves from this ideal situation, the richer the homological algebra becomes.
Part III: Homological Algebra
With the categorical foundations of Parts I and II established, we now turn to the core techniques of homological algebra. The central idea is to study a module \(M\) — or more generally, an object in an abelian category — by replacing it with a resolution: a long exact sequence of “nice” (projective or injective) modules that together encode all the homological information about \(M\). Applying a functor to the resolution and measuring the failure of exactness gives the derived functors, which are the main computational tools of the subject.
The story has a beautiful arc. Eilenberg and MacLane introduced cohomology of groups in 1945, and Cartan and Eilenberg’s 1956 book Homological Algebra systematized the entire theory of derived functors for modules. Grothendieck’s 1957 Tôhoku paper then showed that the same constructions work in any abelian category with enough injectives, and introduced the spectral sequences needed to compute derived functors of composites. The two main invariants — \(\mathrm{Ext}\) and \(\mathrm{Tor}\) — measure the “non-projectivity” and “non-injectivity” of modules respectively, and connect directly to classical problems in algebra and topology.
Chapter 13: Chain Complexes
13.1 Chain and Cochain Complexes
The algebraic formalization of “sequences that compose to zero” is the chain complex. The concept appears first in algebraic topology, where the boundary of a boundary is zero (\(\partial^2 = 0\)), and then in algebra, where it encodes exact sequences and their failures.
Dually, a cochain complex \(C^\bullet\) has the form \(\cdots \to C^{n-1} \xrightarrow{d^{n-1}} C^n \xrightarrow{d^n} C^{n+1} \to \cdots\) with \(d^n \circ d^{n-1} = 0\).
The condition \(d^2 = 0\) is the minimal algebraic requirement for a notion of “cycle” (elements in \(\ker d\)) and “boundary” (elements in \(\mathrm{im}\, d\)) to make sense and satisfy \(\mathrm{im} \subseteq \ker\). Homology measures the gap between these.
The complex \(C_\bullet\) is exact (as a sequence) if and only if \(H_n(C_\bullet) = 0\) for all \(n\).
The category \(\mathbf{Ch}(R)\) of chain complexes of \(R\)-modules is itself an abelian category. A morphism \(f_\bullet : C_\bullet \to D_\bullet\) of chain complexes is a collection of maps \(f_n : C_n \to D_n\) commuting with the differentials: \(d_n^D \circ f_n = f_{n-1} \circ d_n^C\). Such a morphism induces maps \(H_n(f) : H_n(C_\bullet) \to H_n(D_\bullet)\) on homology, making \(H_n : \mathbf{Ch}(R) \to R\text{-}\mathbf{Mod}\) a functor for each \(n\).
For instance, the boundary of a triangle \([v_0, v_1, v_2]\) is \([v_1, v_2] - [v_0, v_2] + [v_0, v_1]\), and the boundary of this is \((v_2 - v_1) - (v_2 - v_0) + (v_1 - v_0) = 0\).
13.2 The Long Exact Sequence in Homology
The most fundamental result in homological algebra is that a short exact sequence of chain complexes gives rise to a long exact sequence in homology. This is the mechanism by which local algebraic information (short exact sequences) propagates into global topological information (long exact sequences in cohomology).
where \(\partial_n : H_n(C_\bullet) \to H_{n-1}(A_\bullet)\) is the connecting homomorphism.
- In algebraic topology, the long exact sequence of a pair \((X, A)\) arises from \(0 \to C_\bullet(A) \to C_\bullet(X) \to C_\bullet(X, A) \to 0\).
- In sheaf theory, the long exact sequence associated to a short exact sequence of sheaves \(0 \to \mathcal{F}' \to \mathcal{F} \to \mathcal{F}'' \to 0\) on a topological space gives the long exact sequence in sheaf cohomology, the fundamental tool of algebraic geometry.
- In group cohomology, the inflation-restriction exact sequence and the Hochschild-Serre spectral sequence arise from filtered complexes.
- In algebraic geometry, the long exact sequence in étale cohomology (arising from the Kummer sequence \(0 \to \mu_n \to \mathbb{G}_m \xrightarrow{\times n} \mathbb{G}_m \to 0\)) connects cohomological data to arithmetic information.
13.3 Chain Homotopies
Two chain maps may induce the same maps on homology even though they are not equal as chain maps. The correct notion of equivalence between chain maps is chain homotopy.
Chain homotopic maps induce the same maps on homology: if \(f \simeq g\) via \(h\), then for any cycle \(z \in Z_n(C)\),
\[ (f_n - g_n)(z) = d^D h_n(z) + h_{n-1} d^C(z) = d^D h_n(z) + 0 = d^D h_n(z) \in B_n(D), \]so \([f_n(z)] = [g_n(z)]\) in \(H_n(D)\). The “homotopy category” \(\mathbf{K}(R)\) of chain complexes is the category with the same objects as \(\mathbf{Ch}(R)\) but with morphisms being chain homotopy classes of chain maps. This category is not abelian, but it is the natural setting for the construction of the derived category.
Verdier introduced derived categories (following Grothendieck’s suggestions) in his 1963 thesis. Their full power was demonstrated by Beilinson, Bernstein, Deligne, and Gabber in the Faisceaux Pervers paper (1982), where perverse sheaves were shown to be “the heart of a t-structure” on the derived category of constructible sheaves.
13.4 Mapping Cones
The mapping cone provides a powerful tool for understanding the relationship between a chain map and the long exact sequence it induces.
The long exact sequence in homology of this short exact sequence recovers the long exact sequence induced by \(f\), with \(\partial = H(f)\) as the connecting homomorphism.
A chain map \(f_\bullet : C_\bullet \to D_\bullet\) is a quasi-isomorphism (i.e., \(H_n(f)\) is an isomorphism for all \(n\)) if and only if \(H_n(\mathrm{Cone}(f)) = 0\) for all \(n\) — i.e., the mapping cone is exact. This characterization is the basis for defining the derived category.
Chapter 14: Resolutions
14.1 Projective Resolutions
A projective resolution of a module \(M\) is an exact sequence terminating at \(M\) with all other terms projective. It provides a “projective replacement” for \(M\) that can be used to compute derived functors.
Every module has a projective resolution, constructed inductively: set \(P_0\) to be any free module surjecting onto \(M\), let \(M_1 = \ker(P_0 \to M)\), set \(P_1\) to be a free module surjecting onto \(M_1\), and continue. At each step, the kernel of the current differential is called the \(n\)th syzygy module \(\Omega^n(M)\).
- The resolution \(0 \to \mathbb{Z} \xrightarrow{\times n} \mathbb{Z} \to \mathbb{Z}/n \to 0\) is a projective (in fact, free) resolution of \(\mathbb{Z}/n\) of length 1. This is the minimal such resolution.
- The Koszul complex (Example 13.4) is a projective resolution of \(k\) over \(k[x_1, \ldots, x_n]\) of length \(n\).
- Over the group algebra \(\mathbb{Z}[C_2] = \mathbb{Z}[x]/(x^2-1)\) for the cyclic group \(C_2 = \langle g \rangle\), the trivial module \(\mathbb{Z}\) has the periodic free resolution: \(\cdots \xrightarrow{N} \mathbb{Z}[C_2] \xrightarrow{g-1} \mathbb{Z}[C_2] \xrightarrow{N} \mathbb{Z}[C_2] \xrightarrow{g-1} \mathbb{Z}[C_2] \to \mathbb{Z} \to 0\), where \(N = 1 + g\) is the norm element. This computation underlies the cohomology of cyclic groups: \(H^n(C_2; \mathbb{Z}) = \mathbb{Z}/2\) for all \(n \geq 1\).
14.2 Injective Resolutions
Dually, every module embeds in an injective module, allowing the construction of injective resolutions.
The construction is dual to the projective case: embed \(M\) in its injective envelope \(I^0 = E(M)\), let \(M^1 = I^0 / M = \mathrm{coker}(\eta)\), embed \(M^1\) in \(I^1 = E(M^1)\), and continue. The successive “cosyzygy” modules \(\Sigma^n(M)\) encode increasingly refined homological information about \(M\).
14.3 The Comparison Theorem
The key structural result about resolutions is that, up to homotopy, they are unique — any two resolutions of the same module are homotopy equivalent. This is what makes derived functors well-defined (independent of the choice of resolution).
For uniqueness up to homotopy: if \(\tilde{f}\) and \(\tilde{g}\) are two lifts, then \(\tilde{f} - \tilde{g}\) is a chain map \(P_\bullet \to Q_\bullet\) lifting \(0 : M \to N\). Construct the homotopy \(h\) inductively using the projective property at each stage. \(\square\)
This corollary is the precise statement that derived functors are well-defined, anticipating the construction of Chapter 15.
14.4 The Horseshoe Lemma
The horseshoe lemma allows one to construct resolutions of the total module \(B\) from resolutions of the sub- and quotient modules \(A\) and \(C\) in a short exact sequence \(0 \to A \to B \to C \to 0\).
The name comes from the shape of the diagram: two vertical resolutions (the “sides” of the horseshoe) are filled in by the middle resolution (the “arch”). The horseshoe lemma is used to show that long exact sequences in derived functors arise from short exact sequences of modules (the connecting morphism in the derived long exact sequence is compatible with the connecting morphism of the original short exact sequence).
14.5 Projective and Injective Dimension
The length of the shortest projective (or injective) resolution of a module is a fundamental measure of its homological complexity.
The global dimension of \(R\) is:
\[ \mathrm{gldim}(R) = \sup\{\mathrm{pd}(M) : M \in R\text{-}\mathbf{Mod}\}. \]- \(\mathrm{gldim}(R) = n\).
- Every finitely generated \(R\)-module \(M\) has a finite free resolution of length at most \(n\): there is an exact sequence \(0 \to F_n \to \cdots \to F_0 \to M \to 0\) with each \(F_i\) free and finitely generated.
Hilbert proved this in 1890 for the case of ideals in polynomial rings (the original “Hilbert’s theorem on syzygies”), introducing the concept of what we now call free resolutions. The statement that \(\mathrm{gldim}(k[x_1,\ldots,x_n]) = n\) can be reformulated: the residue field \(k = k[x_1,\ldots,x_n]/(x_1,\ldots,x_n)\) has projective dimension exactly \(n\) (its minimal free resolution is the Koszul complex of length \(n\)). The theorem places the Koszul complex at the heart of commutative algebra.
Chapter 15: Derived Functors
15.1 Left Derived Functors
With the machinery of Chapter 14 in place, we can now construct the derived functors. The idea is simple but powerful: apply a right-exact functor to a projective resolution, observe that the result may not be exact, and record the deviation from exactness as a sequence of “derived” modules.
Several immediate properties:
- \(L_0 F(M) \cong F(M)\): since \(F\) is right exact and \(P_1 \to P_0 \to M \to 0\) is exact, applying \(F\) gives \(F(P_1) \to F(P_0) \to F(M) \to 0\) exact, so \(H_0 = \mathrm{coker}(F(P_1) \to F(P_0)) \cong F(M)\).
- \(L_n F(P) = 0\) for \(n > 0\) and any projective \(P\): \(P\) has the projective resolution \(0 \to P \to P \to 0\), so \(H_n\) vanishes for \(n > 0\).
- Every short exact sequence \(0 \to A \to B \to C \to 0\) gives a long exact sequence: \(\cdots \to L_n F(A) \to L_n F(B) \to L_n F(C) \xrightarrow{\partial} L_{n-1} F(A) \to \cdots \to F(A) \to F(B) \to F(C) \to 0\).
15.2 Right Derived Functors
Dually, a left-exact functor \(G\) is “completed” by its right derived functors, computed using injective resolutions.
- \(R^0 G(M) \cong G(M)\) (since \(G\) is left exact).
- \(R^n G(I) = 0\) for \(n > 0\) and any injective \(I\).
- Short exact sequences give long exact sequences: \(0 \to G(A) \to G(B) \to G(C) \to R^1 G(A) \to \cdots\)
The exactness fails because a surjection of sheaves (a sheaf epimorphism) need not be surjective on global sections — a section over the total space might only be patchable locally. The \(H^n(X, \mathcal{F})\) measure this obstruction to global existence of sections. For constant sheaves, this recovers singular cohomology; for structure sheaves of complex manifolds, this gives Dolbeault cohomology (by the \(\overline{\partial}\)-Poincaré lemma, which identifies injective resolutions with the Dolbeault complex).
15.3 Universal Delta-Functors and Grothendieck’s Axioms
The collections \(\{L_n F\}_{n \geq 0}\) and \(\{R^n G\}_{n \geq 0}\) are examples of delta-functors. Grothendieck’s abstract theory characterizes derived functors universally, showing that the derived functors of \(F\) are (up to isomorphism) the unique “erасable” (effaceable) delta-functor extending \(F\).
- The sequence \(\cdots \to T^n(B) \to T^n(C) \xrightarrow{\delta^n} T^{n+1}(A) \to \cdots\) is exact.
- The \(\delta^n\) are natural (functorial in the short exact sequence).
15.4 Acyclic Resolutions
In practice, computing derived functors using injective or projective resolutions can be difficult — injective modules are large and hard to describe explicitly. A powerful shortcut is to use acyclic resolutions: resolutions by objects on which all higher derived functors vanish, without requiring those objects to be projective or injective.
Chapter 16: Ext and Tor
16.1 Tor: Definition and Properties
The key fact, which requires the Horseshoe Lemma and the comparison theorem, is that both approaches give the same answer:
This symmetry (“balance”) is not obvious — tensor product is a priori a functor in each variable separately, and the two derived functor constructions (resolve first or second variable) could a priori differ. The balance theorem shows they do not, and gives Tor a canonical status independent of the choice.
- \(\mathrm{Tor}_0^R(M, N) \cong M \otimes_R N\).
- If \(P\) is projective (or flat), \(\mathrm{Tor}_n^R(P, N) = 0\) for all \(n > 0\).
- For any short exact sequence \(0 \to A \to B \to C \to 0\) of left \(R\)-modules, there is a long exact sequence: \(\cdots \to \mathrm{Tor}_{n}^R(M, A) \to \mathrm{Tor}_n^R(M, B) \to \mathrm{Tor}_n^R(M, C) \to \mathrm{Tor}_{n-1}^R(M, A) \to \cdots \to M \otimes_R A \to M \otimes_R B \to M \otimes_R C \to 0.\)
- \(\mathrm{Tor}_n^R(M, N) \cong \mathrm{Tor}_n^R(N, M)\) when \(R\) is commutative.
- Tor commutes with filtered colimits (direct limits): \(\mathrm{Tor}_n^R(M, \varinjlim N_i) \cong \varinjlim \mathrm{Tor}_n^R(M, N_i)\).
So for abelian groups, \(\mathrm{Tor}_1^\mathbb{Z}(\mathbb{Z}/m, \mathbb{Z}/n) \cong \mathbb{Z}/\gcd(m,n)\). Higher \(\mathrm{Tor}_n^\mathbb{Z}\) vanish for \(n \geq 2\) since \(\mathrm{gldim}(\mathbb{Z}) = 1\).
16.2 Tor and Flatness
- \(M\) is flat.
- \(\mathrm{Tor}_1^R(M, N) = 0\) for all left \(R\)-modules \(N\).
- \(\mathrm{Tor}_n^R(M, N) = 0\) for all \(n > 0\) and all \(N\).
This theorem shows that Tor is precisely the obstruction to flatness. The Govorov-Lazard theorem (§7.7) gives a geometric description: \(M\) is flat iff it is a filtered colimit of finitely generated free modules. Combined with (1) ↔ (2) above, this characterizes flatness both geometrically and homologically.
16.3 Ext: Definition and Properties
These two constructions agree (by a balance theorem analogous to Tor).
- \(\mathrm{Ext}_R^0(M, N) \cong \mathrm{Hom}_R(M, N)\).
- If \(P\) is projective, \(\mathrm{Ext}_R^n(P, N) = 0\) for \(n > 0\). If \(I\) is injective, \(\mathrm{Ext}_R^n(M, I) = 0\) for \(n > 0\).
- Short exact sequences in either variable give long exact sequences in Ext:
- From \(0 \to A \to B \to C \to 0\) (in the first variable): \(0 \to \mathrm{Hom}(C,N) \to \mathrm{Hom}(B,N) \to \mathrm{Hom}(A,N) \to \mathrm{Ext}^1(C,N) \to \cdots\)
- From \(0 \to L \to M \to N \to 0\) (in the second variable): \(0 \to \mathrm{Hom}(A,L) \to \mathrm{Hom}(A,M) \to \mathrm{Hom}(A,N) \to \mathrm{Ext}^1(A,L) \to \cdots\)
- For \(R\) commutative: \(\mathrm{Ext}_R^n(M, N) \cong \mathrm{Ext}_R^n(N, M)\) is false in general; Ext is not symmetric (unlike Tor). However, for self-injective rings (e.g., Gorenstein rings), a duality interchanges \(\mathrm{Ext}^i\) and \(\mathrm{Ext}^{d-i}\) where \(d\) is the dimension.
Thus \(\mathrm{Ext}^1_\mathbb{Z}(\mathbb{Z}/m, \mathbb{Z}/n) \cong \mathbb{Z}/\gcd(m,n) \cong \mathrm{Tor}_1^\mathbb{Z}(\mathbb{Z}/m, \mathbb{Z}/n)\). This equality is not a coincidence — over \(\mathbb{Z}\), there is a general duality \(\mathrm{Ext}^1_\mathbb{Z}(M, \mathbb{Z}/n) \cong \mathrm{Tor}_1^\mathbb{Z}(M, \mathbb{Z}/n)\) for finitely generated modules.
16.4 Ext and Extensions
One of the deepest facts about \(\mathrm{Ext}^1\) is that it classifies extensions — this is what gives Ext its name.
The zero element of \(\mathrm{Ext}^1(M, N)\) corresponds to the split extension \(0 \to N \to N \oplus M \to M \to 0\).
- The split extension: \(0 \to \mathbb{Z}/2 \to \mathbb{Z}/2 \oplus \mathbb{Z}/2 \to \mathbb{Z}/2 \to 0\). (Generator: 0 in \(\mathrm{Ext}^1\).)
- The non-split extension: \(0 \to \mathbb{Z}/2 \to \mathbb{Z}/4 \to \mathbb{Z}/2 \to 0\). (Generator: 1 in \(\mathrm{Ext}^1\).)
16.5 Ext via Yoneda: Higher Extensions
The description of \(\mathrm{Ext}^n\) as classifying \(n\)-fold extensions (long exact sequences \(0 \to N \to E_n \to \cdots \to E_1 \to M \to 0\)) is due to Yoneda (1954), and provides a beautiful intrinsic description without choosing resolutions.
The Yoneda product (or Yoneda composition) \(\mathrm{Ext}^m(N, L) \times \mathrm{Ext}^n(M, N) \to \mathrm{Ext}^{m+n}(M, L)\) is defined by concatenating extensions.
The Yoneda description works in any abelian category, even without enough projectives or injectives — this is its chief advantage over the derived functor approach. The Yoneda product is the key structure: it endows the Ext groups with algebraic structure beyond just being abelian groups.
More generally, a Koszul algebra \(A\) (a graded algebra with “nice” resolution of the base field) has a Koszul dual \(A^! = \mathrm{Ext}^\bullet_A(k, k)\), and there is an equivalence of derived categories \(\mathbf{D}(A) \simeq \mathbf{D}(A^!)\) (Beilinson-Ginzburg-Soergel, 1996). Koszul duality is a deep generalization of Fourier transform and Pontryagin duality, and plays a central role in geometric representation theory, the theory of perverse sheaves, and mirror symmetry.
16.6 Applications: Universal Coefficients, Group Cohomology, Hochschild Cohomology
The formalism of Ext and Tor connects directly to classical and modern mathematics through a series of fundamental theorems. We record the most important.
The universal coefficient theorem shows that the homology/cohomology of \(X\) with coefficients in an arbitrary abelian group \(G\) is determined (up to extension) by the integral homology \(H_\bullet(X; \mathbb{Z})\) together with Tor and Ext corrections. The Tor term accounts for torsion phenomena: if \(H_{n-1}(X;\mathbb{Z})\) has a finite cyclic summand, tensoring with \(G\) can create extra elements detected by Tor.
The Künneth formula expresses the homology of a product in terms of the homologies of the factors. In the torsion-free case, it reduces to \(H_n(X \times Y) \cong \bigoplus_{i+j=n} H_i(X) \otimes H_j(Y)\), the clean “Künneth theorem.” The Tor term corrects for torsion interactions.
Group cohomology was introduced by Eilenberg-MacLane and Hopf in the 1940s to study extension problems in group theory (related to the Schur multiplier \(H_2(G; \mathbb{Z})\)) and in algebraic topology (the cohomology of classifying spaces \(BG\)). The identifications:
- \(H^0(G; M) = M^G = \{m \in M : gm = m \;\forall g \in G\}\) (invariants)
- \(H^1(G; M) = \mathrm{Der}(G, M) / \mathrm{PrincDer}(G, M)\) (crossed homomorphisms modulo principal ones)
- \(H^2(G; M)\) classifies extensions \(0 \to M \to \tilde{G} \to G \to 1\) with the action of \(G\) on \(M\) given
- \(HH^0(A, M) = Z(M, A) = \{m \in M : am = ma \;\forall a \in A\}\) (center-like elements)
- \(HH^1(A, M) = \mathrm{Der}(A, M) / \mathrm{InnDer}(A, M)\) (outer derivations from \(A\) to \(M\))
- \(HH^2(A, M)\) classifies (infinitesimal) deformations of \(A\) with coefficients in \(M\)
- \(HH^3(A, M)\) contains the obstruction to extending a deformation to higher order
The progression from classical Hochschild cohomology to \(L_\infty\)-algebras to deformation quantization illustrates how the abstract homological machinery — Ext functors, chain complexes, resolutions — connects to the deepest questions of mathematical physics. The homological algebra developed in these notes is not the end of the story, but the beginning of a much larger landscape encompassing derived algebraic geometry, \(\infty\)-categories, and the homotopy theory of algebras.
Spectral sequences are the main computational tool for derived functors of composites: if \(F\) and \(G\) are functors with \(F\) sending injectives to \(G\)-acyclics, the Grothendieck spectral sequence computes \(R^{p+q}(F \circ G)\) from \(R^p F \circ R^q G\). Special cases include the Lyndon-Hochschild-Serre spectral sequence for group cohomology, the Serre spectral sequence for fibrations, and the Leray spectral sequence for sheaf cohomology.
Triangulated categories and t-structures formalize the structure of derived categories. A t-structure on \(\mathbf{D}(\mathcal{A})\) determines an abelian category (its “heart”), recovering \(\mathcal{A}\) for the standard t-structure. The category of perverse sheaves is the heart of a non-standard t-structure on \(\mathbf{D}^b_c(X)\) (bounded constructible derived category), and perverse sheaves are the right coefficients for the Decomposition Theorem of Beilinson-Bernstein-Deligne-Gabber.
Derived algebraic geometry (Lurie, Toën-Vezzosi) replaces rings by \(E_\infty\)-ring spectra (derived rings), schemes by derived schemes, and sheaves by \(\infty\)-sheaves. The resulting theory simultaneously handles deformation theory, intersection theory, and stable homotopy theory, and is the natural context for the geometric Langlands program and modern mathematical physics.
These directions each fill entire research programs, and the tools developed in this course — functors, adjunctions, abelian categories, derived functors, Ext and Tor — are the foundation on which all of them are built.