This course is an introduction to the concept of a quantum computer. It

uses quantum-mechanical principles and generalizes

classical computers. It has been demonstrated that such a computer can

solve in polynomial time problems that are considered

to be hard for a classical computer such as factoring large integers or

solving the discrete logarithm problem (this is Shor's algorithm).

The security of virtually all public-key cryptography used in practice

right now relies on the hardness of these problems

and a quantum computer would break those cryptosystems. It has also been

found that such a computer is able to search in an unstructured

set much more efficiently than a classical computer (this is Grover's

algorithm).

We will cover in this course the bases of quantum computation and

present the main quantum algorithms that offer a speedup over classical

algorithms.

We will also cover other applications of quantum mechanics, such as

simulating physical systems or quantum cryptography. The latter exploits

the laws of quantum physics to establish the security of certain

cryptographic primitives, such as key distribution protocols.

- Responsable: Debris Thomas