# Module CS4002: Category theory

**Credit weighting (ECTS)**- 5 credits
**Semester/term taught**- Hilary term 2013-14
**Contact Hours**- 11 weeks, 3 lectures including tutorials per week
**Lecturer**- Prof. Arthur Hughes (Computer Science)
**Learning Outcomes**-
On successful completion of this module, students will be able to explain why:

- Many objects of interest in mathematics congregate in concrete categories.
- Many objects of interest to mathematicians are themselves small categories.
- Many objects of interest to mathematicians may be viewed as functors from small categories to the category of
**Sets**. - Many important concepts in mathematics arise as adjoints, right or left, to previously known functors.
- Many equivalence and duality theorems in mathematics arise as an equivalence of fixed subcategories induced by a pair of adjoint functors.
- Many categories of interest are the Eilenberg-Moore or Kleisli categories of monads on familiar categories2
- Many data types of interest to computing science are algebras for endofunctors.
- Many process of interest to computing science are coalgebras for endofunctors.

**Module Content**-
What is category theory? As a first approximation, one could say that category theory is the mathematical study of (abstract) algebras of functions. Just as group theory is the abstraction of the idea of a system of permutations of a set or symmetries of a geometric object, category theory arises from the idea of a system of functions among some objects.

We think of the composition g â°¦ f (f ; g often used in CS) as a sort of â``product'' of the functions f and g, and consider abstract â``algebras'' of the sort arising from collections of functions. A category is just such an â``algebra'', consisting of objects A, B, C, ¼ and arrows f \colon A â® B, g \colon B â® C, ..., that are closed under composition and satisfy certain conditions typical of the composition of functions1.

- Categories - functions of sets, definition of a category, examples of categories, isomorphisms, constructions on categories, free categories, foundations: large, small, and locally small.
- Abstract structures - epis and monos, initial and terminal objects, generalized elements, sections and retractions, products, examples of products, categories with products, Hom-sets.
- Duality - the duality principle, coproducts, equalizers, coequalizers.
- Groups and categories - groups in a category, the category of groups, groups as categories, finitely presented categories.
- Limits and colimits - subobjects, pullbacks, properties of pullbacks, limits, preservation of limits, colimits.
- Exponentials - exponential in a category, cartesian closed categories, Heyting algebras, equational definition, l-calculus.
- Functors and naturality - category of categories, representable structure, stone duality, naturality, examples of natural transformations, exponentials of categories, functor categories, equivalence of categories, examples of equivalence.
- Categories of diagrams - Set-valued functor categories, the Yoneda embedding, the Yoneda Lemma, applications of the Yoneda Lemma, Limits in categories of diagrams, colimits in categories of diagrams, exponentials in categories of diagrams, Topoi.
- Adjoints - preliminary definition, Hom-set definition, examples of adjoints, order adjoints, quantifiers as adjoints, RAPL, locally cartesian closed categories, adjoint functor theorem.

**Bibliography:**Awodey, S. (2006). Category Theory. Oxford Logic Guides 49, Oxford University Press.**Module Prerequisite****Assessment Detail**-
This module will be examined in a 2 hour
**examination**in Trinity term.