IA066 Introduction to Quantum Computing

Faculty of Informatics
Autumn 2022
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
there are 58 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
Teaching methods
Lectures and tutorials
Assessment methods
oral exam
Language of instruction
Slovak
Follow-Up Courses
Further Comments
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.
The course is also listed under the following terms Autumn 2002, Autumn 2003, Autumn 2004, Autumn 2005, Autumn 2006, Autumn 2007, Autumn 2008, Autumn 2009, Autumn 2010, Autumn 2011, Autumn 2012, Autumn 2013, Autumn 2014, Autumn 2015, Autumn 2016, Autumn 2017, Autumn 2018, Autumn 2019, Autumn 2020, Autumn 2021, Autumn 2023, Autumn 2024.
  • Enrolment Statistics (Autumn 2022, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2022/IA066