IFT Complexité du calcul Partie 4 Un oracle séparant la hiérarchie polynômiale de PSPACE, et naissance de AC 0 Rappel : il existe A tel que P A =NP A il existe B tel que P B NP B Conclusion : impossible de séparer P de NP par diagonalisation. Àdémontrer ici : il existe E tel que HP E = PSPACE E il existe F tel que HP F PSPACE F En prime : AC 0 (définition à venir) NP a vu le jour avec cette preuve. 4-Pg1 4-Pg2 Rappel : machines de Turing alternantes Généralisation de la MT non déterministe. Une mt alternante (M T) est une MTND dont chaque état possède une étiquette parmi {0, 1,, }. L étiquette d un état final est 0 ou 1. L étiquette de tout autre état est ou. La M T est dite universelle si sa configuration initiale est étiquetée, etexistentielle sinon. On note M T i une M T qui alterne au plus i 1 fois le long de tout calcul. On suppose précisément 2 transitions possibles à partir de toute configuration non finale. 4-Pg3 4-Pg4
Sémantique : une M T accepte un mot w si la racine de l arbre de ses configurations prend la valeur 1 lorsque est évalué comme un et est évalué comme un. Ainsi, les M Ts polynômiales... 1.... caractérisent la classe PSPACE. 2. Celles qui n utilisent pas l étiquette caractérisent NP. 3. Les M T i s existentielles caractérisent Σ p i. Temps de calcul d une M T sur entrée w : hauteur de son arbre des calculs sur w. 4-Pg5 4. Les M T i s universelles caractérisent Π p i. 5. Celles qui alternent un nombre constant de fois caractérisent HP. 4-Pg6 Comment relativiser la hiérarchie polynômiale à un oracle A? Déf : Une M T p,a i est une M T i avec oracle A qui fonctionne en temps polynômial. En fournissant A aux M Ts caractérisant HP! (Une configuration d état q? possède 2 successeurs correspondant à la réponse OUI et 2 successeurs correspondant àlaréponse NON.) Déf : Une M T faible est une M T qui, le long de tout calcul, questionne l oracle au plus une fois et entre dans un état final en réponse à toute question à l oracle. 4-Pg7 4-Pg8
Lemme : Pour tout oracle A, chaque langage de Σ p,a i (ie accepté par une M T p,a i existentielle) est accepté par une M T p,a i+2 existentielle faible. L idée : mémoriser les questions posées le long du calcul simulé et reporter à la fin les questions à l oracle. Subtilités et détails : 4-Pg9 1. M A transite sans interroger l oracle. A simule cette transition avec la même étiquette. 2. M A dans un état questionne l oracle A : A dans un se donne deux successeurs, le premier guessant réponse OUI et le second réponse NON. 3. M A dans un état questionne l oracle A : A dans un se donne deux successeurs, le premier guessant réponse OUI le second réponse NON. 4-Pg10 4. M A rejette : A accepte ssi i( [le ième guess de M1 A est un -guess incorrect] [ j <ile jème guess s avère correct] ) 5. M A accepte : A accepte ssi même condition qu en 4. Ainsi M1 A ajoute des branches incorrectes à l arbre de M A et les critères des conditions 4 et 5 assurent que ces branches n affectent pas l évaluation de l arbre. Par exemple, que M A accepte ou rejette, le critère de 4 assure a) qu un faux calcul ajoutant une fausse branche à un ne faussera pas l évaluation de ce, puisqu aucun tel faux calcul ne remontera 0 vers ce. b) qu un faux calcul n aura pas d effet sur une fausse branche ajoutée àun, puisque dans ce cas M1 A rejette et aucun tel faux calcul ne remontera 1 vers ce. tous les guess de M A 1 s avèrent corrects. Vérifier : 2 alternations supplémentaires suffisent à implanter 4 et 5. 4-Pg11 4-Pg12
Facile! Prendre E = QBF : P E NP E Un oracle E tq HP E = PSPACE E HP E PSPACE E PSPACE {Y : Y log m E} {Y : Y p m E} {Y : Y p T E} =P E. 4-Pg13 Un oracle F tq HP F PSPACE F Première allusion aux circuits booléens du type AC 0, puisque l arbre des calculs d une M T p,a i faible sera vu comme un circuit booléen dont les entrées sont des variables yz A où { yz A 1 si z A = 0 sinon. 4-Pg14 Précisément : Soit M A une M T p,a i fonctionnant en temps t sur entrée w. faible En effet : état final acceptant porte constante 1 état final rejetant porte constante 0 Alors il existe un circuit booléen C d entrance arbitraire, de profondeur i et de taille 2 t tel que pour tout oracle A, w L(M A ) C calcule 1 sur entrées y A z. état accepter ssi z A porte yz A état accepter ssi z/ A porte yz A i 1 alternations écrase à i niveaux profondeur t de l arbre 2 t portes. 4-Pg15 4-Pg16
L idée pour HP F PSPACE F : construire F par diagonalisation tel que F / HPF,où F = Parité tally de F = { 0 n : F {0, 1} n est impair }. Pour diagonaliser contre HP F, il faut une énumération M 1, M 2, des M Ts tq HP F = {L(M F i ):i 1}. Note : Suffit car pour tout F, F PSPACEF. énumérer les M Ts existentielles faibles et affubler M j,c d un mécanisme qui met fin au calcul de M j,c sur w si le calcul alterne une jième fois ou se prolonge au-delà dec w c étapes. 4-Pg17 4-Pg18 Construction de F n 0 0 ; F pour i = j, c =1 jusqu à choisir m i >n i 1 tel que 14cm c i < 2 m i j 1 C i circuit provenant de M i sur entrée 0 m i pour chaque yz F de C i non fixée déjà si z m i alors fixer yz F, disons à 0, donc en ne plaçant pas z dans F fixer {yz F : z = m i } de manière à faire mentir C i sur la parité de {z F : z = m i } n i max{ z : yz F déjà fixée } Pourquoi peut-on toujours faire mentir C i? 1. Théorème (A, FSS, Y, H, Beame94) Un circuit de profondeur k et de taille 2 ( 14 1 ) n k 1 1 est incapable de calculer la parité den bits. 2. C i est de profondeur j et de taille 2 cmc i sur les variables yz F, z = m i. 3. C i ne peut calculer correctement la parité deces n =2 m i variables puisque cm c i < 1 14 2 m i j 1. 4-Pg19 4-Pg20
Ainsi, F partiel est bien défini à l itération i, et L(M F i ) F. Donc F PSPACE F \ HP F puisque notre énumération des M Ts existentielles faibles épuise HP. La classe de complexité AC 0 (non uniforme) est l ensemble des langages acceptés par une famille (C n ) n 0 de circuits booléens où C n est un {,, }-circuit de n entrées, l entrance des portes et est arbitraire, un polynôme borne la taille des C n, une constante borne la profondeur des C n. 4-Pg21 [A, FSS, Y et H] : PARITÉ / AC 0. 4-Pg22 P Parlant de parité, au lieu de baser l acceptation de w par une MTND M sur #acc M (w) seuil un, obtient-on une classe plus grande que NP si l on base l acceptation sur la parité de#acc M (w)? On obtient la classe P, définie vers 1983. On ne sait pas si P NP. On ne sait pas si NP P. On ne sait pas si NP P HP P. 4-Pg23 Plus tard, sont advenus des oracles pour relativiser tous les cas possibles de NP versus co--np... séparer les Σ p i des Σp i+1... écraser la hiérarchie polynômiale au niveau k... rendre P G \ NP G... produire P H =NP H =HP H P H = EXP H... séparer ou fusionner une multitude d autres classes de complexité... cas des oracles aléatoires... définir des conditions équivalentes à l existence d oracles......une industrie prospère s est développée, à défaut de pouvoir s attaquer aux vraies séparations. 4-Pg24