Explore la machine universelle Turing, sa représentation canonique et son rôle dans la définition des algorithmes et des concepts théoriques d'informatique.
Introduit la complexité computationnelle, les problèmes de décision, la complexité quantique et les algorithmes probabilistes, y compris les problèmes dures au NP et les problèmes complets au NP.