Quantum Computing

2023 Fall course at the Eötvös Loránd University, Budapest

(Neptun course codes -- Math MSc: qtcomp1u1_m22vx; Computer Science PhD: INFPHD639EN-N; Math PhD: MAT/471)

Lecturer: András Gilyén

The course is organized as part of the QTEdu Master pilot and the material is based on Ronald de Wolf's lectures. Ronald's lecture notes and course decription:

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.

Prerequisites: 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. See more details in the revision notes by Richard Józsa.

Further reading:
Quick start only assuming high school math backround: https://www.quantum-quest.org/material.html
Richard Józsa's introductory course containing a bit more physics motivation: https://www.qi.damtp.cam.ac.uk/files/PartIIIQC/Part 2 QIClecturenotes.pdf
Ashley Montanaro's additional notes to Richard Józsa's course https://people.maths.bris.ac.uk/~csxam/partiii/qc-partiii.pdf
Andrew Childs's lecture notes covering more advanced topics (including algebraic algorithms, quantum walks, query complexity, etc.): https://www.cs.umd.edu/~amchilds/qa/
John Preskill's lecture notes covering more advanced topics (including error correction and fault tolerance, etc.): http://theory.caltech.edu/~preskill/ph229/
Michael A. Nielsen, Isaac L. Chuang. Quantum Computation and Quantum Information, Cambridge University Press, 2000.

Lectures & location:

The course is taught in English and consitst of a two-hour lecture and also a two-hour exercise class per week held in the Northern Block of ELTE's Lágymányos Campus. (NB You need to sign up for both the lecture and exercise classes in Neptun.) The lecture and the exercise class is on Fridays from 8:15 to 10:00 in room É-7.85 and 10:15-11:45 in room É-7.86 respectively.

Homework and Grading:

There is graded homework exercises for each week. The final grade will come from a weighted combination of the homeworks (1/3) and the final exam (2/3). The weekly homework is due before the start of the following lecture. You can either send the solutions electroincally as a pdf file or hand in the written solution at the start of the exercise class. When computing the average grade for the homeworks, the two lowest scores will be dropped. This is also meant to cover cases of illness etc.; in general no extension is allowed for homework submission. Cooperation among students is allowed, but everyone has to hand in their own solution set in their own words. Do not share files before the homework deadline, and never put the solutions online. Plagiarism will not be tolerated.

Note that Appendix C of Ronald's
lecture notes has hints for some of the exercises, indicated by (H). If the hint gives you some facts (for instance that there exists an efficient classical algorithm for testing if a given number is prime) then you can use these facts in your answer without proving/deriving these facts themselves.

Class Schedule:

  1. Friday September 15: Lecture -- Introduction (Chapter 1 of the lecture notes)
    Note: Make sure you know the material in Appendices A and B of the lecture notes before next week's lecture!

  2. Friday September 22: Lecture -- The circuit model of quantum computation & the Deutsch-Jozsa algorithm (Chapter 2)
    Homework due at the beginning of the class: Exercises 4, 6, 10, 12 of Chapter 1

  3. Friday September 29: Lecture -- Simon's algorithm (Chapter 3)
    Homework due at the beginning of the class: Exercises 3, 5, 9 of Chapter 2

  4. Friday October 06: Lecture -- Quantum Fourier transform (Chapter 4)
    Homework due at the beginning of the class: Exercises 1, 3, 4 of Chapter 3

  5. Friday October 13: Lecture -- Shor's factoring algorithm (Chapter 5)
    Homework due at the beginning of the class: Exercises 1, 3, 4 of Chapter 4

  6. Friday October 20: Lecture -- Hidden subgroup problem (Chapter 6)
    Homework due at the beginning of the class: Exercises 2, 3 of Chapter 5

  7. Friday October 27: Lecture -- Grover's search algorithm and quantum walks (Chapter 7-8)
    Homework due at the beginning of the class: Exercises 2, 3, 4 of Chapter 6

    Friday November 03: No lecture, enjoy autumn break!

  8. Friday November 10: Lecture -- Hamiltonian simulation, quantum linear algebra (Chapter 9-10)
    Homework due at the beginning of the class:
    Homeworks Nr.7

  9. Friday November 17: Lecture -- Quantum Eigen- and Singular Value Transformation, Exercise sheet Nr.9
    Homework due at the beginning of the class: Homeworks Nr.8

  10. Friday November 24: Lecture -- Quantum complexity theory (Chapter 13), Exercise sheet Nr.10
    Homework due at the beginning of the class: Homeworks Nr.9

  11. Friday December 01: Lecture -- Quantum cryptography (Chapter 15.1 & 18)
    Homework due at the beginning of the class: Homeworks Nr.10

  12. Friday December 08: Lecture -- Entanglement and non-locality (Chapter 17)
    Homework due at the beginning of the class: Exercises 3, 4, 5, 8 of Chapter 18 (worth 10 + 2 bonus points)

  13. Friday December 15: Lecture -- Quantum error correction (Chapter 20)
    Homework due at the beginning of the class: Exercises 1, 3, 5 of Chapter 17