Automate quantique

De testwiki
Version datée du 16 mars 2025 à 16:40 par imported>Roly USD (growthexperiments-addlink-summary-summary:3|0|0)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

En informatique quantique et en informatique théorique, un automate fini quantique est une généralisation des automates finis où un mot est accepté selon le résultat d'une certaine mesure. Il existe plusieurs modèles des automates finis quantiques ; le plus restrictif est celui des automates dits « Modèle:Langue » de Modèle:Harvsp ; un autre est celui des automates « Modèle:Langue » de Modèle:Harvsp. Ces deux modèles sont très différents l'un de l’autre ; le modèle « Modèle:Langue » se rapproche plus de la théorie classique des automates finis. D'autres définitions, plus générales, ont été proposées, en généralisation des diverses variantes des automates, par exemple par Modèle:Harvsp. Un des objectifs de l’étude des automates fini quantiques est l’étude des langages formels qu'ils acceptent ; un autre est d'étudier les problèmes de décidabilité pour ces classes d'automates et de langages.

Les automates finis quantiques sont similaires aux automates probabilistes, mais la classe des langages reconnus par automates quantiques est strictement contenue dans la classe des langages reconnus par automates probabilistes. Les automates finis quantiques peuvent aussi être vus comme une version quantique des sous-shifts de type fini, ou comme une variante quantique des chaînes de Markov. Les automates finis quantiques sont, à leur tour, des cas particuliers des automates finis dit géométriques ou des automates finis dit topologiques.

Un automate fini quantique opère sur des mots finis w=a1a2am, dont les lettres ai sont dans un alphabet donné Σ. Il attribue à chaque mot w une probabilité; en fonction de cette probabilité, le mot est accepté ou rejeté par l'automate. Les langages acceptés par les automates finis quantique ne coïncident pas avec les langages rationnels acceptés par les automates finis, ni avec les langages stochastiques acceptés par les automates finis probabilistes.

Automate fini quantique MO

Des deux définitions d'automate fini quantique les plus usuelles, celle des automates « measure once » ou « MO » donnée par Moore et Crutchfield est la plus simple, et la plus proche des automates probabilistes plus traditionnels.

Définitions

Soit n un entier positif. Un automate quantique au sens de Moore et Crutchfield, appelé automate « measure once » ou « MO », sur un alphabet Σ est définie par les quatre données suivantes :

  • un ensemble Q={q1,,qn} d'états. À chaque état qi est associé un élément noté |qi d'un espace de Hilbert Hn de dimension n, en général n, de sorte que {|q1,,|qn} forme une base orthonormée de Hn. On suppose en général que qi est le i-ème vecteur unité,
  • un matrice unitaire Ua d'ordre n pour chaque lettre a de Σ. Cette matrice est la représentation d'un opérateur unitaire dans la base choisie.
  • un vecteur s d'ordre n de norme s=1, état quantique initial.
  • une matrice de projection orthogonale P d'ordre n, correspondant à un projecteur orthogonal. Ce projecteur peut être remplacé parfois par un ensemble fini dModèle:'états terminaux, et la projection opère par projection sur ces états.

Les matrices et vecteurs sont à coefficients complexes.

Un état (quantique) est un vecteur |q qui se décompose sur la base Q et s'écrit, dans la notation bra-ket ou notation de Dirac usuelle en mécanique quantique, comme combinaison linéaire à coefficients complexes :

|q=α1|q1+α2|q2αn|qn,

avec la condition additionnelle

|α1|2++|αn|2=1.

Cette écriture s'exprime en disant que |q est la superposition des états |qi, le nombre αi est lModèle:'amplitude de l'état |qi. Ainsi, chaque état quantique définit un certain « nuage » des états de Q: il est simultanément dans chacune des états, avec l'amplitude correspondante. Notamment, l'état quantique initial s est aussi une combinaison linéaire des états |qi de norme 1.

