ProgLog Pages |
ProgLog /
CoursePlanCategory Theory 7.5hp, master level course, LP2 2018 Examiner: Thierry Coquand Course Description Category theory, with an origin in algebra and topology, has found use in recent decades for computer science and logic applications. Category Theory is an increasingly popular setting for describing the semantics of functional programming languages. There are other connections with functional programming: the categorical paradigm has influenced the language design, and given rise to several of the language elements (functions, functors, monads, arrows, ...). We expect students to previously have taken courses on Programming languages, Functional programming and Logic and to have some level of mathematical maturity. (The courses "Types for Programs and Proofs" or "Advanced Functional Programming" are also recommended.) We also expect students to have had contact with linear algebra and discrete mathematics in order to follow the motivating examples behind the theory expounded. Overview This course aims to give an introduction to Category Theory from first principles, following the book of Steve Awodey The students meet twice a week (2 x 2 hours) and present in turn one chapter of Awodey's book, and then discuss exercises We cover Chapters 1,2,3,5,6,7,8 After the course is completed, students are expected to be able to follow and perform category theoretical arguments and diagram chases. Know about limits, colimits, adjunction, exponential, Yoneda Lemma. Examination Written examination at the end of the course |