Skip to main content

Categorical Quantum Mechanics:  2017-2018



Schedule CMSc in Computer Science

MSc in Mathematics and Foundations of Computer Science



This course gives an introduction to the theory of monoidal categories, and investigates their application to quantum computer science. We will cover the following topics, illustrating applications throughout to quantum computation:

  • Monoidal categories, the graphical calculus, coherence
  • Linear structure on categories, biproducts, dagger-categories
  • Dual objects, traces, entangled states
  • Monoids and comonoids, copying and deleting
  • Frobenius structures, normal forms, characterizing bases
  • Complementarity, bialgebras, Hopf algebras
  • Completely positive maps, the CP construction
  • Bicategories and their graphical calculus

To complement the theoretical side of the course, we will also learn about the proof assistant Globular, and use it to formalize some of the results. There will be a practical session using the tool later in the term (date TBA).

This course can currently only be taken by students enrolled on the DPhil, MFoCS or MSc in computer science programmes. However, everyone is welcome to sit in and follow the lectures.


Weeks 1 to 8, Mondays at 12pm and Thursdays at 2pm, Lecture Theatre B, Department of Computer Science.


The notes and slides for the entire course can be downloaded here.


There are classes in weeks 2 to 8. There are 2 groups, at 12pm and 5pm on Tuesdays. Hand-in is at 12pm on the preceding Friday, to David Reutter's pigeonhole. The classes will cover the following problems in the lecture notes, which have now been updated from last year:

  • Week 2: 1.4.1-1.4.5, 1.4.12.
  • Week 3: 1.4.6, 1.4.7, 2.5.1-2.5.5.
  • Week 4: 3.4.1-3.4.5, 3.4.7-3.4.9, 3.4.11
  • Week 5: 4.3.1-4.3.5, 4.3.7, 4.3.8
  • Week 6: 5.7.1-5.7.7
  • Week 7: 6.5.1-6.5.6
  • Week 8: 7.7.1-7.7.4, 7.7.7


The course will involve a practical session using the graphical reasoning package Globular. This will take place at 3pm on Thursday 23 February in room 379, between 3pm and 5pm. Please make sure you have watched the YouTube introduction before the practical.

Learning outcomes

After studying this course, students will be able to:

  1. Understand and prove basic results about monoidal categories. 
  2. Fluently manipulate the graphical calculus for compact categories. 
  3. Model quantum protocols categorically and prove their correctness graphically. 
  4. Appreciate differences between categories modeling classical and quantum theory. 
  5. Work with Frobenius algebras in monoidal categories. 
  6. Manipulate quantum algorithms in the ZX-calculus. 
  7. Explore graphical theories using the Globular software tool. 
  8. Be ready to tackle current research topics studied by the quantum group.


Ideal foundations for this course are given by the Michaelmas term courses Categories, Proofs and Processes and Quantum Computer Science. Students who have not taken these courses will need to be familiar with basic topics from category theory and linear algebra, including categories, functors, natural transformations, vector spaces, Hilbert spaces and the tensor product. Chapter zero in the lecture notes briefly covers this background material.

Students wishing to do their dissertation with the Quantum Group are expected to sit this course, as well as the two mentioned above.


Reading list



Related research at the Department of Computer Science