FI:IA066 Quantum Computing - an intro - Course Information
IA066 Introduction to Quantum Computing
Faculty of InformaticsAutumn 2020
- 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).
- 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 - Timetable
- Wed 14:00–15:50 B411
- 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
- Image Processing and Analysis (programme FI, N-VIZ)
- Applied Informatics (programme FI, N-AP)
- Information Technology Security (eng.) (programme FI, N-IN)
- Information Technology Security (programme FI, N-IN)
- Bioinformatics and systems biology (programme FI, N-UIZD)
- Bioinformatics (programme FI, N-AP)
- Computer Games Development (programme FI, N-VIZ_A)
- Computer Graphics and Visualisation (programme FI, N-VIZ_A)
- Computer Networks and Communications (programme FI, N-PSKB_A)
- Cybersecurity Management (programme FI, N-RSSS_A)
- Formal analysis of computer systems (programme FI, N-TEI)
- Graphic design (programme FI, N-VIZ)
- Graphic Design (programme FI, N-VIZ_A)
- Hardware Systems (programme FI, N-PSKB_A)
- Hardware systems (programme FI, N-PSKB)
- Image Processing and Analysis (programme FI, N-VIZ_A)
- Information security (programme FI, N-PSKB)
- Information Systems (programme FI, N-IN)
- Informatics (eng.) (programme FI, D-IN4)
- Informatics (programme FI, D-IN4)
- Informatics (programme FI, M-IN)
- Informatics (programme FI, N-IN)
- Information Security (programme FI, N-PSKB_A)
- Quantum and Other Nonclassical Computational Models (programme FI, N-TEI)
- Mathematical Informatics (programme FI, B-IN)
- Parallel and Distributed Systems (programme FI, N-IN)
- Computer graphics and visualisation (programme FI, N-VIZ)
- Computer Graphics (programme FI, N-IN)
- Computer Networks and Communication (programme FI, N-IN)
- Computer Networks and Communications (programme FI, N-PSKB)
- Computer Systems and Technologies (eng.) (programme FI, D-IN4)
- Computer Systems and Technologies (programme FI, D-IN4)
- Computer Systems (programme FI, N-IN)
- Principles of programming languages (programme FI, N-TEI)
- Embedded Systems (eng.) (programme FI, N-IN)
- Embedded Systems (programme FI, N-IN)
- Cybersecurity management (programme FI, N-RSSS)
- Services development management (programme FI, N-RSSS)
- Software Systems Development Management (programme FI, N-RSSS)
- Services Development Management (programme FI, N-RSSS_A)
- Service Science, Management and Engineering (eng.) (programme FI, N-AP)
- Service Science, Management and Engineering (programme FI, N-AP)
- Social Informatics (programme FI, B-AP)
- Software Systems Development Management (programme FI, N-RSSS_A)
- Software Systems (programme FI, N-PSKB_A)
- Software systems (programme FI, N-PSKB)
- Machine learning and artificial intelligence (programme FI, N-UIZD)
- Theoretical Informatics (programme FI, N-IN)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-SS)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-TV)
- Upper Secondary School Teacher Training in Informatics (programme FI, N-SS) (2)
- Artificial Intelligence and Natural Language Processing (programme FI, N-IN)
- Computer Games Development (programme FI, N-VIZ)
- Processing and analysis of large-scale data (programme FI, N-UIZD)
- Image Processing (programme FI, N-AP)
- Natural language processing (programme FI, N-UIZD)
- 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
- Teaching methods
- Lectures and tutorials
- Assessment methods
- oral exam
- Language of instruction
- Slovak
- Follow-Up Courses
- Further Comments
- Study Materials
The course is taught annually. - 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 (Autumn 2020, recent)
- Permalink: https://is.muni.cz/course/fi/autumn2020/IA066