Références sur la comparaison entre les ordinateurs quantiques et les machines de Turing

11

On m'a dit que les ordinateurs quantiques ne sont pas plus puissants sur le plan informatique que les machines de Turing. Quelqu'un pourrait-il bien vouloir fournir des références bibliographiques expliquant ce fait?

Mok-Kong Shen
la source
2
Vous semblez avoir un compte enregistré sur d'autres sites Stack Exchange. Vous devez enregistrer votre compte CS et l'associer aux autres (voir le centre d'aide ). Entre autres choses, cela vous permettra de participer au chat depuis CS.
Gilles 'SO- arrête d'être méchant'

Réponses:

10

En réalité, tout ce qu'un ordinateur quantique peut calculer, une machine de Turing peut également calculer. (C'est sans aucun commentaire sur le temps qu'il faut à la machine de Turing pour calculer la fonction par rapport à un ordinateur quantique.)

Ce n'est en fait pas difficile à voir, à condition de comprendre le calcul quantique. Pour un circuit quantique sur un ensemble de portes typique, par exemple, le résultat est régi par une distribution de probabilité, qui est déterminée par les coefficients d'une matrice unitaire. Cette matrice unitaire n'est qu'un produit matriciel de celles des portes, et peut être calculée - si vous êtes assez patient - par un ordinateur classique. Donc, pour la calculabilité (par opposition à l'efficacité), il n'y a aucun avantage à utiliser des ordinateurs quantiques.

Tout le défi découlant de la mécanique quantique est de déterminer si ces coefficients peuvent être calculés efficacement , ce qui est un problème plus exigeant que s'ils peuvent être calculés du tout .

Niel de Beaudrap
la source
Alors que mes connaissances de débutant me disent qu'un circuit quantique représente une transformation de matrice Hadamard, je ne vois pas encore comment une possibilité de programmation pour effectuer des calculs matriciels arbitraires sur un ordinateur classique pourrait être un substitut d'avoir physiquement un circuit quantique. Par exemple, mon livre parle de la génération de nombres aléatoires comme suit: 1. | x> <- | 0> 2. | x> <- H | x> 3. Mesurer | x> À quoi correspondrait en particulier l'étape 3 programmation sur un ordinateur classique?
Mok-Kong Shen,
Une matrice de Hadamard (correctement normalisée) n'est qu'une transformation unitaire possible. Pour votre calcul, nous pouvons reconnaître qu'une machine de Turing déterministe peut calculer la distribution de probabilité (0,5, 0,5) constituée des normes au carré de la première colonne de la matrice de Hadamard , et que pour une machine de Turing randomisée (qui peut effectuer des retournements de pièces), nous pouvons aller plus loin et produire un échantillon à partir de cette distribution de probabilité. Dans tous les cas, n'importe quelle fonction calculée par le circuit quantique avec une erreur <1/2, une machine classique peut également. |b|H|0|2
Niel de Beaudrap
@ Mok-Kong Shen: au cas où mes remarques sur l'inefficacité ou la lenteur ne seraient pas claires, il est communément supposé que les ordinateurs quantiques sont plus puissants en termes de calcul dans le sens de pouvoir calculer plus rapidement . J'ai abordé le fait qu'ils ne sont pas capables de calculer des choses qu'un ordinateur classique ne pourrait pas également calculer (où j'écarte la notion de "lancer une pièce" comme calcul).
Niel de Beaudrap du
10

Considérons une porte quantique. Lissage tous les détails techniques, il peut être représenté sous la forme d' une matrice . Une entrée de la porte, par exemple n'est qu'un vecteur , et la sortie de la porte est le vecteur .| & phiv v G vG|ϕvGv

Maintenant, considérons un circuit. Un circuit n'est qu'un ensemble de portes , et le circuit lui-même peut être vu comme une "porte généralisée" , qui fonctionne sur l'état d'entrée (le vecteur ). [Encore une fois, c'est une abstraction très grossière.]C = G nG 2 G 1 v{G1,G2,...}C=GnG2G1v

Donc en gros, calculer un circuit sur une entrée , c'est simplement calculer le vecteur ou . Il est clair qu'une telle tâche (multiplication de matrice et multiplication de matrice par vecteur) peut être effectuée par une MT classique, par conséquent, la TM est au moins aussi forte qu'une quantum-TM (QTM) [ok, les circuits classiques sont aussi forts que quantum circuits. ça n'a pas d'importance.]C v G nG 2 G 1 v|ϕCvGnG2G1v

D'un autre côté, QTM est trivialement aussi fort que TM, et donc les deux modèles sont équivalents.


EDIT en raison des commentaires
Afin de demander quel "ordinateur" est le plus puissant, nous devons d'abord clarifier ce que signifie être plus "puissant en termes de calcul". Et cette discussion semi-philosophique commence par la question

Qu'est-ce que le calcul ?

La "lecture de fichiers MP3" est-elle un calcul? La sortie de nombres aléatoires est-elle un calcul?

La définition standard dit qu'un calcul consiste à "calculer une fonction". C'est-à-dire que pour chaque entrée (qui peut être n'importe quelle chaîne de n'importe quelle longueur finie), la sortie , où encore peut être une chaîne de longueur arbitraire (finie). Si votre ordinateur peut produire pour n'importe quel , nous disons qu'il peut calculer .y = f ( x ) y y x fxy=f(x)yyxf

Maintenant, dire que l' ordinateur « A » est plus puissant que « B » signifie simplement que A calcule plus de fonctions que . De même,BfB

Deux modèles, et sont considérés comme équivalents si, pour toute fonction , calcule si et seulement si calcule .ABfAfBf

D'accord, dites-vous, mais attendez une seconde, il y a une randomisation. Un ordinateur quantique ne produit pas seulement . Il avec la probabilité , ou avec la probabilité , ou ....yy1p1y2p20

En effet .. Et cela étend la définition standard du calcul d'une fonction. Nous pouvons le résoudre et généraliser nos définitions de plusieurs manières. (1) une option consiste à dire que la réponse de est ce spécifique qui a une probabilité (et il y a au plus une telle valeur) . Si nous supposons que ne produit qu'un seul bit, alors "la sortie de est toujours bien définie Sinon, si aucune valeur n'existe et que toutes les sorties ont une faible probabilité, nous pouvons dire que n'est pas défini sur cette entrée; (2) Une deuxième option consiste à dire que la sortie de est la listef(x)yipi>0.751ff(x)2ff(x)(y1,p1),(y2,p2),.... Pour que cela soit bien défini, nous devons avoir une liste finie, car nous avons exigé que la chaîne de sortie soit finie.

Avec ce qui précède, il devrait être clair qu'avoir des probabilités ne change pas la puissance du modèle, et une MT classique peut simplement sortir la liste des sorties possibles avec la probabilité pour chaque sortie. c'est exactement ce qui se produit quand une MT multiplie les matrices et produit un vecteur - le vecteur représente la probabilité de chaque sortie de mesure possible.

0 Ce problème n'est pas propre à l'informatique quantique. L'informatique probabiliste classique "souffre" du même problème. Pourquoi ? Sans raison. Toute constante supérieure à fonctionnerait. Pourquoi supposer que émet un bit? car c'est suffisant. On peut réduire toute fonction plus complexe à une ou plusieurs fonctions avec une sortie mono-bit. Mais cela n'a pas d'importance pour notre discussion.
1p=0.751/2
2f

A sonné.
la source
Je pourrais programmer des calculs matriciels sur un ordinateur classique mais je ne sais pas comment écrire un code pour simuler un calcul quantique. J'aurai quand même besoin de bits quantiques. Un bit quantique a 2 valeurs communément désignées par alpha et bêta. Quelles valeurs dois-je utiliser? Voir aussi mon commentaire à la réponse de Niel de Beaudrap pour le cas de la génération de nombres aléatoires.
Mok-Kong Shen du
@ Mok-Kong Shen: ces valeurs semblent être des coefficients dans une superposition . Mais rappelez-vous que la notation Dirac n'est qu'une notation vectorielle: c'est exactement la même chose que d'écrire utilisant la convention habituelle. Ces coefficients ne sont que des coefficients vectoriels / matriciels, ce que l'ordinateur classique évalue afin de simuler (lentement) l'ordinateur quantique. ψ|ψ=α|0+β|1ψψ=[αβ]
Niel de Beaudrap
@Niel de Beaudrap: Mais quand j'écris un code pour simuler un certain calcul quantique, par exemple la génération de nombres aléatoires que j'ai mentionnée, je dois implémenter des bits quantiques simulés sur un ordinateur classique. Je ne sais pas comment écrire du code pour le faire sans connaître les valeurs de ces coefficients.
Mok-Kong Shen du
@ Mok-Kong Shen: le fait est qu'au moment de l'exécution, vous savez; et le problème est exactement le même que l'échantillonnage à partir d'une distribution de probabilité classique qui est spécifiée à l'entrée, c'est -à- dire qu'il se réduit à des problèmes bien étudiés dans l'échantillonnage aléatoire. Les méthodes de Monte Carlo s'appliquent ici, par exemple.
Niel de Beaudrap
1
@ Mok-KongShen Veuillez ne pas utiliser de commentaires (en particulier sur le message de quelqu'un d'autre) pour des discussions prolongées. Allez sur le chat , soit dans la salle générale de ce site, soit dans un salon de discussion créé à cet effet.
Gilles 'SO- arrête d'être méchant'
1

d'autres réponses sont valables, je veux juste en ajouter une qui souligne que c'est vraiment une question très profonde (largement encore ouverte / non résolue) au cœur de nombreuses recherches modernes sur les séparations de classes de complexité et l'informatique quantique vs classique. ils sont fonctionnellement équivalents dans la mesure où les ordinateurs TM et QM sont tous deux prouvés comme Turing complet ; il existe plusieurs façons de le prouver.

mais l'équivalence dans la théorie de la complexité dépend beaucoup des subtilités / efficacités du temps et de l'espace, c'est-à-dire des ressources pour calculer des algorithmes particuliers. et il existe également une énorme quantité de recherches sur le «bruit» dans l'informatique QM qui considère que les modèles théoriques sans bruit peuvent ne pas être «réels» ou réalisables dans la pratique et les modèles réels peuvent / auront un bruit significatif. il existe des mécanismes complexes pour atténuer ce bruit, etc .; il y a d'excellents commentaires à ce sujet dans divers articles du blog RJ Liptons, par exemple les machines volantes du 21e siècle

par exemple, il a été prouvé que l'affacturage est en BQP, la classe d'algorithmes quantiques qui s'exécutent en temps P, par Shor dans une preuve célèbre qui à l'époque a également lancé une grande quantité d'étude / de recherche sérieuse dans l'informatique QM en raison de la dramatique résultat.

cependant, même avec des modèles QM "silencieux", il reste à savoir si P BQP où le premier dénote une classe de complexité classique d'algorithmes Poly-time efficaces et BQP est la classe d'algorithmes QM efficaces / Poly-time . et il existe diverses questions ouvertes similaires.=?

Scott Aaronson est un excellent écrivain / chercheur sur le sujet et a écrit quelques articles accessibles au profane. voir par exemple Les limites des ordinateurs QM, SciAm ou QM computing promet de nouvelles perspectives, NYT .

vzn
la source
note, aram herse est un sceptique de premier plan des problèmes de bruit par rapport au calcul QM. un autre bon point de départ, le blog RJ Lipton, mouvement perpétuel du 21e siècle?
vzn