#
FI:IA066 Quantum Computing - an intro - Course Information

## IA066 Introduction to Quantum Computing

**Faculty of Informatics**

Autumn 2021

**Extent and Intensity**- 2/0. 2 credit(s) (plus extra credits for completion). Recommended Type of Completion: zk (examination). Other types of completion: z (credit).

Taught online. **Teacher(s)**- prof. RNDr. Jozef Gruska, DrSc. (lecturer), Martin Saip (deputy)
**Guaranteed by**- prof. RNDr. Jozef Gruska, DrSc.

Department of Computer Science - Faculty of Informatics

Contact Person: prof. RNDr. Jozef Gruska, DrSc.

Supplier department: Department of Computer Science - Faculty of Informatics **Prerequisites**-
**IB005**Formal languages and Automata ||**IB102**Automata and Grammars

linear algebra, automata and languages, no quantum physics is necessary, algorithm design **Course Enrolment Limitations**- The course is also offered to the students of the fields other than those the course is directly associated with.
**fields of study / plans the course is directly associated with**- there are 57 fields of study the course is directly associated with, display
**Course objectives**- Quantum computing in particular and quantum information processing in general are one of the hotest subjects in science in general and in informatics in particular. The goal of this introductory course is to present basic aims, concepts, methods and result in this fascinating area.
**Learning outcomes**- After completing the course student will be able: to understand principles of the design of quantum algorithms; to understand basic ideas of Shor's and Grover's algorithms; to design simple quantum circuits; to understand recognition power of several quantum automata; to understand basic principles of quantum cryptography - theory, experiment and practical systems; to design quantum error-correcting codes.
**Syllabus**- Motivácie, historia, základné kvantové experimenty, ohraničenia a paradoxy kvantového spracovania informácie
- Hilbertové priestory, kvantové bity, registre, hradla a obvody
- kvantové výpočtové primitíva
- kvantové entanglovanie a nelokálnost
- jednoduché kvantové algoritmy, Shorove kvantové algoritmy, algoritmus Grovera a jeho aplikácie
- kvantové konečné automaty
- kvantové samoopravujúce kody a kvantové fault-tolerantné hradla.
- kvantová krzptografia
- vesmír ako kvantový systém

**Literature**- GRUSKA, Jozef.
*Quantum computing*. London: McGraw-Hill Companies, 1999. xv, 439. ISBN 0077095030. info

- GRUSKA, Jozef.
**Teaching methods**- Lectures and tutorials
**Assessment methods**- oral exam
**Language of instruction**- Slovak
**Follow-Up Courses****Further Comments**- The course is taught annually.

The course is taught: every week. **Listed among pre-requisites of other courses****Teacher's information**- http://www.fi.muni.cz/usr/gruska/quantum20

During the seminars, the following topics are about to be presented: 1. Introduction We are going to contemplate state of the quantum hardware & software, including the simulation kits. 2. Quantum programming languages With enough knowledge, dedication and free time, you can turn any Turing-complete programming language into a "quantum" one. We are going to learn how they are built, as well as which ones are currently the most popular and, of course, open-source. These include Q#, F#, and various quantum flavours of Python. 3. Quantum programming, development and simulation kits Multiple quantum computing frameworks, libraries and simulators have emerged recently as a response to growing interest in QC & number of physical qubits. We will open an account and get familiar with some of the open-sourced ones: IBM Quantum Experience, IBM Qiskit, Microsoft Quantum Development Kit and, eventually, some more. 4. Design, implementation and simulation of quantum programs using available tools of IBM, Microsoft, Google and so on (for example, Microsoft Quantum Development Kit, IBM Quantum Experience). Utilizing some of the algorithms we've learned, we are going to create our 1st quantum program - a QC "Hello world" of sorts, and then another which, hopefully, achieves some interesting results - quantum computing is still a nascent field, so the probability of furthering state of the art is definitely nonzero. ;-) 5. We will finish working with the IBM Quantum Experience and Qiskit, proceeding with installation of the Microsoft Quantum Development Kit and Q#, Microsoft's programming language for quantum algorithms. 6. The last seminar - we are going to run our Q# "Hello world" and learn how to wrap such subroutines in Python code, using the `qsharp` library. Hopefully we'll also find time to discuss where the field of Quantum Informatics is headed, as well as what we can expect for the near and even the not so near future.

- Enrolment Statistics (recent)

- Permalink: https://is.muni.cz/course/fi/autumn2021/IA066