ENSEIRB-MATMECA Option second semestre, 2013/2014 Information Quantique DM- Avril 2014 Partie 1 Calcul réversible. Dans cette première partie, on détaille le théorème de Bennett qui montre que les machines de Turing “réversibles” ont la même puissance de calcul que les machines de Turing ordinaires. Machines de Bennett Une machine de Bennett à n bandes est un 5-uplet M = hΣ, Q, δ, q0 , q1 i où – Σ est un ensemble fini, que l’on appelle “l’alphabet” – Q est un ensemble fini, que l’on appelle “l’ensemble des états” – δ est un ensemble de quadruplets de la forme q, [t1 , . . . , tn ], [t′1 , . . . , t′n ], q ′ (1) où q, q ′ ∈ Q, t1 , . . . , tn ∈ Σ ∪ {/} et t′1 , . . . , t′n ∈ Σ ∪ {−1, 0, 1}. Lorsque ti ∈ Σ, t′i est aussi une lettre de Σ, tandis que, lorsque ti est le symbole spécial /, t′i ∈ {−1, 0, 1} i.e. t′i est un mouvement. – q0 (resp. q1 ) est un élément de Q, dit “état initial” (resp. “état final”) Une configuration de M est formée d’un état, suivi d’un n-uple de mots indexés sur Z, suivi d’un n-uple d’entiers indiquant les positions pi de la ième tête de lecture sur la ième bande. Chaque quadruplet (1) de δ est une transition de la machine ; il est interprété de la facon suivante : si la machine est dans une configuration avec l’état q et si les symboles t1 , . . . , tn sont visibles en positions p1 , . . . , pn , alors M passe dans l’état q ′ , si t′i est une lettre de Σ alors ti est remplacé par t′i sur la ième bande et pi n’est pas changé, si t′i ∈ {−1, 0, 1} alors ti n’est pas changée mais la ième tête passe en position pi + t′i . Un symbole ti est “visible” en position pi lorsque ti ∈ Σ et la lettre en position pi est exactement ti ou bien lorsque ti = /. Soient c = (q, w1 , . . . , wn , p1 , . . . , pn ), c′ = (q ′ , w1′ , . . . , wn′ , p′1 , . . . , p′n ) deux configurations de M i.e. q, q ′ ∈ Q, wi , wi′ ∈ ΣZ , pi , p′i ∈ Z. On note c |−− τ c′ si la machine passe de c à c′ en utilisant la transition τ . et c |−− M c′ ssi il existe τ ∈ δ tel que c |−− τ c′ . 1- A quelles conditions (aisément testables) sur τ, τ ′ est-il vrai que, pour toutes configurations c, c′ : c |−− τ c′ ⇔ c′ |−− τ ′ c? Dans ce cas on dit que les transitions τ, τ ′ sont inverses l’une de l’autre. 2- A quelles conditions (aisément testables) sur τ, τ ′ est-il vrai qu’il existe des configurations c, d, d′ telles que : c |−− τ d, c |−− τ ′ d′ et d 6= d′ ? Dans ce cas on dit que les transitions τ, τ ′ ont des domaines chevauchants. 3- A quelles conditions (aisément testables ) sur τ, τ ′ est-il vrai qu’il existe des configurations c, c′ , d telles que : c |−− τ d, c′ |−− τ ′ d et c 6= c′ ? Dans ce cas on dit que les transitions τ, τ ′ ont des images chevauchantes. Déterminisme, réversibilité Une machine de Bennett M = hΣ, Q, δ, q0 , q1 i (2) est dite déterministe ssi elle n’a pas de paire de transitions dont les domaines se chevauchent. La machine est dite réversible ssi elle n’a pas de paire de transitions dont les domaines se chevauchent ou dont les images se chevauchent. 4- Montrer que si M est déterministe alors |−− M est une fonction. 5- Montrer que si M est réversible alors |−− M est une fonction injective. Existe-t-il, dans ce cas, une machine de Bennett M′ telle que, la fonction inverse {(c, c′ ) | c′ |−− M c} est exactement |−− M′ ? 6- Supposons que M est réversible. Peut-on étendre M en une une machine réversible Mt = hΣ, Q, δt , q0 , q1 i telle que δ ⊆ δt et |−− Mt est une bijection de l’ensemble des configurations (pour Σ,Q) dans lui-même. Nous dirons alors que Mt est réversible totale. 2 Fonction calculée On suppose que la machine M est déterministe. L’alphabet Σ contient un symbole particulier b (“blanc”) et aussi le sous-ensemble {a0 , a1 }. Un contenu de bande est standard s’il est de la forme . . . bbbbb · u · bbbbbb . . . (3) avec u ∈ (Σ \ {b})∗ . On note B la suite bi-infinie . . . bbbbbbbbbbb . . . (i.e. l’application de Z dans Σ qui vaut constamment b) et on note parfois (abusivemen) u le mot bi-infini (3). La machine M calcule la fonction f : {a0 , a1 }∗ → {a0 , a1 }∗ ssi : pour tout mot u ∈ {a0 , a1 }∗ , B1- partant de (q0 , u, B, . . . , B, 0, . . . , 0) la machine atteint une configuration d’état q1 ssi u ∈ Dom(f). B2- la première configuration d’état q1 atteinte est de la forme (q1 , f (u), B, . . . , B, 0, . . . , 0). On veut montrer le théorème suivant ([Bennett 1973]) : Soit M une machine de Bennett déterministe sur une bande, calculant une fonction f . Alors on peut construire une machine de Bennett réversible M′ , sur un alphabet Σ′ ⊇ Σ, à trois bandes, telle que : pour tout contenu de bande standard w sur l’alphabet Σ TB1- M atteint q1 à partir de (q0 , w, 0) ssi M′ atteint q1 à partir de (q0 , w, B, B, 0, 0, 0) TB2- la première configuration d’état q1 atteinte par M est de la forme (q1 , W, p1 ) ssi la première configuration d’état q1 atteinte par M′ est de la forme (q1 , w, B, W, p′1 , p′2 , p′3 ). **8- Démontrer le théorème de Bennett. Indications : M′ procède en trois étapes : étape 1 :M′ simule sur la bande 1 le fonctionnement de M en mémorisant sur la bande 2 l’histoire de ce calcul (suite des adresses de la tête de lecture et transitions) ; jusqu’à ce que q1 soit atteint ou alors indéfiniment. étape 2 : M′ recopie la bande 1 sur la bande 3. étape 3 : M′ , en suivant l’histoire (écrite sur la bande 2), à l’envers, simule, sur la bande 1, l’inverse du calcul de M, tout en effaçant l’histoire, jusqu’à atteindre l’état q0 . Partie 2 Calcul quantique Dans cette seconde partie, on étudie les machines de Deutsch, introduites par D. Deutsch en 1985. On établit des relations entre les fonction calculables par les MD et les fonctions calculables par des MB. 3 Machines de Deutsch Une machine de Deutsch a des configurations dans un espace de Hilbert H que nous allons décrire : - soit B l’espace de Hilbert canonique de dimension 2 et |0i , |1i sa base canonique - soit P un espace de Hilbert muni d’une base de Hilbert (ex )x∈Z - soit M ≥ N 1 un entier et Q = B ⊗M l’espace des N états - soit F ⊆ i∈Z B l’ensemble des vecteurs u = i∈Z |ui i tels que {i ∈ Z | ui 6= 0} est fini ( F est l’ensembleN des q-mots bi-infinis de support fini) et soit M le sous-espace vectoriel de i∈Z B engendré par F. On pose alors : H =P ⊗Q⊗M C’est un espace de Hilbert. Il admet une base orthonormée formée des vecteurs |ex i ⊗ |n0 , n1 , . . . , nM −1 i ⊗ |. . . m−1 , m0 , m1 , . . .i que l’on notera aussi |x; n0 , n1 , . . . , nM −1 ; . . . m−1 , m0 , m1 , . . .i . Une machine de Deutsch (à une bande) sur cet espace de configurations est définie par trois opérateurs linéaires U−1 , U0 , U1 : Q ⊗ B → Q ⊗ B tels que l’opérateur linéaire U : H → H ci-dessous est unitaire : O U |xi ⊗ |ni ⊗ |mi = |x − 1i ⊗ U−1 |n, mx i ⊗ |my i y6=x + |xi ⊗ U0 |n, mx i ⊗ O y6=x + |x + 1i ⊗ U1 |n, mx i ⊗ |my i O y6=x |my i (4) La machine déterminée par M, U−1 , U0 , U1 est dite rationnelle si les opérateurs Uj ont des matrices (dans la base canonique) à coefficients rationnels. 9- Montrer que, étant donnés un entier M et trois matrices (M +1)×(M +1) à coefficients rationnels U−1 , U0 , U1 , on peut décider si (4) définit une transformation unitaire de H. 10- Etant donnée une machine de Bennett M sur l’ensemble d’états {0, 1}M et l’alphabet {0, 1}, on définit des transformations linéaires U−1 , U0 , U1 par : 4 U−1 |n; bi = Z−1 (n, b) |A(n; b)i U0 |n; bi = Z0 (n, b) |A(n; b)i U1 |n; bi = Z1 (n, b) |A(n; b)i (5) où A : {0, 1}M +1 → {0, 1}M +1 et Z : {0, 1}M +1 → {0, 1} sont définies par : Zd (n, b) = 1 ssi la machine M meut sa tête dans la direction d, en partant de l’état n et en lisant la lettre b A(n, b) = (n′ , b′ ) ssi la machine M passe dans l’état n′ et écrit b′ en partant de l’état n et en lisant la lettre b. Montrer que, si M est réversible totale, alors (5) définit une bien une machine de Deutsch. Fonction calculée Soit D la machine de Deutsch définie par M, U−1 , U0 , U1 . On code l’alphabet {b, a0 , a1 , #} par les mots {0000, 0001, 0011, 0111}. Ce codage est noté K : {b, a0 , a1 , #}∗ → {0, 1}∗ . On dit que D calcule la fonction f : {a0 , a1 }∗ → {a0 , a1 }∗ ssi , pour tout mot u ∈ {a0 , a1 }∗ , D1- partant de la configuration c0 = 0; 0M ; . . . 0, 0, K(u), 0, 0, . . . (où le premier qbit de K(u) se trouve en position 0) la machine atteint au moins une configuration cn telle que Prcn ({premier qbit de l’état vaut1}) = 1 ssi u ∈ Dom(f). D2- la première configuration cn ayant cette propriété vérifie que : presque sûrement, K(u#f (u)#) est le contenu des qbits en position 0 à 4|u#f (u)#| − 1. 11- On admet que pour toute fonction calculable f : {a0 , a1 }∗ → {a0 , a1 }∗ , il existe une machine de Bennett réversible, totale, sur l’alphabet {0, 1} qui fait passer de (q0 , K(u), 0) à (q1 , K(u#f (u)#), 0) (adaptation au cas d’une seule bande des conditions B1, B2). En déduire que toute fonction Turing-calculable est Deutsch-calculable. * 12- Montrer que toute fonction Deutsch-calculable (avec coefficients rationnels) est Turing-calculable. 5 Partie 3 Calcul quantique, variantes. 13- On modifie la définition de la fonction calculée par D : D1 est inchangée, mais D2 est remplacée par D’2- la première configuration cn ayant cette propriété vérifie que : Prcn ( > 2 3 {K(u#f (u)#) est le contenu des qbits en position 0 à 4|u#f (u)#| − 1}) . Comparer les fonctions Turing-calculables avec les fonctions Deutsch-calculables, en ce sens. 14- On suppose maintenant que les coefficients des matrices U−1 , U0 , U1 ap√ partiennent à Q[ 2]. Reprendre, avec ces hypothèses, les questions 9,12. 15- Un nombre réel r est dit calculable ssi, il existe une fonction totale, calculable fr : N → N × N telle que : 1 p f (n) = (p, q) ⇒ |r − | < . q n 15.1 Vérifier que l’ensemble Rc des nombres réels calculables, muni des opérations +, × est un sous-corps de (R, +, ×). 15.2 Vérifier que les opérations +, × sur Rc sont calculables, Vérifier que les opérations r 7→ −r sur Rc et r 7→ 1r sur Rc \ {0} sont calculables. 15.3 La question r = s? (resp. r > s?) pour des réels calculables, donnés par des fonctions fr , fs est-elle décidable ? semi-décidable ? co-semi-décidable ? 16- On suppose maintenant que les coefficients des matrices U−1 , U0 , U1 appartiennent à Rc . 16.1 Avec ces hypothèses, et la définition D1,D2 reprendre les questions 9,12. 16.2 Avec ces hypothèses, et la définition D1,D’2 reprendre les questions 9,12. 6