In this course we provide an introduction to the interdisciplinary field of Quantum Computing.

The course is structured in three parts each addressing some particular aspects of the interplay between the two distinct disciplines of physics and computer science.

Part I

The first part deals with the essential notion of qubit and the theory of computation and computability based on it.

Starting with the explanation of the essential basics of quantum mechanics (including finite dimensional Hilbert spaces and their tensor products), we concentrate here on detailed discussions of some key algorithms and protocols such as Grover's search algorithm, Shor's factorisation algorithm and quantum teleportation.

Part II

In this part we present an emerging field in quantum computation that has been recently brought to the attention of the general public by the award of the 2016 Nobel prize for Physics, namely Topological Quantum Computation. This new paradigm for quantum computation relies on the existence of topological phases of matter and has the advantage of being robust against to decoherence. Moreover, it supports algorithmic techniques that allows for the efficient solution of hard problems such as the estimation of the Jones polynomial.

Part III

This part aims to give an overview of all the important topics in quantum computation and information that the course will not cover due to time constraints.

This will be done by means of a series of invited lectures on e.g.

- Quantum Machine Learning

- Quantum Key Distribution and Communications

- Quantum Languages

and more (a complete list will be published in due time).