Pour un mot w=a1a2am, le vecteur

UamUam1Ua1s

est l'état quantique atteint après la lecture du mot w; comme il est représenté en vecteur colonne, les matrices s'appliquent en sens inverse. Dans les articles proches de la théorie des automates, on trouve la notation « duale », où les vecteurs d'états sont des vecteurs lignes, et l'écriture du produit des matrices correspond alors à la suite des lettres d'entrée lues[1].

La probabilité d'observation d'un état |q est le nombre P|q, où P est la matrice de projection donnée dans la définition. Une variante de définition consiste à donner un ensemble F d'états terminaux. Alors la probabilité d'observation de |q=α1|q1+α2|q2αn|qn est

qF|αq|2.

En écrivant

P=qF|qq|,

on voit que P est une projection sur les états terminaux et que

P|q=qFαq|q

de sorte que la probabilité d'observation s'écrit

qF|αq|2=P|q2.

La probabilité d'acceptation d'un mot w=a1a2am est par définition le nombre

Pr(w)=PUamUam1Ua1s2.

C'est donc la probabilité d'observation de l'état quantique obtenu après lecture du mot w. L'opération qui consiste à évaluer ce nombre est une mesure.

Le langage L est accepté ou reconnu avec la probabilité p est l'ensemble des mots w tels que Pr(w)>p (acceptation par seuil strict) ou Pr(w)p (acceptation par seuil large).

Variantes de notation et de modèle

Pour se rapprocher de notations employées par ailleurs en théorie des automates, l'état d'un mot w est parfois noté w|. Pour un motw=a1a2am, on a alors

w|=s*Ua1Ua2Uam

s* est l'adjoint de l'état s.

À la place de la notation matricielle, on rencontre aussi des fonctions de transition δ:Q×A×Q plus familières en théorie des automates. Une matrice Ua est considérée comme une application de l'ensemble des états dans lui-même, avec (Ua)k,j=δ(k,a,j) et les coefficients du vecteur tUa sont

(tUa)j=qQtkδ(k,a,j).

Enfin, on peut aussi travailler avec des nombres réels au lieu des nombres complexes. Le matrices unitaires sont alors des matrices orthogonales.

Propriétés

Fonction calculée par un automate quantique

Pour un automate quantique 𝒜, notons f𝒜 la fonction définie par

f𝒜(w)=Pr(w)

qui associe à tout mot sa probabilité d'acceptation. C'est la fonction calculée par l’automate. Dans leur article[2], Moore et Crutchfield démontrent un certain nombre de propriétés de ces fonctions[3]. D'abord : La série formelle en variables non commutatives

wΣ*f𝒜(w)

est est une série formelle Modèle:Lien. Les propriétés de clôture suivantes sont vraies : Soient f et g sont des fonctions calculées par des automates finies quantiques.

  • (convexité) : αf+βg est calculable par un automate fini quantique si |α|2+|β|2=1.
  • (intersection) : fg est calculée par un automate fini quantique.
  • (complément): 1f est calculée par un automate fini quantique.
  • (morphisme inverse): Si h:Δ*Σ* est un morphisme, alors fh est calculable par automate fini quantique.

Lemme d'itération

Il existe aussi une sorte de lemme d'itération pour ces fonctions; il dit que pour tout w et tout ϵ, il existe k tel que pour tout u et v, on a f𝒜(uwkv)f𝒜)(uv)|<ϵ.

Problèmes de décidabilité

Un certain nombre de résultats concerne la décidabilité de questions pour un automate fini quantique 𝒜, avec la notation f𝒜(w)=Pr(w) et pour une valeur de seuil λ donnée. Les questions suivantes sont indécidables :

  • Existe-t-il un mot w tel que f𝒜(w)λ,
  • Existe-t-il un mot w tel que f𝒜λ,
  • Existe-t-il un mot w tel que f𝒜(w)=λ.

