Quantum Computation 2023-24

MEF - MSc in Physics Engineering

Dep. Informática, Universidade do Minho

Learning Outcomes

On successful completion of the course students should be able

Syllabus

Summaries (2023-24)

T Lectures
Sep 22 (11:00 - 13:00) Introduction to Quantum Computation and the course dynamics. (slides)

Mathematical background for the study of computability and computational complexity. (notes).

Sep 27 (09:00 - 11:00) Computability. The halting problem. Turing machines. (notes).

Recommended additional reading: David Deutsch 1985 paper "Quantum theory, the Church-Turing principle and the universal quantum computer" (link).

Sep 29 (11:00 - 13:00) Introduction to quantum algorithms. Deutsch algorithm: A simple algorithm with exponential quantum advantage. (slides)
Oct 6 (11:00 - 13:00) Computational Complexity. The asymptotic notation. Case study: closure operations. (Lecture notes 3)
Oct 13 (11:00 - 13:00) Quantum complexity (Lecture notes 3). Debate on the "Quantum theory, the Church-Turing principle and the universal quantum computer" paper
Oct 20 (11:00 - 13:00) Quantum algorithms: the pahse kick-back pattern. Bernstein-Varizani algorithm. Deutsch-Joza algorithm. (slides)
Oct 27 (11:00 - 13:00) Quantum algorithms: unstructured search and Grover's algorithm. (slides)
Nov 3 (11:00 - 13:00) Generalizing Grover's algorithm. The amplitude amplification technique. (slides)
Nov 10 (11:00 - 13:00) Simon's algorithm and its generalizations. Introduction to the hidden subgroup problem. (slides) (complementary notes on groups)
Nov 17 (11:00 - 13:00) An algorithm for quantum phase estimation. The quantum Fourier transform. (slides) (solutions to the exercises)
Nov 24 (11:00 - 13:00) Case study: quantum protocols for secure multi-party computation. (slides) (Jupyter Notebook)
Jan 3 (09:00 - 11:00) The quantum Fourier transform (slides). Application to eignevalue estimation (slides).
Jan 5 (11:00 - 13:00) An algorithm for order-finding and its role in Shor's algorithm (slides). Quantum walks (Jupyter Notebook).
TP Lectures
Sep 13 (09:00 - 11:00) Algebra of quantum operations (Exercises 1)
Sep 20 (09:00 - 11:00) Introduction to Qiskit; Quantum Operations and Simulations (Jupyter Notebook 1)
Oct 4 (09:00 - 11:00) Computability. The halting problem. Turing machines. (Exercises - Lecture notes 2)
Oct 11 (09:00 - 11:00) Complexity classes. (Lecture note 3)
Oct 18 (09:00 - 11:00) The Deutsch-Jozsa Algorithm; Simulate Real Devices (Jupyter Notebook 2)
Oct 25 (09:00 - 11:00) Bernstein-Vazirani Algorithm; Simon's Algorithm; Noise Models (Jupyter Notebook 3)
Nov 8 (09:00 - 11:00) Grover's Algorithm (Jupyter Notebook 4)
Nov 15 (09:00 - 11:00) Quantum Counting and Quantum Fourier Transform (QFT) (Jupyter Notebook 5)
Nov 22 (09:00 - 11:00) Quantum Counting (part 2) and Quantum Phase Estimation (QPE) (Jupyter Notebook 6)
Nov 29 (09:00 -11:00) Quantum Period Finding (QPF) (Jupyter Notebook 7)
Dez 6 (09:00 - 11:00) Shor's Algorithm (Jupyter Notebook 8)
Dez 13 (09:00 - 11:00) Repetition Codes ( Jupyter Notebook 9)

Bibliography

Computability and Computational Complexity
Quantum Computation and Algorithms
Bedtime readings
Links

Pragmatics

Lecturers
Assessment
Contact