Course manual 2024/2025

Course content

We have known that quantum computing can speed up the solving of several important problems for some decades now. Actually constructing quantum computers has proven difficult however. In the last few years we have seen the development of the first quantum computers that can probe the limits of existing classical computers. These developments have shown that there is a large gap between the ideal world of theoretical algorithms and the reality of physical devices. 
The goal of this course is to develop an awareness of all the different layers of theory and software needed to make quantum computing a reality.  We will go beyond the ‘abstract’ notion of a quantum algorithm that runs on a theoretical ideal machine, and understand what needs to be done to get the desired computation to run on a physical device.
Since this covers many areas, from compilation, scheduling, error correction,  and hardware-level pulse control, we will not be able to go into detail on all these topics. After giving a run-down of all these aspects, the rest of the course will focus on quantum compilation and error correction.
The guiding tool for this course will be the ZX-calculus, a graphical language for reasoning about quantum processes, which will allow us to make calculations on big circuits, without having to deal with the underlying matrices.

Study materials

Literature

  • Lecture Notes

  • Book: Picturing Quantum Software, by Aleks Kissinger and John van de Wetering. Available at: https://github.com/zxcalc/book

Objectives

  • Understand at a high-level all the different layers needed to translate a quantum algorithm into a computation that can be executed on a physical device.
  • Reason about various quantum gate sets - Cliffords, Clifford+T, Toffoli-like gates - and understand their uses and drawbacks.
  • Apply various intermediate representations for quantum processes – path-sums, Pauli exponentials, ZX-diagrams – to analyze properties of quantum computations.
  • Apply the stabiliser formalism: stabiliser states, Clifford unitaries, the Gottesman-Knill theorem for efficient stabiliser simulation.
  • Comprehend how quantum error correction is implemented using the stabiliser formalism.

Teaching methods

  • Lecture
  • Self-study

Learning activities

Activity

Hours

Hoorcollege

28

Tentamen

3

Werkcollege

28

Self study

109

Total

168

(6 EC x 28 uur)

Assessment

Item and weight Details Remarks

Final grade

80%

Tentamen

Must be ≥ 5

20%

Graded assignments

Weekly graded exercises

1 (17%)

Graded exercises Week 1

1 (17%)

Graded exercises Week 2

1 (17%)

Graded exercises Week 3

1 (17%)

Graded exercises Week 4

1 (17%)

Graded exercises Week 5

1 (17%)

Graded exercises Week 6

Exam: 3-hour sit-down exam. Students can bring one two-sided A4 sheet of handwritten or typeset (with reasonable margins and font size) study notes that are made by themselves.

Weekly exercises: best 5 out of 6 grades count.

Inspection of assessed work

The announcement for inspecting the grades will be given via Canvas.

Assignments

Students may work together with another student for the weekly exercises, but they have to be handed in individually. When quizzed students need to understand what they have written on their sheets.

Fraud and plagiarism

The 'Regulations governing fraud and plagiarism for UvA students' applies to this course. This will be monitored carefully. Upon suspicion of fraud or plagiarism the Examinations Board of the programme will be informed. For the 'Regulations governing fraud and plagiarism for UvA students' see: www.student.uva.nl

Course structure

Weeknummer Onderwerpen Studiestof
1 The full-stack and ZX-calculus Chapters 2 and 3
2 CNOT circuits and Cliffords Chapter 4, and 5.1,5.2
3 Cliffords and universal circuits 5.3-5.5 and 7.1-7.2
4 Toffoli gates and classical oracles Chapter 9
5 Stabiliser theory and Pauli exponentials 6.1-6.3 and 7.3-7.4
6 Stabiliser codes 11.1-11.4
7 Magic state distillation 10.2, 10.3, 11.5
8 Exam  

Contact information

Coordinator

  • dr. John van de Wetering

TA: Sarah Li