skip to primary navigationskip to content

Department of Computer Science and Technology

Category Theory


Course pages 2022–23

Category Theory

Lecture slides

A single pdf of all the slides, unannoted, but with hyperlinks, is here.

Individual pdfs for each lecture:

  • Lecture 1 (7 Oct) Introduction; some history; content of this course. Definition of category. The category of sets and functions. Commutative diagrams. Alternative definitions of category.
  • Lecture 2 (10 Oct) Examples of categories: pre-ordered sets and monotone functions; monoids and monoid homomorphisms; a pre-ordered set as a category; a monoid as a category. Definition of isomorphism.
  • Lecture 3 (12 Oct) Terminal objects. The opposite of a category and the duality principle. Initial objects. Free monoids as initial objects.
  • Lecture 4 (14 Oct) Binary products and coproducts.
  • Lecture 5 (17 Oct) Exponential objects: in the category of sets and in general. Cartesian closed categories: definition and examples.
  • Lecture 6 (19 Oct) Intuitionistic Propositional Logic (IPL) in Natural Deduction style. Semantics of IPL in a cartesian closed pre-ordered set.
  • Lecture 7 (21 Oct) Simply Typed Lambda Calculus (STLC). Semantics of STLC types in a cartesian closed category (ccc).
  • Lecture 8 (24 Oct) Semantics of STLC terms as morphisms in a ccc. Capture-avoiding substitution and its semantics in a ccc.
  • Lecture 9 (26 Oct) Soundness of the ccc semantics for beta-eta equality of lambda terms. The internal language of a ccc. Free cccs. The Curry-Howard-Lawvere/Lambek correspondence.
  • Lecture 10 (28 Oct) Functors. Contravariance. Identity and composition for functors. Size: small categories and locally small categories. The category of small categories.
  • Lecture 11 (31 Oct) Natural transformations. Functor categories. The category of small categories is cartesian closed.
  • Lecture 12 (2 Nov) Adjunctions. Examples of adjoint functors. Hom functors. Natural isomorphisms.
  • Lecture 13 (4 Nov) Theorem characterizing the existence of right (respectively left) adjoints in terms of a universal property.
  • Lecture 14 (7 Nov) Dependent types. Dependent product sets and dependent function sets as adjoint functors.
  • Lecture 15 (9 Nov) Presheaf categories. The Yoneda lemma. Presheaf categories are cartesian closed.
  • Lecture 16 (11 Nov) Moggi's computational lambda calculus and its categorical semantics using (strong) monads. Notions of computation. Monads and adjunctions.

Exercise sheets

Solution notes for the excerises will be posted on the course Moodle page.

Examples classes

Please use the Discussion Forum on the course Moodle page if you have questions about the course material or the exercise sheets.

The course has two one-hour Exercise/Help sessions:

  • Tuesday 25 Oct 4-5pm
  • Tuesday 15 Nov 4-5pm

Details of the arrangements for these sessions will be on the course Moodle page.

Additional material

See the syllabus for the recommended reading list. The following is the classic text on category theory and is definitely worth looking at if you are feeling mathematically mature:

  • Mac Lane, Saunders. Categories for the Working Mathematician. Graduate Texts in Mathematics 5, second ed. (Springer, 1988), ISBN 0-387-98403-8.
Another mathematically-oriented but simpler text (with its roots in the long-running course on Category Theory for Part III of the Mathematical Tripos) is:
  • Tom Leinster. Basic Category Theory (CUP, 2014). On-line here.

Other material: