Module 2 Readings: Categories: The Language of Structure
Required
-
Textbook — ChapterEmily Riehl — Read §1.1 (Categories) and §1.2 (Functors) this week; §1.3–1.4 next weekFocus on: the formal definition, the examples in 1.1 (especially 1.1.3 through 1.1.8), and the slogan at the end of each section. The examples are the most important part — definitions alone will not produce fluency.
-
Textbook — ChapterFong and Spivak — Read §3.1–3.2Focus on: the database-as-category interpretation (§3.1), and how a database instance is a functor (§3.2). This reading provides the most direct CS-grounded entry point to categories.
Recommended
-
Blog / Video SeriesBartosz Milewski — 30 min — Strong CS-native intuition for composition as the fundamental operation
-
Classic PaperBarry Mazur — 2007 — Accessible philosophical essay on why mathematical objects are "the same" only up to isomorphism; motivates why category theory uses ≅ rather than =
-
TechnicalPatterson, Lynch, Fairbanks — 2021 — §1–2 — How Catlab.jl implements categories as data structures; a preview of Module 7's lab
Reading Notes
For the Riehl reading, work through every example with paper and pencil:
- For each example category, explicitly write out 3 objects and 3 non-identity morphisms.
- Verify composition and identity axioms for at least one example you construct yourself.
- Try to find an example of a "graph with composition rules" that fails to be a category. What axiom does it violate?
For the Fong-Spivak reading, implement the example database in SQLite or Python and verify that it corresponds to the categorical description.