## Learning objectives

The course introduces to the new, multi-disciplinary field of quantum computation Besides a necessary introduction on the quantum mechanical background, the course provides examples and exercises giving direct access to quantum computing chips available on cloud. This will make students familiar with the fundamental principles of quantum computing.

Taking Dublin Indicators into account:

Knowledge and understanding

The course introduces the first concepts related to quantum speed-up and focuses on understanding the mechanisms making them advantageous with respect to classical algorithms for the solution of specific problems.

Lecture notes and text-books are in English, to make students familiar with international scientific literature.

Applying knowledge and understanding

The knowledge presented is applied to the resolution of specific problems, exploiting Qiskit software development framework (base on Python). Some fundamental algorithms will be presented by the teacher, while some other will be left as exercises for the students.

The methods for specific applications can be extended to solve a wide variety of other problems.

Making judgments

The proposed exercises can be solved individually or in groups. Often different methods of solution are possible and presenting different approaches lead to a deeper insight of the topic.

Communication skills

The numerous discussions on the different methods to solve problems allow students to improve communication skills. These will be checked in the final oral presentation.

Learning skills

Direct use of Qiskit platform and the possibility of running quantum circuits on simulator or even on the real remote quantum hardware make the students familiar with quantum computing principles. Fundamental functions are not rigid but can be exploited for the solution of a range of problems (many of which are still subject of research).

## Prerequisites

Basic concepts of linear algebra, vector spaces, matrices (these will be reviewed at the beginning of the course).

## Course unit content

Part I – Quantum Mechanical tool-box

Part II – Quantum bits, multiple qubits, entanglement

Part III – Basic principles of Quantum Computing and Quantum Algorithms

Part IV – Quantum Algorithms for Applications

Part V – Physical Implementation, real quantum hardware, error correction.

## Full programme

Part I – Introduction to Quantum Mechanics: Hilbert spaces, states, operators, measurements, time evolution, density operator, mixed states.

Part II – Qubits: Bloch sphere, elementary single-qubit gates. Multi-qubit states, tensor product, entangled states. Two-qubit gates, universal gate set.

Part III – Basic principles of Quantum Computation: quantum circuits, quantum speed-up, quantum teleportation, superdense coding. Basic algorithms: Deutsch-Josza, Quantum Fourier Transform, Quantum phase estimation, Grover’s search algorithm.

Part IV – Quantum algorithms for applications: solving linear systems of equations, finding period of a function, Shor’s algorithm, optimization by quantum Part I – Introduction to Quantum Mechanics: Hilbert spaces, states, operators, measurements, time evolution, density operator, mixed states.

Part II – Qubits: Bloch sphere, elementary single-qubit gates. Multi-qubit states, tensor product, entangled states. Two-qubit gates, universal gate set.

Part III – Basic principles of Quantum Computation: quantum circuits, quantum speed-up, quantum teleportation, superdense coding. Basic algorithms: Deutsch-Josza, Quantum Fourier Transform, Quantum phase estimation, Grover’s search algorithm.

Part IV – Quantum algorithms for applications: solving linear systems of equations, finding period of a function, Shor’s algorithm, optimization by quantum amplification, variational methods to determine physical/chemical properties of materials.

Part V – Notes on real hardware implementation and errors due to interaction of the quantum system with the environment. Error mitigation in current “noisy” devices and quantum error correction for future fault-tolerant quantum computers.

## Bibliography

• A. Asfaw et al., https://qiskit.org/textbook/preface.html

• S. M. Barnett, Quantum Information, Oxford University Press, New York (2009)

• M. Le Bellac, A short introduction to Quantum Information and Quantum Computation, Cambridge, UK (2006).

• P. Kaye, R. Laflamme, M. Mosca, An introduction to Quantum Computing, Oxford University Press, New York (2007).

M. A. Nielsen, I. L. Chuang, Quantum Computation and Quantum Information, Cambridge University Press, New York (2000).

## Teaching methods

Standard classes. Simple runs on remote quantum hardware

## Assessment methods and criteria

Learning outcomes and methods of verification

Understand basic elements of Quantum Mechanics for finite-dimensional systems used to build quantum algorithms.

Being able to understand and make use of elementary gates to write simple quantum algorithms. Knowing basic subroutines of quantum algorithms and their applications.

Being able to use Qiskit package to write quantum codes for the solution of simple problems showing a quantum speed-up.

Learning assessment/examination

The exam consists in an oral examination to verify the student’s knowledge and his/her capability to apply quantum mechanical principles to build quantum codes. The student can choose between (i) an oral examination with questions and short exercises using Qiskit framework and (ii) the development of a project for the solution of a problem (suggested by the teacher) with a quantum algorithm, exploiting known functions and subroutines. Results obtained by running the code on a simulator (or possibly on real quantum hardware) are presented in a brief talk by the student. During the examination, the knowledge of the basic quantum principles exploited in the code will be checked.

## Other information

More info and lecture notes can be found on the platform Elly.