En revanche, les questions suivantes sont décidables[4] :

  • Existe-t-il un mot w tel que f𝒜(w)>λ,
  • Existe-t-il un mot w tel que f𝒜(w)<λ.

Tous ces problèmes sont en revanche indécidables pour les automates probabilistes.

Langages de points de coupure

Le langage L reconnu par un automate quantique à seuil λ (respectivement à seuil strict L>) est l’ensemble

L={wf𝒜(w)λ}
ou, respectivement, L>={wf𝒜(w)>λ},

f𝒜(w) est la probabilité d'acceptation de w dans l'automate 𝒜. Le nombre λ est appelé un point de coupure (« cut point »).

Les problèmes de décider si le langage L est vide ou si le langage L> est vide sont tous deux indécidables pour les automates probabilistes [5]. En revanche, pour les automates quantiques dans la définition de Moore et Crutchfield, le premier problème est indécidable alors que le deuxième est décidable.

Un point de coupure λ est dit isolé s'il existe un nombre ϵ tel que

|f𝒜(w)λ|ϵ

pour tout mot w ou, de manière équivalente, s'il existe un intervalle non vide autour de λ qui ne contient la probabilité d'acceptation d'aucun mot. Si un point de coupure est isolé, alors les langages L et L> sont réguliers. De fait, on sait plus sur ces langages : ce sont des langages à groupes, c'est-à-dire des langages réguliers dont les monoïdes syntaxtiques sont des groupes finis[6]Modèle:,[7].

Des questions liées sont :

  • Étant donné 𝒜 et λ, est-ce que λ est isolé pour 𝒜 ?
  • Étant donné 𝒜, existe-t-il un point de coupure isolé pour 𝒜 ?

Ces questions sont décidables[8]. Il apparaît qu'un objet joue un rôle particulier dans cette étude, faite dans le cadre réel : c'est le groupe [[G(𝒜)]] qui est la fermeture, pour la topologie euclidienne, du groupe (mathématiques) engendré par les matrices Ua orthogonales d'un automate quantique. Ce groupe est compact. De plus, ce groupe est algébrique, ce qui signifie que sa clôture euclidienne est égale à sa clôture de Zariski. Le résultat principal qui permet la preuve est que la clôture de Zariski d'un groupe de matrices finiment engendré est effectivement calculable[8].

Exemple

Automate à deux états.
Table de transition
1 0
S1 S1 S2
S2 S2 S1

Considérons l'automate fini déterministe à deux états donné ci-contre. Un état quantique est un vecteur qui s'écrit en notation bra-ket :

|q=|α1|S1+α2|S2=(a1a2)

où les nombres complexes α1,α2 sont normalisés de sorte que |α1|2+|α2|2=1. Les matrices de transition unitaires peuvent être simplement

U0=(0110) et U1=(1001).

Si l'on choisit S1 comme état final, comme indiqué dans le diagramme, la matrice de projection est :

P=(1000)

Si l'état initial est |S1 ou |S2, le comportement de l'automate est exactement celui de l'automate fini usuel. En particulier, les mots qui sont acceptés le sont avec probabilité un, et le langage accepté a pour expression régulière l'expression : (1+01*0)* respectivement (1+01*0)*01*. Si en revanche α1 et α2 sont tous deux non nuls, le comportement est plus compliqué, et si de plus les matrices U0 et U1 ne sont pas aussi simples, on peut avoir d'encore d'autres résultats.

Automate fini quantique MM

Le modèle d'un automate quantique au sens de Kondacs et Watrous, appelé automate « measure many » ou « MM », diffère du modèle précédent : dans le modèle MO une mesure n'est effectuée qu'en fin de calcul. Dans le modèle MM considéré maintenant, une mesure est faite à chaque étape du calcul. Le principe de la physique quantique dit qu'une mesure est destructrice, et ce principe trouve son expression dans le formalisme proposé.

