Le théorème de Toda est un résultat en théorie de la complexité, démontré en 1991 par Seinosuke Toda dans son article PP is as Hard as the Polynomial-Time Hierarchy[1], et qui a valu à son auteur le prix Gödel en 1998.
Énoncé informel
Le théorème relie deux classes de complexité, à savoir les classes PP et PH. Il dit que la hiérarchie polynomialePH est contenue dans PPP qui, par ailleurs, est égale à P#P.
Définitions
#P est la classe des fonctions f à valeurs entières pour lesquelles il existe une machine de Turing non déterministeM fonctionnant en temps polynomial telle que pour tout x, f(x) soit le nombre d'exécutions acceptantes pour M sur l'entrée x[2],[3].
C'est donc la classe des fonctions qui comptent le nombre de solutions d'un problème vérifiable en temps polynomial.
PP est la classe des problèmes de décision décidés par une machine de Turing non déterministe en temps polynomial, dont la majorité (plus de la moitié) des exécutions sont acceptantes.
P#P est la classe des problèmes de décision décidé en temps polynomial sur une machine disposant d'un oracle de la classe #P.
On ne peut pas comparer directement une classe de problèmes de décision (PH) à une classe de fonctions (#P). Dans l'énoncé, on utilise #P en oracle à la classe P. Cela signifie que la machine polynomiale peut écrire un mot u sur son ruban d'oracle et obtenir en temps constant la valeur f(u), où f est une fonction dans #P[5].
Le théorème dit, en d'autres termes, que pour tout problème dans la hiérarchie polynomiale, il existe une réduction polynomiale à un problème de comptage[6]. Une démonstration plus simple que la démonstration originale a été donnée par Fortnow, en 2009[7].
Sylvain Perifel, Complexité algorithmique, Paris, Ellipses Marketing, coll. « Références sciences », , 432 p. (ISBN978-2-7298-8692-9, lire en ligne) — Section 9.4 Théorème de Toda. (La version électronique est datée de .)
Seinosuke Toda, « PP is as hard as the polynomial-time hierarchy », SIAM Journal on Computing, vol. 20, no 5, , p. 865–877 (DOI10.1137/0220053, lire en ligne).