Quantum Computing

Semestr: Summer

Range: 2P+2C+2D


Credits: 5

Programme type:

Study form:

Course language: English

Time table at FEE


Synergies between physics and computer science have been some of the most dominant scientific and technological disciplines in recent times that aided in significant technological advances. Quantum computing is a growing field at the intersection of physics and computer science that is projected to lead to the next computational revolution. Recent computational experiments show that quantum computers are getting close to what we can simulate classically. Combining the existing expertise in both fields proves to be a nontrivial but very exciting interdisciplinary adventure that will benefit students in diverse ways. This course aims to make this cuttingedge discipline broadly accessible to undergraduate students with a background in computer science as well as mathematics and physics. The course will introduce the students to some of the most fundamental concepts in the field, both from a theoretical point of view, so the students obtain a deep physical understanding of the underlying principles, as well as a practical one such as to be able to apply their newly acquired skills with quantum simulators or by accessing actual quantum devices on the cloud. This course provides an interdisciplinary first introduction to the emerging field of quantum computation building up from the basics of quantum mechanics to quantum computational complexity and quantum algorithms. During the course, special care is given to stress the potential quantum speedups of quantum computers against their classical counterparts.


Quantum computing, Quantum computer

Course syllabus:

1. The limits or classical computers. Why quantum computing. What is quantum computation good for. The notions of quantum supremacy and quantum advantage.
2. Broad picture of quantum mechanics. Postulates of quantum mechanics and braket notation. Unitary operators and expectation values. Evolution of quantum states.
3. Classical to quantum bits. The Bloch sphere. Reversible operations on qubits and quantum circuits. State preparation and measurement in quantum mechanics.
4. Broad overview of computational complexity. Classical and quantum Turing machines. Classical and quantum circuits. The classical classes P, BPP, NP, P-space. Quantum classes BQP, QMA, and PSPACE.
5. A broad overview of quantum algorithms. Showcase of the exponential speedup of quantum computers using the Deutsch-Josza algorithm.
6. Shor's algorithm, quantum Fourier transform.
7. Grover's algorithm and exponential-time quantum computing.
8. Classical random walk and quantum random walk.
9. Classical Monte-Carlo and quantum replacements for Monte-Carlo. Finance applications.
10. Broad overview of the current state of quantum computing. Quantum phase estimation. Variational algorithms.
11. Quantum Machine Learning.
12. (Buffer)

Seminar syllabus:

The exercises follow the syllabus of the lectures using Qiskit (https://qiskit.org/), an open-source toolkit.


There is a wide variety of textbooks. The most accessible seem to be:

N. David Mermin. Quantum Computer Science: An Introduction. Cambridge University Press, 2007.

Amira Abbas et al. Learn Quantum Computation using Qiskit. https://qiskit.org/textbook/