Category Theory Lecture Notes
Category Theory Lecture Notes
1
I (Review) Lecture 1: Some category theory
Several people said they wanted to learn basic category theory. We already needed to review some
category theory for this seminar, so we’ll take the opportunity to review enough theory to hopefully help
everyone.
The short-term plan is to review some category theory, Grothendieck sites, and sheaves. Then we
will start actually talking about condensed things. I only reluctantly call this “review," since we are not
assuming everyone is familiar with all the material moving forward. The goal is only to catch folks up to
a working knowledge.
Probably everything we say here is said better somewhere in Emily Riehl’s Category Theory in Con-
text. That book also has many examples. You should read it.
Definition I.1. A category C consists of the following data.
(1) A collection Ob(C) we call objects.
(2) A collection M or(C) we call morphisms.
(3) For each morphism f , a source and target object. (We write f : X → Y to express that f is a
morphism with source X and target Y .)
(4) For each object X, a distinguished morphism idX : X → X we call the identity morphism.
(5) For each pair of morphisms f : X → Y, g : Y → Z such that target(f ) = source(g), a distin-
guished morphism gf : X → Z we call the composite morphism.
And this data must satisfy the following properties.
• Given a morphism f : X → Y , we have f = idY f = f idG .
• Given morphisms f, g, h, we have (f g)h = f (gh) (when the source/targets match appropriately).
In practice, we think of categories as “like a collection of objects and maps between them, with all the
structure that should accompany the word maps—identity self-maps, composites, associativity."
2
• A morphism a → b for each pair of numbers (a, b) such that a ≤ b.
Thus, given objects a, b ∈ {0, 1, 2, . . . }, there is at most one arrow a → b, and it exists iff a ≤ b.
Example I.9 (Morphisms do not have to be functions!). Define a category Skel(FinSetiso ) to have
• Natural numbers n as objects; and
• A morphism n → n for each element of the symmetric group Σn , and no morphisms m → n
when m ̸= n.
Example I.10 (Example from Peter’s talk). A poset is a set S with a relation ≤ that is reflexive, transitive,
and antisymmetric. A morphism of posets f : (S, ≤) → (S ′ , ≤′ ) is a function f : S → S ′ that respects the
partial orderings, i.e. x ≤ y ⇐⇒ f (x) ≤′ f (y). We denote by P oset the category of posets and
morphisms of posets.
I.2 Isomorphisms
All sorts of objects—groups, rings, sets, spaces—have a notion of “sameness." In an arbitrary category,
we formalize this notion as isomorphisms.
Definition I.11. Let C be a category. Suppose that f : c → c′ is a morphism and that there exists a
morphism g : c′ → c such that f g = idc′ and gf = idc . Then we say f and g are isomorphisms and we say
that c, c′ are isomorphic.
Example I.12. Isomorphisms in Set are bijections. Isomorphisms in Top are homeomorphisms. Isomor-
phisms in Top∗ are based homeomorphisms. Isomorphisms in Grp and Ab are group isomorphisms.
Exercise: Figure out what the isomorphisms in P oset are.
I.3 Functors
Definition I.13. Let C, D be categories. A functor from C to D (which we write F : C → D) is “a
map of objects and morphisms that preserves categorical structure, i.e. sources, targets, composites, and
identities." Formally, it consists of the following data.
(1) An object F X ∈ D for each object X ∈ C.
(2) For each morphism f : X → Y in C, a morphism F f : F X → F Y in D.
And this data must satisfy the following properties.
• For any pair of composable morphisms f, g in C, we have F (gf ) = F (g)F (f ).
• For any identity morphism idX in C, we have F (idX ) = idF X .
Very often, we say “(one type of object) are the same thing as (another type of objects)." Categories
give us a great, concrete way to talk about “types of objects." Functors give us a way to “modify and
compare" objects of different types. Can functors tell us when (one type of object) are “the same thing
as" (another type)? Yes, and this is a very useful notion.
For the following definition, we will denote by M or(X, Y ) the set of morphisms X → Y between
objects X, Y ∈ C.
Definition I.14. Let C, D be categories. An equivalence of categories is a functor F : C → D that is
1. Full: for every pair of objects X, Y ∈ C, the mapping f 7→ F (f ) defines a surjection M or(X, Y ) →
M or(F X, F Y );
2. Faithful: for every pair of objects X, Y ∈ C, the mapping f 7→ F (f ) defines an injection M or(X, Y ) →
M or(F X, F Y ); and
3
3. Essentially surjective: for every object d ∈ D, there exists some c ∈ C such that F c ∼
= d.
Remark I.15. The analogy is, “full and faithful is like injectivity" and “essentially surjective is like surjec-
tivity." If you have both, you have an isomorphism. Note that a full and faithful functor need not actually
be surjective on objects.
Remark I.16. There are other common, equivalent definitions of an equivalence of categories.
Remark I.20. You have heard probably heard that we have an isomorphism V ∼ = V ∗∗ that is “canonical"
or “natural" or “very nice," but that we do not have such an isomorphism V ∼ = ∗ . (Although the two are
V
isomorphic.) This can be expressed very concretely as a statement about the functor (−)∗ and its self-
composite (−)∗∗ . We do not yet have the language for this (natural transformations); the non-categorical
reason is that an isomorphism V ∼ = V ∗ requires a choice of basis, but there is an isomorphism V ∼ = V ∗∗
that does not need any choice.
Many—and historically, the motivating—examples of functors come from algebraic topology.
Example I.21. Let (X, x) be a based space (i.e., X is a space and x ∈ X). We define the fundamental
group π1 (X, x) as the set of based continuous maps ℓ : [0, 1] → X such that ℓ(0) = ℓ(1) = x, modulo
homotopy equivalence. The group structure is loop concatenation: given ℓ, ℓ′ : [0, 1] → X, define ℓ′ ℓ :
[0, 1] → X to do one loop over [0.5] then the other over [0.5, 1]. Given a based map f : (X, x) → (Y, y),
there is induced a map f∗ : π1 X → π1 Y given by ℓ 7→ f ◦ ℓ. This defines a functor
π1 (−) : Top∗ → Grp.
Example I.22. For each n, singular homology defines a functor Hn (−) : Top → Ab. Similarly, singular
cohomology defines a functor H n (−) : Topop → Ab.
4
Definition I.23. Let F, G : C → D be two functors. A natural transformation from F to G, which we
denote as α : F =⇒ G, is the data of
• For each object c ∈ C, a morphism αc : F (c) → G(c) in D
such that for every morphism f : c → c′ in C, one has G(f ) ◦ αc = αc′ ◦ F (f ). In other words, the
following diagram commutes.
F (f )
F (c) F (c′ )
αc α′c
G(f )
G(c) G(c′ )
Definition I.24. Let F, G, H : C → D be three functors, and suppose we are given two natural transfor-
mations η : F ⇒ G and ε : G ⇒ H. Define the composition ε ◦ η whose component at some c ∈ C is given
by (ε ◦ η)c := εc ◦ ηc .
Exercise I.25. Show that given natural transformations η : F ⇒ G and ε : G → H, that the composition
ε ◦ η as defined above is actually a natural transformation. In other words, verify that the naturality
condition is satisfied.
Exercise I.26. Show that given two categories C and D, you can define the functor category Fun(C, D)
(also sometimes denoted as [C, D] or DC ) whose objects are functors C → D and whose morphisms are
natural transformations η : F ⇒ G.
You will need to check that:
• Given any functor F in Fun(C, D), there exists an identity natural transformation IdF : F ⇒ F .
• Composition of natural transformations is both associative and unital with respect to your iden-
tity transformations.
5
II (Review) Lecture 2: More category theory
The first part of the talk on limits and colimits (sections 0.2.1 – 0.2.3 below) will be given by Isaiah (who
is also writing the notes for these sections). If you have any questions about anything below, please do
not hesitate to reach out to me on discord, my username there is isaiahtx.
Example II.9. Given a preorder P , the terminal object, if it exists, is called the top object. The initial
object is called the bottom object.
The top object is greater than or equal to every other object in the preorder. The bottom object is
less than or equal to every other object in the preorder.
6
Explicitly, the data of a cone λ under F : J → C with nadir c is a collection of morphisms λ : F (j) →
c, indexed by the objects j in J, such that for any morphism f : j → k in J, the following triangle
commutes in C
Oftentimes, you will see the word “cocone” instead of “cone under F ”, and in this context usually
the word “cone” will refer explicitly to cones over F .
F (f )
F (j) F (k)
λj λk
c
Dually, the data of a cone λ over F : J → C with apex c is a collection of morphisms λj : c → F (j),
indexed by objects j in J, such that for any morphism f : j → k in J, the following triangle commutes in
C
c
λj λk
F (f )
F (j) F (k)
Typically, we think of limits and colimits of functors F : J → C when J is a relatively “small” or
“simple” category. Maybe J looks something like this
Definition II.12. Given a diagram F of shape J in a category C (so a functor F : J → C) and two cones
(η, c) and (µ, d) under F , a morphism of cones under F is a morphism f ∈ Mor(c, d) such that for all
objects j in J, µj = f ◦ ηj .
Pictorally, a morphism of cones under F connects the nadirs of the cones.
Of course, we have a dual definition for cones over F , which connect the apexes of cones. Can you
draw a picture?
7
Definition II.13. Given a diagram F of shape J in a category C (so a functor F : J → C) and two cones
(c, η) and (d, µ) over F , a morphism of cones over F is a morphism f ∈ Mor(c, d) such that for all objects
j in J, µj ◦ f = ηj .
Definition II.14. Let F be a diagram of shape J in a category C.
Define ConeC (F ) to be the category whose objects are cones under F , and morphisms are morphisms
of cones under F .
Conversely, define ConeC (F ) to be the category whose objects are cones over F , and morphisms are
morphisms of cones over F .
Definition II.15. Given a diagram F of shape J in a category C, the colimit cone for F is the initial object
in ConeC (F ) (if it exists).
If (η, c) is a colimit cone for F , then we call the object c the colimit of F , and denote it by any of the
following:
colim F, colim F, or lim F
J −→ −→
Definition II.16. Given a diagram F of shape J in a category C, the limit cone for F is the terminal object
in ConeC (F ) (if it exists).
If (c, η) is a limit cone for F , then we call the object c the limit of F , and denote it by any of the
following:
lim F or lim F
J ←−
8
In Top, the coproduct is given by the disjoint union of spaces with the disjoint union topology, while
the product is given by the cartesian product with the product topology.
In Top∗ , the coproduct is given by the wedge product (join spaces at their basepoint), while the
product is the regular product in Top.
Example II.18. An equalizer is a limit of a diagram indexed by the parallel pair, the category • ⇒ •
with two objects and two parallel non-identity morphisms between them.
Example II.19 (Limits in Set). In general, limits in Set can be described completely as follows:
Given a diagram S : J → Set, define the set
Y
lim S := {(si )i ∈ Si : ∀ϕ : i → i′ , (Sϕ)(si ) = si′ }.
←−
J
Hom(f,Y ) Hom(f,Y ′ )
Hom(X ′ ,g)
HomC (X ′ , Y ) HomC (X ′ , Y ′ )
9
II.5 Adjunctions
There is a notion of adjunctions. The slogan is, “The slogan is, adjunctions are everywhere." There are
several equivalent definitions. None is “the best," they are very much so all useful. The idea is that two
functors F : C ⇄ D : G may “undo each other on the level of hom sets;" we make this precise.
Definition II.27. A hom-set adjunction is a pair of functors F : C ⇄ D : G together with a natural
isomorphism
Φ : HomD (F −, −) ∼ = HomC (−, G−).
Definition II.28. A unit-counit adjunction is a pair of functors F : C ⇄ D : G together with natural
transformations η : idC =⇒ GF and ϵ : F G =⇒ idD such that the following diagrams commute (we
call these the triangle identities).
Fη ηG
F F GF G GF G
ϵF Gϵ
idF idG
F G
Proposition II.29. Let (F, G, Φ) be a hom-set adjunction. Define its canonical unit-counit structure as
follows.
• For c ∈ C, we define the morphism ηc := Φc,F c (idF c ); and
• For d ∈ D, we define the morphism ϵd := Φ−1
Gd,d (idGd ).
The claim is that (F, G, η, ϵ) is a unit-counit adjunction, i.e. the ηc , ϵd ’s assemble to natural transformations
satisfying the triangle identities.
Proposition II.30. Let (F, G, η, ϵ) be a unit-counit adjunction. Define its canonical hom-set adjunction
structure as follows. For each c ∈ C, d ∈ D, and f ∈ HomD (F c, d), define Φ(f ) := ηc ◦ Gf ∈ HomC (c, Gd).
The claim is that (F, G, Φ) is a hom-set adjunction.
The last two propositions say that every hom-set adjunction gives rise to a unit-counit adjunction
and vice-versa.
Proposition II.31. Hom-set adjunctions are “the same thing as" unit-counit adjunctions.
Example II.32 (Cool example from Peter’s talk). We work in Top∗ , the category of based spaces.3 Given
based spaces X, Y , we may ask for some based space G(X, Y ) such that for every Z,
Hom(G(X, Y ), Z) ∼
= Hom(X, Hom(Y, Z)). (33)
In this sense, G(X, Y ) “undoes" the functor “take the space of based maps out of Y " on the level of
hom-sets. In fact, such a based space G(X, Y ) exists for every X and Y , and the isomorphisms (32) are
such that they describe an adjunction. (In the language above, a hom-set adjunction.) The space G(X, Y )
is the smash product of based spaces, defined as
G(X, Y ) = X ∧ Y := (X × Y )/(X ∨ Y ).
Precisely, the functors − ∧ Y : Top∗ → Top∗ and Hom(Y, −) : Top∗ → Top∗ are adjoint. Smashing with Y
is left adjoint to homming out of Y .
This matters because if we take Y = S 1 , our adjoint functors specialize to important constructions:
given a space X, one has
Y ∧ X = ΣX and Hom(Y, X) = ΩX.
The spaces ΣX, ΩX are called the suspension and loop space of X, respectively. They are essential to
doing algebraic topology and homotopy theory. Then, being instances of functors which are adjoint, the
adjunction tells us that for any space W we get
Hom(ΣX, W ) ∼
= Hom(X, ΩW )
and these isomorphisms are natural. I could go on about why this is great.
3 Objects are spaces with a chosen point (X, x0 ) and morphisms (X, x0 ) → (Y, y0 ) are continuous maps f : X → Y such that
f (x0 ) = y0 .
10
II.6 More Hom functor
Are hom-sets between (co)limits the (co)limits of hom-sets? The important answer is yes, and we will be
thinking about questions like this more later.
Proposition II.34. For every object X, the functors Hom(X, −) and Hom(−, X) commute with limits. That
is, if I → C is a diagram in C and limI ci exists, then for any object X one has
←−
HomC (X, lim ci ) ∼
= lim HomC (X, ci ) and
←− ←−
I I
HomC (lim ci , X) ∼
= colim HomC (ci , X).
←− −→
I I
Proposition II.35. For every object X, the functors Hom(X, −) and Hom(−, X) commute with colimits.
(The precise statement of this is dual to that in the previous proposition.)
11
III (Review) Lecture 3: Sheaves on spaces
III.1 What is a sheaf?
Let X be a topological space.
Definition III.1. We let Open(X) be the category whose objects are open subsets U ⊆ X, and where
morphisms U → V are precisely inclusions U ⊆ V.
In particular, between any two objects U and V , there are either exactly 0 maps between them (if U
does not contain V ), or exactly 1 map U → V (if U ⊆ V ).
As a category, this is not so interesting. It is introduced only to make the following notions easier to
define.
F : Open(X)op → Ab,
If U ⊆ V, then the map F(V ) → F(U ) (recall that, in addition to specifying abelian groups F(U ),
we also need to specify where our functor maps morphisms!) is defined to be the restriction map
ϕ 7→ ϕ|U ,
s|Ui = si .
Remark III.6. There are two parts to this notion: existence of glueings, and uniqueness of glueings.
12
There is a fully faithful forgetful functor
I : Sh(X) → Psh(X),
where the limit on the right is taken in the category of abelian groups. A similar formula holds for colimits.
Proof. Left to the reader; as a hint, construct a map
(for limi Fi the sheaf defined in the theorem statement) and check it is both injective and surjective; this
←−
proves our formula is actually the categorical limit.
Our next step will be to prove that Sh(X) is complete and cocomplete. First, we show completeness.
Theorem III.9. Let Fi be a diagram of sheaves. Then the presheaf limit
!
lim Fi (U ) := lim Fi (U )
←− ←−
i i
is a sheaf.
Proof. For this, it is useful to give a reformulation of the definition of sheaf. Let F be a presheaf. Then
F is a sheaf if and only if, for any open set U ⊆ X, and any open cover {Uα }α∈A of U, the sequence of
maps Y Y
0 → F(U ) → F(Uα ) → F(Uα ∩ Uβ )
α∈A α,β∈A
is left exact, where the first map is just the product of the restriction maps, and the second map sends
(sα )α∈A to
(sα |Uα ∩Uβ − sβ |Uα ∩Uβ )α,β∈A .
Or equivalently, F is a sheaf if and only if the map
Y Y
F(U ) → ker F(Uα ) → F(Uα ∩ Uβ
α∈A α,β∈A
is always an isomorphism.
Since each Fi is a sheaf, the maps
Y Y
Fi (U ) → ker Fi (Uα ) → Fi (Uα ∩ Uβ
α∈A α,β∈A
are all isomorphisms. Take the limit of these diagrams over i, and so the map
Y Y
lim Fi (U ) → lim ker Fi (Uα ) → Fi (Uα ∩ Uβ
←− ←−
i i α∈A α,β∈A
13
is an isomorphism. Limits commute with limits; the kernel is a limit, and so it commutes with limi . It also
←−
commutes with all the products, and hence the above isomorphism can be rewritten as an isomorphism
Y Y
lim Fi (U ) → ker lim Fi (Uα ) → lim Fi (Uα ∩ Uβ .
←− ←− ←−
i α∈A i α,β∈A i
14
Theorem III.15. The functors f −1 , f∗ are an adjoint pair. Thus, for any F ∈ Sh(X), G ∈ Sh(Y ), we have
f −1 : Ab → Sh(X)
and
f∗ : Sh(X) → Ab.
The direct image is simple:
The global sections functor has an adjoint f −1 , which is called the constant sheaf functor.
Definition III.17. Let A be an abelian group. Then the constant sheaf on A is the sheaf A := f −1 (A).
Remark III.18. As an exercise, prove that A(U ) = A if U is connected. What happens if U is discon-
nected?
Remark III.19. Since the global sections functor is a right adjoint, it commutes with all limits. This gives
a category theoretic explanation for why the formula
!
lim Fi (X) = Fi (X)
←−
i
15
III.6 Skyscraper sheaves and stalks
For any point x ∈ X, there is a continuous inclusion ix : {x} → X. This gives us two functors
ix,∗ : Ab → Sh(X),
i−1
x : Sh(X) → Ab.
Definition III.21. Let F be a sheaf on a space X. The stalk of F at x is the abelian group
Fx = i−1
x (F) = co lim F(U ).
−→
U ∋x
The stalk is an incredibly useful construction. Here are some properties one should verify.
Definition III.22.
Check that the colimit definition of a stalk makes sense for presheaves, so that it makes sense to talk
about stalks.
A presheaf F and its sheafification F # have the same stalk at every point x. If you know the construction
of the sheafification functor, you can check this directly – but you don’t need to know the construction of
sheafification! Try to prove this purely using categorical properties of stalks and sheafification.
If U ⊆ X is open and x ∈ U, then there is a natural map F(U ) → Fx . If s ∈ F(U ), we write sx for the
image of s under this natural map. (Hint: remember the definition of colimit!)
Let F be a presheaf. Then the axiom of uniqueness of glueings in the definition of sheaf is equivalent to
saying that, for every section s ∈ F(U ), if sx = 0 for every x ∈ U, then s = 0.
Taking stalks commutes with limits and colimits.
If 0 → F ′ → F → F ′′ → 0 is a sequence of sheaves, then it is short exact if and only if for every x ∈ X,
the sequence 0 → Fx′ → Fx → Fx′′ → 0 is.
Use the previous point to prove that sheafification is exact.
Definition III.23. The skyscraper sheaf at a point x ∈ X with stalk A is the sheaf ix,∗ A.
16
IV (Review) Lecture 4: Sheaves on sites
In 1949, Andre Weil (while he was a UChicago professor) proposed the Weil conjectures, which propose
a way of taking a system of equations defined over Z, and relating the number of solutions to that
system over a finite field Fq to the topology of the complex solution set. Weil was able to prove the Weil
conjectures in a few special cases; most notably, Weil algebraized a large amount of the modern theory
of algebraic geometry of curves, so that classical theorems for curves over R or C would apply to fields
like Fq , allowing him to give a proof of the Weil conjectures for curves.
As Weil proposed from the start, and as Serre made more precise in 1960 with his proof of the
Kahler analogues of the Weil conjectures, the ultimate difficulty in proving the Weil conjectures stems
from being able to define “Weil cohomology theories" – basically, a theory of cohomology for algebraic
varieties defined over fields like Fq .
Ultimately, Grothendieck defined etale cohomology to fulfill this dream.
IV.1 Sites
The central difficulty with giving a cohomology theory on algebraic varieties over finite fields is that a
finite topological space doesn’t have that many open sets, and so if you just take an algebraic topologist’s
cohomology then you won’t get anything useful.
Grothendieck resolved this by extending the definition of cohomology. We won’t talk about this
generalized cohomology (yet! but later on in condensed math, we will need to), but the starting point is
a generalization of topological space, and a corresponding generalization of the notion of sheaf.
Definition IV.1. Let C be a category. A Grothendieck topology on C is a collection of distinguished families
of morphisms sharing a common target, called covering families (so, a covering family is the data of an
object U ∈ C, and a collection of morphisms {Ui → U }i∈I ), obeying the following axioms, analogous to
the axioms for a topology.
Firstly, any isomorphism is always a covering family. This is in analogue to how the entire set of a
topological space is open.
Secondly, analogously to how an arbitrary union of opens is open, if {Ui → U }i∈I is a covering
family, and if for each i ∈ I we have a covering family {Uji → Ui }ji ∈Ji , then the family
is a covering family of U.
Lastly, analogously to how finite intersections of open sets are open, we need one more axiom.
Firstly, the categorical analogue of the intersection is something called the fiber product; if the reader
doesn’t know what it is, then it is given in the definition just below this one.
So, we require that C has all fiber products, and that if V → U is any morphism, and {Ui → U }i∈I
is any covering family, then {Ui ×U V → V }i∈I is a covering family as well.
Definition IV.2. If f1 : X1 → S and f2 : X2 → S are two morphisms, then the fiber product of f1 , f2 is
the limit X1 ×S X2 of the diagram
X1 ×S X2 X1
X2 S
17
(The two morphisms are
(si )i∈I 7→ (si |Ui ×U Uj )i,j∈I ,
(si )i∈I 7→ (sj |Ui ×U Uj )i,j∈I
obtained via the two natural maps Ui ×U Uj → Ui and Ui ×U Uj → Uj .)
The results of sheaf theory we established last time essentially go through for the exact same abstract
nonsense categorical reasons.
This system of equations defines a complex algebraic variety, which has (singular) cohomology
groups, a very concrete topological invariant.
But over certain finite fields, the equation
√
y − x2 = 2
√
still makes sense (for instance, for p odd, 2 exists over either Fp or Fp2 , and so this equation still makes
sense).
Over a finite field, there’s only some finite number of solutions to this equation. You could take
singular cohomology of this finite set (with its Zariski topology), but the cohomology groups you get are
essentially meaningless.
Is there any sense in which the finite field remembers the cohomology of the complex variety?
Weil found a miracle: it does! I want to look at an example which will be very easy to count points
for, but which might not be so convincing. There was much more numerical evidence known to Weil
(including a few special cases of the Weil conjectures that Weil proved before he even formulated the
Weil conjectures, and the case of elliptic curves which was proven by Hasse in 1933).
Look at PnFq , the projective space over Fq . Recall that the cohomology of projective n-space over the
complex numbers is given
H ∗ (PnC ) = Z[α]
where |α| = 2. In other words, in even degrees, H 2i (PnC ) = Z for 0 ≤ i ≤ n, and H 2i−1 (PnC ) = 0 in all
odd degrees. There are many ways to compute this, but probably the easiest is to note that PnC can be
built up as a CW complex built out of a one 0-cell, one 2-cell, ..., one 2n-cell. (Do the example of a disk
glued along its boundary is a sphere.)
How many points are on PnFq ? This is easy: it’s just
1 + q + · · · + qn .
Look at the analogy between how PnC is built out of one 0-cell, one 2-cell, etc.
The Weil conjectures predict that in general, the number of points defined over Fq should be inti-
mately related to the cohomology groups of the corresponding complex algebraic variety. Specifically,
Weil defines the zeta function of a variety X over Fq as a certain exponential generating function of the
sequence |X(Fq )|, |X(Fq2 )|, ..., and then conjectures that this generating function ζ should obey certain
properties related to the topology of the corresponding complex variety.
As another example, we consider the case of elliptic curves. An elliptic curve X recall is a certain
type of equation of the form
y 2 = x3 + ax + b.
18
Over the complex numbers, such equations correspond to genus 1 surfaces.
Over a finite field Fq , Hasse proved that the number of points on an elliptic curve was of the form
√
|#X(Fq ) − (q + 1)| ≤ 2 q.
How does this relate to topology? Well, over the complex numbers,
H 0 (X; Z) = Z,
H 1 (X; Z) = Z2 .
H 2 (X; Z) = Z,
The Z, Z in the even terms give us the 1+q, just like in the projective space case the even cohomology
gave us 1 + q + · · · + q n . The Z2 in the odd degree terms give us that
#X(Fq ) = 1 + q + α + α,
√
where α is a complex number of absolute value q. It’s easy to deduce the Hasse bound from this.
where the left hand side is etale cohomology with coefficients in the constant sheaf associated to Λ, and
the right hand side is singular cohomology.
So, the etale cohomology remembers the complex cohomoloy, at least for finite coefficient rings!
One can proceed to define the ℓ-adic cohomology of X to be
i i
Het (X, Zℓ ) := lim Het (X, Z/ℓn Z).
←−
n
We remark that in general, the etale cohomology in the constant sheaf Zℓ is NOT equal to the ℓ-adic
cohomology we defined above. Very sad.
It would be nice if we could have etale cohomology with coefficients in Z or Q, but it seems like the
ℓ-adic ones are the best we can do.
19
V Lecture 5: Condensed mathematics?
The “review lectures" are finished. Now, we are going to make a serious move on condensed math.
Although we still are not getting to “real condensed stuff" until next week. But let’s finally ask “why
condensed math?"
Here are some very basic answers.
(1) A lesson going back to Grothendieck: we prefer good categories with complicated objects
over bad categories with familiar objects. Bad categories sometimes arise when we mix topol-
ogy and algebra. For instance, the category TopAb of topological abelian groups is not abelian.
Consider the following morphism in TopAb:
This map has trivial kernel and cokernel, but is not an isomorphism. Condensed abelian groups fix
this problem. (We will work out this example shortly.)
(2) More broadly, the category Top is not particularly well-behaved. It does not have an internal
Hom is general, nor does it have any “obvious" subcategory of generators. Condensed sets fix this
problem.
(3) Scholze, here: “Topological spaces formalize the idea of spaces with a notion of "nearness" of points.
However, they fail to handle the idea of "points that are infinitely near, but distinct" in a useful
way. Condensed sets handle this idea in a useful way." For the most basic example, consider the
action of Q on R. The quotient space R/Q has infinitely many points, but the quotient topol-
ogy is indiscrete—no two points can be separated. We have lost topological information. More
important examples like this arise in algebraic geometry, functional analysis, ...
(4) Another good reason is because Peter Scholze says that developing condensed math might be
one of the most important things he will ever do.
20
abelian groups, i.e. with sheaves of abelian groups on cHaus. Every space gives rise to a condensed set via
X 7→ X := HomTop (−, X), and the morphism i : (R, discrete) → (R, Euclidean) induces a morphism of
condensed abelian groups
i : (R, discrete) → (R, Euclidean).
We can compute the kernel and cokernel of this map! The kernel is trivial, however the cokernel is the
sheaf
This is not trivial in general. For instance, consider S = (R, Euclidean). The function f : S → (R, Euclidean)
given by x 7→ x is not continuous as a function S → (R, discrete). Thus, passing to condensed sets has
revealed a nontrivial cokernel that “explains" why i is not an isomorphism.
Remark V.5. In the previous example, we showed that the cokernel sheaf (R, Euclidean)/(R, discrete) is
not trivial. We did so by finding S ∈ cHausop on which the cokernel sheaf is nontrivial. If S = ∗, however,
then (R, Euclidean)/(R, discrete)(S) = 0, and this is precisely saying that the quotient of topological
abelian groups (R, Euclidean)/(R, discrete) is trivial. Thus, classical theory “looks at things from the
perspective of a point" while condensed theory “looks at things from the perspective of all compact
Hausdorff spaces at once. (This is an informal slogan. I stole it from Logan.)
V.2 Presheaves
We want to fix the problem with naive condensed sets (c.f. Remark V.3). At several points, we will use
(co)limit completions of categories. Presheaves are the terminal example. We will review the relevant
theory for presheaves today, then talk about (co)limit completions in general next time.
Let C denote a small category. Given X ∈ C, write hX for the presheaf represented by X, i.e.
hX := HomC (−, X).
Definition V.6. Recall that a presheaf on C is a functor F : Cop → Set. With natural transformations as
morphisms, presheaves form a category. We write this either Fun(Cop , Set) or PShv(C).
Definition V.7. Let F : Cop → Set be a presheaf. Its category of elements el F is the category defined as
follows.
• The objects are morphisms of functors hX → F .4
• The morphisms between (hX → F ) and (hY → F ) are the natural transformations hX → hY
making the following triangle commute.
hX hY
Remark V.8. The category of elements el F associated to the presheaf F is an example of a more general
construction called the slice category.
Remark V.9. The Yoneda lemma says that morphisms X → Y are in natural bijection with natural
transformations Hom(−, Y ) =⇒ Hom(−, X). Thus, morphisms hX → hY in el F are “the same thing
as" certain morphisms X → Y .
Proposition V.10. Consider the canonical functor DF : el F → C taking hX → F to X. Let y : C ,→
PShv(C) denote the Yoneda embedding. We have
F ∼
= colim (y ◦ DF ).
−→
4 I.e.,
the set of objects is in bijection with pairs (X, η) where X ∈ Ob(C) and η is a natural transformation of functors
Hom(−, X) =⇒ F .
21
Proof. For ease of notation, write ϕ := y ◦ DF . The functor ϕ : el F → PShv(C) takes objects hX → F
to hX and morphisms hX → hY to themselves. By construction, for every object z ∈ el F , there is a
morphism ϕ(z) → F in PShv(C) and all these morphisms commute with those in the diagram y ◦ DF . By
the universal property of colimits, there is an induced map
colim ϕ → F.
−→
The claim is that this is an isomorphism. We will show that it is injective. That is, we will show that for
every X ∈ C and α ∈ F (X), the set map [colim ϕ](X) → F (X) hits α. This boils down to the Yoneda
−→
lemma: it says that for every α ∈ F (X), there is a morphism hX → F such that id ∈ hX (X) maps to α.
Unwinding definitions, this implies that colim ϕ → F is surjective.
−→
22
VI Lecture 6: Colimit completions
VI.1 Presheaves as a colimit completion
As an extended motivating example, I’ll explain why for a small category C, the presheaf category
PShv(C) := Fun(Cop , Set) is
(1) “The same thing as" small diagrams in C, and
(2) The “free colimit completion" of C.
Note that these are characterizations of PShv(C). (Although, to make (1) a definition requires more than
we talk about.) This will model our approach to other types of completions.
First I’ll explain (1). The relevant theorem is called the density theorem.
Let me restate (maybe a bit more clearly) what we discussed last time. Let C be a small category
and PShv(C) := Fun(Cop , Set) its presheaf category. The Yoneda embedding is the fully faithful functor
Y : C ,→ PShv(C)
sending objects to their represented functor (i.e., X 7→ HomC (−, X)) and morphisms f : X → Y to the
natural transformation HomC (−, Y ) → HomC (−, X) given by post-composition with f . Given a preseaf
F : Cop → Set, we defined its category of elements el F . There’s a canonical functor DF : el F → PShv(C).
Proposition VI.1. The functor DF : el F → PShv(C) factors as the composite
Y
el F C PShv(C).
Here, the first functor el F → C sends an object hX → F to X and a morphism hX → hY to its corresponding
morphism X → Y under the identification Hom(hX , hY ) ∼ = hY (X) = Hom(X, Y ).5 By abuse of notation,
we write DF for the functor el F → C also. You could make this more precise if you wanted to, I think.
Proof. Easy exercise. (Use the Yoneda lemma.) (Is this equivalent to some version of Yoneda?)
Proposition VI.2 (Density theorem). A presheaf F ∈ PShv(C) is the colimit of its category of elements:
F ∼
= colim D .
−→ F
el F
Remark VI.3. The density theorem and Proposition VI.1 say that every presheaf F ∈ PShv(C) is “canon-
ically" presented by a diagram in C, namely as the diagram el F → C. Conversely, although a diagram
I → C may not have a colimit in C, we may Yoneda-embed and consider the diagram I → C ,→ PShv(C).
Since PShv(C) is complete and cocomplete, this diagram admits a colimit (which is a presheaf on C). In Did
some weak sense, we’re saying that presheaves on C are “the same thing as" diagrams in C. Michael
talk about
Let me just tack on the (co)completeness property I just mentioned.
this?
Proposition VI.4 (Tag 00VB). If C is any small category, then PShv(C) is complete and cocomplete.
Moreover, limits and colimits of presheaves are “computed pointwise" in the sense that given a diagram
F : I → PShv(C),
Here’s (2).
5 That identification is the Yoneda lemma.
23
Proposition VI.5 (PShv(C) is the free colimit completion). By Proposition VI.2, each presheaf F ∈
PShv(C) is canonically a colimit over the diagram of its category of elements: F ∼
= colim [y ◦ DF ]. Sup-
−→
pose as given a cocomplete category D. For each functor G : C → D, define a functor G: PShv(C) → D
by
colim[y ◦ DF ] 7→ colim F DF .
−→ −→
Claim: the functor G is cocontinuous and the functor G 7→ G defines a categorical equivalence
Fun(C, D) ∼
= Funcocts (PShv(C), D).
Remark VI.6. We already knew that PShv(C) had all colimits (and limits). This proposition says that
PShv(C) is universal with respect to this property: any functor C → D landing in a cocomplete category
factors uniquely through a cocontinuous functor PShv(C) → D.
We are interested in the filtered colimit completion, its dual cofiltered limit completion, and the sifted
colimit completion. We will define/construct these along the lines of (1), (2), and/or (3) above.
lim colim F × G ∼
= colim lim F × G.
←− −→ −→ ←−
J I I J
24
Remark VI.10. What should morphisms be? We want to think of ind-objects as “stand-ins" for their
colimits, i.e. as “formal filtered colimits." (An ind-object may not really have a colimit in C, but Y embeds
them fully faithfully into PShv(C), which has all colimits.) Then morphisms should be such that these
“formal filtered colimits" behave like actual colimits. To be precise: let us regard two ind-objects X :=
“colimI ”xi , Y := “colimJ ”yj as “formal colimits" in C. We ought to have
−→ −→
Hom(X, Y ) = lim Hom(xi , Y ) = lim colim Hom(xi , yj ).
←− ←− −→
I I J
We expect the first equality because Hom takes colimits to limits in the first variable. We expect the
second equality for some slightly more complicated reason. This brings us to our definition.
Definition VI.11. The ind-morphisms between two ind-objects {xi }I → {yj }J are defined as
Definition VI.12 (Characteriztion (2), Ind(C) as diagrams). We denote by Ind(C) the ind-category of C.
Proposition VI.13 (Characterization (1), Ind(C) as presheaves). Consider the canonical functor F :
Ind(C) → PShv(C) that Yoneda embeds an ind-object X := {xi }I and takes its colimit in PShv(C). This
functor is fully faithful. Thus, Ind(C) may be identified with the full subcategory of PShv(C) spanned by
ind-objects, i.e. spanned by the filtered colimits of representable presheaves.
Proof. This is basically by definition. Let X, Y be ind-objects. Recall that Hom takes colimits to limits in
the first argument and that limits of presheaves are computed pointwise. We get a natural isomorphism
The right-hand side is HomInd(C) (X, Y ) by definition. Then (by definition) the functor Ind(C) → PShv(C)
is just the identity on hom-sets, which is bijective.
Remark VI.14. Conside the embedding C ,→ Ind(C) which maps an object c to its singleton diagram
∗ 7→ c. This clearly factors the Yoneda embedding, i.e. Y lands in Ind(C), i.e. the following diagram
commutes.
Ind(C)
C Y
PShv(C)
We said that Ind(C) is naturally the full subcategory of Fun(Cop , Set) of filtered colimits of representables.
If C is “nice," we can describe this subcategory more concretely.
Corollary VI.15 (What kind of presheaves?). Recall that filtered colimits are precisely those commuting
with finite limits. Suppose that C is finitely cocomplete, so that Cop admits finite limits. [Don’t we want Cop
to have finite colimits?] The previous corollary says that an ind-object X is a filtered colimit of representables
X = colimI Yxi . Then we may evaluate X at a finite colimit in Set and compute:
−→
X(colim yj ) = [colim Hom(−, xi )](colim yj )
−→ −→ −→
J I J
= colim Hom(colim yj , xi )
−→ −→
I J
= colim lim Hom(yj , xi )
−→ ←−
I J
= lim colim Hom(yj , xi ).
←− −→
J I
25
In order, these equalities follow from: (1) definition; (2) colimits of presheaves are computed pointwise; (3)
Hom takes colimits to limits in the first argument; and (4) filtered colimits commute with finite limits. Thus,
ind-objects are presheaves which preserve finite colimits.
Proposition VI.16. The converse is also true: if a presheaf F preserves finite colimits, then F is a filtered
colimit of representables. (Namely, DF is filtered, whence F ∼= colim D proves the claim.)
−→ F
Corollary VI.17. Thus, Ind(C) is precisely the full subcategory of right exact presheaves, i.e. those preserving
finite colimits. Then we may identify (or take as defintion)
Ind(C) ∼
= Funrex (Cop , Set).
Lastly, we want a characterization of Ind(C) in the likeness of (3), a “free filtered colimit completion"
universal property.
Proposition VI.18 (Characterization (3), Ind(C) as free filtered colimit completion). If D has filtered
colimits, then restriction along Y : C ,→ Ind(C) induces an equivalence of categories
Θ : Fun(C, D) ∼
= Funf ilco (Ind(C), D).
Proof. Restriction along Yoneda is the functor Θ : Funf ilco (Ind(C), D) → Fun(C, D) given by F 7→ YF . We
will show that Θ is fully faithful and essentially surjective. Suppose as given F, G ∈ Funf ilco (Ind(C), D).
(Full) Take as given a natural transformation η : YF → YG. We want to extend this to a natural
transformation η̄ : F → G. Recall that X ∈ Ind(C) has a canonical presentation as a filtered colimit
X = colimI Yxi . Since F preserves filtered colimits, F X = colimI F Yxi . Likewise for GX. Now the
−→ −→
existing ηxi : F Yxi → GYxi determine a map F X → F Y . All these assemble to a natural transformation
η̄ which obviously satisfies Θ(η̄) = η, i.e. η̄ restricts to η.
(Faithful)
(Essentially surjective)
Remark VI.19. In other words, Ind(C) has the following property: for any functor F : C → D to a
category admitting filtered colimits, there exists a unique functor Ind(C) → D such that (1) it extends
F along Y : C ,→ Ind(C), and (2) it preserves filtered colimits. And this describes a bijection (in fact, a
functorial equivalence) between Fun(C, D) and Funf ilco (Ind(C), D).
26
VII Lecture 7: Profinite sets and spaces
Let C be a category. Last time we defined its ind-completion Ind(C). I wanted to define other completions,
but we did not have time, but that is OK since we described the general procedure for completions.
Today, we will use a completion “dual" to Ind(C), and will finally do something vaguely condensed.
(2) We may identify Pro(C) with its image under the embedding Pro(C) ,→ PShv(C) given by Yoneda-
embedding a diagram and taking its limit in PShv(C). This identifies Pro(C) as the full subcategory
spanned by pro-objects, i.e. cofiltered limits of representable presheaves.
(3) In particular, dual to Corollary VI.17, if C is finitely complete, then Pro(C) is naturally the full
subcategory of left exact presheaves, i.e. those preserving finite limits:
Pro(C) ∼
= Funlex (Cop , Set).
(4) Pro(C) has the “free completion of C at cofiltered limits" universal property.
ProFinSet
{si }i 7→{disc(si )}i
disc
FinSet disc
Top Pro(Top)
{Xj }j 7→lim Xj
←
−
We are gathered here today to present two basic and nice structure theorems.
Theorem VII.3. The functor disc : ProFinSet → Top is continuous and fully faithful.
Theorem VII.4. Call a space profinite if it belongs to the essential image of disc. TFAE.
27
(2) X is a cofiltered limit of finite, discrete spaces.
(3) X is a limit of finite, discrete spaces.
(4) X is a Stone space, i.e. it is Hausdorff, compact, and totally disconnected.
Remark VII.5. Let’s ruminate on Theorem VII.3. Suppose that S is a profinite set. The space X := disc(S)
does not “know" it arises from a profinite set—a priori, to remember X ∼ = disc(S) is “extra structure,"
comparable to a filtration. Nevertheless, what Theorem VII.3 tells us is that there is really no loss of
information. Up to isomorphism, the topology on X uniquely encodes the profinite set S. Say this
better?
VII.3 The profinite topology
Let’s lay a bit of groundwork and prove part of Theorem VII.4. If I say something wrong or confusing,
maybe consult Section 08ZS.
The functor disc maps a profinite set {si } to the colimit of each set si regarded as a discrete space.
What is this colimit (both its underlying set and topology)? We talked
about this
Proposition VII.6. The forgetful functor U : Top → Set commutes with all small limits and colimits.
a bit in
Proof. There are a few ways you could do this. Maybe the shortest: the forgetful functor is left and right Lecture II?
adjoint (to the indiscrete space functor and to disc, respectively). Left adjoints always commute with
colimits. Right adjoints always commute with limits.
Proposition VII.7. Let {Xi }I be a pro-system of topological spaces. By Proposition VII.6, the underlying set
of lim Xi is given by
←−
Y
U lim Xi = {(xi )i ∈ Xi : ∀ϕ : i → i′ , we have (Xϕ)(xi ) = xi′ }
←−
i
where the right-hand side is the general formula for a limit of sets as in Example
Q II.19. Define the profinite
topology on U lim Xi to be the subspace topology induced by U lim Xi ,→ Xi . The claim is that this is
←− ←−
the smallest6 topology on U lim Xi such that every projection pj : lim Xj → Xj is continuous. In effect,
←− ←−
(U lim Xi , profinite topology) is the limit of the pro-system {Xi }.
←−
Summarizing, Proposition VII.6 describes the underlying set of a limit or colimit of spaces in general,
and Proposition VII.7 concretely describe the topology on a cofiltered limit of spaces. In particular, given
S = {si } ∈ ProFinSet, we can concretely describe disc(S), since disc just takes the cofiltered limit of the
si as discrete spaces. This concrete description lets us use our hands to prove the following.
Proposition VII.8. If {Xi }i is a pro-system, then X := lim Xi with the profinite topology is compact,
←−
Hausdorff, and totally disconnected.
Q
Proof. That X is Hausdorff is clear: each Xi is Hausdorff, so then Xi is, so then are its subspaces, in
particular X is Hausdorff. (This holds for general limits of Hausdorff spaces.)
Proof that X is compact: Note that X is a subspace of a product of compact spaces (the discrete
spaces Xi ). Tychonoff’s theorem says that the product is compact, so it suffices to show that X is closed.
(To-do: show that) (This holds for general limits of compact Hausdorff spaces.)
Proof that X is totally disconnected: let a, b ∈ X be distinct, which means there is some pj : X → Xj
such that pj (a) ̸= pj (b). Choose sets A, B such that A, B partition X, a ∈ A, and b ∈ B. Since pj is
surjective, πj−1 (A) and p−1
j (B) partition X, and they are open because A, B ⊆ Xj are open, and seperate
a and b by definition. Thus there are no connected subsets with more than one element. (This holds for
general limits of totally disconnected spaces.)
Corollary VII.9. We conclude that (1) =⇒ (4) in Theorem VII.4. For by Proposition VII.7, if {Xi } is a
pro-system of finite sets, then X := lim Xi with the profinite topology is a limit in Top of {Xi } where the Xi
←−
carry the discrete topology. Therefore F ({Xi }) ∼
= (X, profinite topology). The latter is Hausdorff, compact,
and totally disconnected by Proposition VII.8.
6 Least open sets.
28
VII.4 disc is continuous and fully faithful
Proposition VII.10. ProFinSet has all limits.
Proof. A category has finite limits ⇐⇒ it has equalizers and finite products. Furthermore, a category
with finite limits and cofiltered limits has all limits. We know that FinSet has equalizers and finite prod-
ucts, hence finite limits. This generally passes over to the procategory, so ProFinSet has finite limits. It
also has cofiltered limits by construction, hence it is complete.
Proposition VII.11. The functor disc : ProFinSet → Top induced by disc : FinSet ,→ Top preserves limits.
Proof. I’ll give two (sketch) proofs.
First proof: we can directly verify that disc preserves equalizers and finite products, so disc preserves
finite limits. (See Michael’s paper.) Additionally, the dual to Proposition VI.18 says that disc preserves cf
limits. Since disc preserves finite and cf limits, it preserves all limits.
Second proof: recall that disc is the composite ProFinSet → Pro(Top) → Top. The first map is
induced by disc and the second is “take the limit." We’ll show that both maps are continuous:
• Since FinSet ,→ Top preserves finite limits, so does ProFinSet → Pro(Top). Furthermore, ProFinSet →
Pro(Top) preserves cofiltered limits,7 and we conclude ProFinSet → Pro(Top) preserves all limits.
• Since Top has cf limits (it is complete), the dual to ?? says that evaluation Pro(Top) → Top is a
left adjoint, hence preserves limits.
Right adjoints have the great property that they preserve all limits. The last proposition says that
disc does too. The adjoint functor theorem gives us the converse: disc has a left adjoint.
Corollary VII.12 (Application of adjoint functor theorem). Denote by π̂0 : Top → ProFinSet the functor
given by X 7→ {Xi } where {Xi } is the codirected set of finite, discrete quotients of X. It is left adjoint to
disc.
So, we have an adjunction
disc
ProFinSet Top.
⊣
π̂0
The counit of this adjunction is a natural transformation ϵ : π̂0 lim(−) =⇒ idProFinSet . In general, a
←−
left adjoint is fully faithful ⇐⇒ its counit is an isomorphism. And we can show our counit ϵ is an
isomorphism.
Proposition VII.13. The counit of the adjunction F ⊣ π̂0 is an isomorphism. Equivalently, disc is fully
faithful.
Proof. I said this was elementary but it’s not very short. And I’m not convinced it’s very useful. Consult
Chicago course notes. It’s an application of elementary facts about compact and finite spaces.
29
Proof. Take X as given. Denote by FinPar(X) the set of finite partitions of X, i.e. each element
F A ∈
FinPar(X) consists of finitely many disjoint, nonempty opens Uj ⊆ X such that X = Uj ∈A Uj . If
A, B ∈ FinPar(X), declare that A ≤ B iff B refines A. This makes FinPar(X) into a poset.
Consider the diagram FinPar(X) → Top giving each A ∈ FinPar(X) the discrete topology. Define
X ′ := lim A
←−
A∈FinPar(X)
To be the limit over this diagram. Note that X ′ is profinite since FinPar(X) is cofiltered. For each A ∈
FinPar(X), denote by fA : X → A the map which sends x ∈ X to the open U ∈ A containing it. The
collection of fA ’s induces a map f : X → X ′ .
Since X ′ is profinite, it is compact. So, if we show that f : X → X ′ is a bijection, we can conclude
it is a homeomorphism.
Injectivity of disc is easy: since X is totally disconnected, if x, y ∈ X, any cover A ∈ FinPar(X)
either separates x and y or can be refined to a cover separating x and y. This suffices to find that disc is
injective.
(To-do: show surjective.)
30
VIII Lecture 8: The site cHausκ
We’re going to start building to some proper condensed math now.
Definition VIII.1. A strong limit cardinal is a cardinal κ so that λ < κ implies 2λ < κ.
For every uncountable strong limit cardinal κ, we define cHausκ to be the category of compact
Hausdorff spaces of cardinality strictly less than κ. Note that cHausκ is then essentially small.
One can prove that cHausκ has all finite limits: just take the finite limit in cHaus, and you won’t
exceed the cardinality bound.
cHausκ is finitely cocomplete. In fact, cHausκ is closed under all colimits whose diagrams have fewer
than λ objects, where λ is the cofinality of κ. Here, the cofinality is the smallest λ so that there exist a
collection of λ many sets of κ-small cardinality but whose disjoint union has cardinality κ.
Proof. The inclusion i : cHaus → Top is right adjoint to Stone-Cech compactification; left adjoints pre-
serve colimits, and so we can get a colimit in cHaus by taking the ordinary colimit and then applying the
Stone-Cech compatification. Thus cHaus is cocomplete, and so cHausκ is finitely cocomplete since
|X|
|βX| ≤ 22 <κ
31