On a maintenant trois types d'états qui forment une partition de l'ensemble d'états[9]:

  • des états d'acceptation Qa
  • des états de refus ou rejet, Qr
  • des états de continuation, Qc, aussi appelés états neutres.

L'espace de Hilbert Hn est décomposé en trois sous-espaces orthogonaux

Hn=HaHrHc

correspondant aux trois types d'états Qa,Qr,Qc. Pour chacun des trois ensembles d'états distingués, il y a une matrice de projection associée, notée P(a),P(r) etP(c) qui projette sur le sous-espace correspond. Elle est définie par

P(a)=qQa|qq|,

et de même pour les deux autres ensembles.

L'automate opère de la manière suivante : Après chaque lecture d'une lettre

  • on mesure l'amplitude sur les états d'acceptation,
  • on mesure l'amplitude sur les états de refus,
  • on continue en ne conservant que les amplitudes des états de continuation.

La mesure consiste à vérifier si la projection est dans un sous-espace approprié. Après la lecture du mot, on a une probabilité d'acceptation et une probabilité de refus.

Plus précisément, soit |q l'état courant de l'automate. Soit

|t=Ua|q

l'état de l’automate Après la lecture d'une lettre a. Une mesure est réalisé en utilisant les opérateurs de projection, qui indiquent dans lequel des trois sous-espaces a, r ou Hc se trouve l'image du vecteur. La probabilité est donnée par

Pra(t)=Pa|t2

pour l'espace des états acceptants, et de manière analogue pour les autres.

Pour une entrée a1a2am, l'automate opère comme suit : en commençant avec le vecteur initial s, les vecteurs sUa1, sUa1Ua2 sont mesurés tant que le résultat est dans l'espace de continuation. S'il est dans l'espace d'acceptation, le calcul s'arrête et le mot est accepté, s'il est dans l'espace de refus, le calcul s'arrête également, mais le mot est rejeté. On suppose que le mot est délimité par un marqueur de fin, et à la vue de ce marqueur, l'automate doit décider d'accepter ou de rejeter le mot, et il ne peut rester dans un état neutre. C'est donc un automate qui peut accepter ou rejeter un mot sans l'avoir lu dans sa totalité.

Formellement, l'automate définit une fonction sur les mots qui est

Pr(a1a2am)=k=1ms(i=1k1U(ai)P(c))U(ak)P(a)2

qui détermine la probabilité d'acceptation. Là aussi, l'expression « duale » se rencontre fréquemment.

Les mêmes questions que celles posées pour le modèle MO sont toutes indécidables pour le modèle MM.

Les langages reconnus par les automates MM avec un point de coupure isolé sont rationnels, mais ces automates ne sont pas assez puissants pour reconnaître tous les langages réguliers. Par exemple, le langage {a,b}*a ne peut être reconnu par une automate MM avec point de coupure isolé[9].

Des variantes d'acceptation ont été étudiées pour les automates MM. Ainsi, des automates travaillant avec des « probabilités élevées » (par exemple au moins 7/9)[10], les langages acceptés sont reconnus aussi par des automates finis traditionnels réversibles, c'est-à-dire des automates dont les transformations définies par les lettres sont des fonctions partielles bijectives.

Les langages reconnus pas des automates MM ne sont pas fermés pour l'union, intersection ou les autres opérations booléennes usuelles.

Notes et références

Modèle:Références

Bibliographie

Articles liés

Modèle:Palette Automates finis et langages réguliers Modèle:Portail

  1. Par exemple Modèle:Harvsp.
  2. Modèle:Harvsp.
  3. Modèle:Harvsp.
  4. Modèle:Harvsp.
  5. Modèle:Harv.
  6. Modèle:Harvsp.
  7. Modèle:Article.
  8. 8,0 et 8,1 Modèle:Harvsp.
  9. 9,0 et 9,1 Modèle:Harvsp.
  10. La définition de l'acceptation par probabilité élevée est donnée dans Modèle:Article.