Quantum Computing (UvA course code 5334QUCO8Y)

University of Amsterdam and Mastermath course, Spring 2020 semester

Lecturer: Ronald de Wolf (CWI and ILLC)
Teaching assistant: TBA

Contents of the course:

Today's computers---both in theory (Turing machines) and practice (PCs and smart phones)---are based on classical physics. However, modern quantum physics tells us that the world behaves quite differently. A quantum system can be in a superposition of many different states at the same time, and can exhibit interference effects during the course of its evolution. Moreover, spatially separated quantum systems may be entangled with each other and operations may have "non-local" effects because of this. Quantum computation is the field that investigates the computational power and other properties of computers based on quantum-mechanical principles. Its main building block is the qubit which, unlike classical bits, can take both values 0 and 1 at the same time, and hence affords a certain kind of parallelism. The laws of quantum mechanics constrain how we can perform computational operations on these qubits, and thus determine how efficiently we can solve a certain computational problem. Quantum computers generalize classical ones and hence are at least as efficient. However, the real aim is to find computational problems where a quantum computer is much more efficient than classical computers. For example, Peter Shor in 1994 found a quantum algorithm that can efficiently factor large integers into their prime factors. This problem is generally believed to take exponential time on even the best classical computers, and its assumed hardness forms the basis of much of modern cryptography (particularly the widespread RSA system). Shor's algorithm breaks all such cryptography. A second important quantum algorithm is Grover's search algorithm, which searches through an unordered search space quadratically faster than is possible classically. In addition to such algorithms, there is a plethora of other applications: quantum cryptography, quantum communication, simulation of physical systems, and many others. The course is taught from a mathematical and theoretical computer science perspective, but should be accessible for physicists as well.

This course will complement Maris Ozols and Michael Walter's course on Quantum Information Theory that's taught on Monday afternoon. Neither course requires the other, but students interested in writing a thesis in quantum computation/information are encouraged to follow both.


Familiarity with basic linear algebra, probability theory, discrete math, algorithms, all at the level of a first Bachelor's course. Also general mathematical maturity: knowing how to write down a proof properly and completely.


Ronald's lecture notes.

Lectures and location:

February 3 - May 25, 2019. Every Monday 10:00-12:45, at Amsterdam Science Park, D1.111.
Each Monday block consists of 2 hours of lectures followed by an exercise session.


This is an 8 ECTS course over 14 weeks, plus a final exam, which comes to roughly 14 hours of work per week. There will be homework exercises for each lecture. To get some idea of the level of detail required for your homework solutions, you can have a look at the solutions to the 2015, 2017, 2018, 2019 exams, near the bottom of this page. If you use LaTeX and want to draw circuits, you could consider using qcircuit or qasm2circ, which is the package used for the Nielsen-Chuang book.

Here are our notes with general feedback on the homework, incl. some model solutions. These notes will be updated every week, so check them regularly.

Exam and grading:

Each homework set will get a grade between 1 and 10; if you don't hand it in you'll score a 1 for that week. When determining the average grade for the homework, we will ignore your two lowest scores. This is also meant to cover cases of illness etc.; in general we won't allow extensions for homework submission.
The final exam (June 8) will be open book, meaning you can bring the lecture notes, your own notes, homework, and any other papers you want, but no electronic devices. Your grade for the exam should be at least 5.0 in order to pass the course. There's the possibility for a re-sit of the exam on June 29. The final grade is determined for 60% by the final exam (or the re-sit if you take it) and 40% by the homework-grade. In accordance with the Mastermath rules, the final grade will be rounded to the nearest integer, also for Master of Logic students.

Preliminary course schedule:

  1. Monday February 3, 10:00-12:45
    Introduction to quantum mechanics and qubits, overview of the course
    Chapter 1 of lecture notes. Also make sure you know the material in Appendices A and B

  2. Monday February 10, 10:00-12:45
    The circuit model, Deutsch-Jozsa algorithm
    Chapter 2 of lecture notes

  3. Monday February 17, 10:00-12:45
    Simon's algorithm
    Chapter 3 of lecture notes

  4. Monday February 24, 10:00-12:45
    Quantum Fourier transform
    Chapter 4 of lecture notes

  5. Monday March 2, 10:00-12:45
    Shor's factoring algorithm
    Chapter 5 of lecture notes

  6. Monday March 9, 10:00-12:45
    Grover's search algorithm
    Chapter 7 of lecture notes

  7. Monday March 16, 10:00-12:45
    Quantum query lower bounds
    Chapter 11 of lecture notes

  8. Monday March 23, 10:00-12:45
    Quantum complexity theory
    Chapter 12 of lecture notes

  9. Monday March 30, 10:00-12:45
    Quantum encodings, with a non-quantum application
    Chapter 13 of lecture notes

  10. Monday April 6, 10:00-12:45

    Monday April 13, no class (Easter Monday)

  11. Monday April 20, 10:00-12:45
    Quantum communication complexity
    Chapter 14 of lecture notes

    Monday April 27, no class (King's Day)

    Monday May 4, no class (Commemoration of the dead)

  12. Monday May 11, 10:00-12:45
    Quantum cryptography
    Chapter 16 of lecture notes

  13. Monday May 18, 10:00-12:45
    Elective topic 1

  14. Monday May 25, 10:00-12:45
    Elective topic 2
    No homework for this week, but there will probably be a related question on the exam

  15. Monday June 8, 10:00-13:00
    Final exam (open book: all paper is allowed, no electronics)
    Location: REC M3.01 (Roeterseiland)
    If you want to practice, here are the exams from 2015, 2017, 2018, and 2019, with solutions.

  16. Monday June 29, 10:00-13:00
    Re-sit of the exam (open book: all paper is allowed, no electronics)
    Location: Science Park B0.204
    If you want to take the re-sit: let Ronald know by email, at least one day in advance. If you take the re-sit, the earlier exam-grade will be nullified and replaced by the re-sit-grade. Be aware that this could actually worsen your grade, or even make you fail the course if your re-sit grade is <5.0. Your homework grade will still count for 40%.

Last update of this page: Sep 12, 2019