Quantum Programming
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
02QPRG | Z | 2 | 1P+1C | anglicky |
- Garant předmětu:
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra fyziky
- Anotace:
-
The goal of the course is to provide the basic skills for programming quantum computers, and to use these skills to develop understanding of fundamental quantum communication protocols and quantum algorithms. The classes are combinations of lectures that introduce the essential concepts and tools, followed by exercise sessions during which programming assignments are completed. Familiarity with quantum mechanics is not necessary. Any quantum SDK, such as Qiskit, Cirq, Forest, Q#, may be used during the course, based on agreement at the beginning of the semester.
- Požadavky:
- Osnova přednášek:
-
Outline of the course:
1.Probabilistic and quantum bits, quantum computing SDK (e.g. Qiskit),
2.Bloch sphere representation of a qubit, general single qubit gates
3.Measurement, cloning, state identification of an ensemble
4.Two qubits, quantum correlations, quantum circuits
5.Quantum communication protocols: quantum teleportation, super dense coding
6.Quantum key distribution protocol: BB84
7.Multi-qubit gates, universal quantum computer
8.Deutsch–Jozsa algorithm, the Oracle
9.Grover’s search algorithm
10.Quantum Fourier Transform
11.Quantum phase estimation
12.Shor’s factorization, quantum Fourier transformation
13.Discrete time quantum walks and spatial search
- Osnova cvičení:
-
Outline of the exercises:
Students are expected to write code during the class that implements the assigned tasks using the chosen SDK, typically using the Jupyter notebook interface to python. Use of own laptops with a preinstalled quantum SDK is expected.
- Cíle studia:
- Studijní materiály:
-
Studijní literatura a studijní pomůcky
Key references:
[1] M. A. Nielsen, I. L. Chuang, Quantum computation and quantum information, Cambridge Univ. Press, 2013.
Recommended references:
[2] Learn Quantum Computation using Qiskit: https://qiskit.org/textbook
[3] Cirq tutorial: https://quantumai.google/cirq
[4] Forest SDK Docs: https://pyquil-docs.rigetti.com/en/stable/
[5] Microsoft QDK tutorial: https://docs.microsoft.com/en-us/learn/paths/quantum-computing-fundamentals/
- Poznámka:
- Další informace:
- https://people.fjfi.cvut.cz/gabriaur/index.php?n=Main.Teaching
- Pro tento předmět se rozvrh nepřipravuje
- Předmět je součástí následujících studijních plánů: