Comment ajouter 1 + 1 à l'aide d'un ordinateur quantique?

29

Cela peut être considéré comme le complément logiciel de Comment un ordinateur quantique fait-il des mathématiques de base au niveau matériel?

La question a été posée par un membre du public du 4ème réseau du Réseau espagnol sur l'information quantique et les technologies quantiques . Le contexte que la personne a donné était: " Je suis un scientifique des matériaux. Vous introduisez des concepts théoriques sophistiqués avancés, mais j'ai du mal à imaginer le fonctionnement pratique d'un ordinateur quantique pour une tâche simple. Si j'utilisais des diodes, des transistors, etc., je pourrais comprendre facilement les opérations classiques que je dois exécuter pour ajouter 1 + 1. Comment feriez-vous cela, en détail, sur un ordinateur quantique? ".

agaitaarino
la source

Réponses:

21

Selon la question liée, la solution la plus simple consiste simplement à demander au processeur classique d'effectuer de telles opérations si possible . Bien sûr, cela peut ne pas être possible, nous voulons donc créer un additionneur .

Il existe deux types d'additionneur à un seul bit: le demi-additionneur et l' additionneur complet . La demi-additionneur prend les entrées et B et délivre le (opération XOR) 'somme' S = A B et la (opération ET) 'report' C = A B . Un additionneur complet a également la 'carry en' C i n sortie et l'entrée 'exécuter' C o u t , en remplaçant C . Cela renvoie S = A B C i nABS=ABC=ABCinCoutCS=ABCinet .Cout=Cin(A+B)+AB


Version quantique du demi-additionneur

En regardant la porte CNOT sur le registre qubit registre de contrôle B : CNOT A B | 0 A | 0 BAB ce qui donne immédiatement la sortie de lachambreregistretant queAB=S. Cependant, nous n'avons pas encore calculé le portage et l'état duregistreBa changé, nous devons donc également effectuer l'opération ET. Cela peut être fait en utilisant la porte Toffoli à 3 qubits (CNOT / CCNOT contrôlé). Cela peut être fait en utilisant les registresAetBcomme registres de contrôle et en initialisant le troisième registre(C)dans l'état| 0

CNOTAB|0A|0B=|0A|0BCNOTAB|0A|1B=|0A|1BCNOTAB|1A|0B=|1A|1BCNOTAB|1A|1B=|1A|0B,
BAB=SBAB(C)|0, Donnant à la sortie du troisième registre en tant que . L'implémentation de Toffoli sur les registres A et B contrôlant le registre C suivi de CNOT avec A contrôlant B donne la sortie du registre B comme somme et la sortie du registre C comme report. Un schéma de circuit quantique du demi-additionneur est illustré à la figure 1.AB=CABCABBC

Schéma de circuit d'un demi-additionneur

Figure 1: Schéma de circuit d'un demi-additionneur, composé de Toffoli suivi de CNOT. Bits d' entrée sont et B , ce qui donne la somme S avec report sur C .ABSC


Version quantique de l'additionneur complet

4ABCin11|0|A|B|Cin|0

  1. AB1|A|B|Cin|AB
  2. AB|A|AB|Cin|AB
  3. BCin1|A|AB|Cin|AB(AB)Cin=Cout
  4. BCin|A|AB|ABCin=S|Cout

ABAB

|ψout=|A|B|S|Cout

Cin2

Version quantique de l'additionneur complet

ABCinSCout


Version quantique de l'additionneur de report d'ondulation

Une extension simple de l'additionneur complet est un additionneur de report d'ondulation, nommé car il `` ondule '' le report pour devenir le report du prochain additionneur dans une série d'additionneurs, permettant des sommes de taille arbitraire (si lentes). Une version quantique d'un tel additionneur peut être trouvée par exemple ici


Mise en œuvre réelle d'un demi-additionneur

Pour de nombreux systèmes, la mise en œuvre d'une porte Toffoli est loin d'être aussi simple que la mise en œuvre d'une porte à qubit unique (ou même à deux qubits). Cette réponse donne un moyen de décomposer Toffoli en plusieurs portes plus petites. Cependant, dans des systèmes réels, comme IBMQX , il peut également y avoir des problèmes sur lesquels les qubits peuvent être utilisés comme cibles. En tant que telle, une implémentation réelle sur IBMQX2 ressemble à ceci: Demi-additionneur de qubit unique sur IBMQX2

Figure 3: Implémentation d'un demi-additionneur sur IBMQX2. En plus de décomposer la porte de Toffoli en plusieurs portes plus petites, des portes supplémentaires sont nécessaires car tous les registres de qubit ne peuvent pas être utilisés comme cibles. Les registres q [0] et q [1] sont ajoutés pour obtenir la somme dans q [1] et le report dans q [2]. Dans ce cas, le résultat q [2] q [1] doit être 10. L'exécuter sur le processeur donne le résultat correct avec une probabilité de 42,8% (bien que ce soit toujours le résultat le plus probable).

Mithrandir24601
la source
Y a-t-il des additionneurs d'ordinateur quantique?
John Duffield
@JohnDuffield Je ne sais pas si vous voulez dire des additionneurs (d'état) quantiques approximatifs (les ajouteurs d' état exacts sont apparemment interdits) ou des implémentations d'additionneurs «classiques» sur un ordinateur quantique - je n'ai pas essayé ce code particulier - ou quelque chose de différent ?
Mithrandir24601
Comment les nombres sont-ils représentés? Est-ce en binaire?
user3483902
01|0|1A01B
@ Mithrandir24601: est-ce important? N'est-ce pas la réponse non dans les deux cas? J'ai moi-même construit un additionneur parallèle. J'ai un diplôme en sciences informatiques.
John Duffield
6

`` Si j'utilisais des diodes, des transistors, etc., je pourrais facilement comprendre moi-même les opérations classiques que je dois exécuter pour ajouter 1 + 1. Comment feriez-vous cela, en détail, sur un ordinateur quantique? ''

Impressionnant! Je soupçonne que la plupart des gens ne peuvent pas facilement comprendre eux-mêmes comment combiner des diodes et des transistors pour implémenter un ajout classique à deux bits (bien que je ne doute pas que ce spécialiste des matériaux puisse probablement le faire). ;)

Théoriquement, la façon dont vous implémentez un additionneur classique est assez similaire dans un ordinateur classique et quantique: vous pouvez le faire dans les deux cas en implémentant une porte Toffoli ! (Voir la réponse de @ Mithrandir24601.)

Mais le spécialiste des matériaux veut probablement comprendre comment implémenter une telle porte (ou une séquence d'équivalence d'autres portes quantiques) sur un appareil physique. Il existe probablement une infinité de façons de le faire en utilisant différentes technologies quantiques, mais voici deux réalisations directes de cette porte en utilisant des ions piégés et des qubits supraconducteurs:

  1. Réalisation de la porte quantique de Toffoli avec des ions piégés, T. Monz, K. Kim, W. Hänsel, M. Riebe, AS Villar, P. Schindler, M. Chwalla, M. Hennrich et R. Blatt, Phys. Rev. Lett. 102 , 040501, arXiv: 0804.0082 .
  2. Réalisation d'une grille de Toffoli avec des circuits supraconducteurs A. Fedorov, L. Steffen, M. Baur, MP da Silva & A. Wallraff Nature 481 , 170–172, arXiv: 1108.3966 .

Vous pouvez également décomposer la porte Toffoli sous la forme d'une séquence de portes à un seul qubit et CNOT. https://media.nature.com/lw926/nature-assets/srep/2016/160802/srep30600/images/srep30600-f5.jpgentrez la description de l'image ici Vous pouvez lire comment les implémenter avec la photonique, le QED par cavité et les ions piégés à Nielsen et Chuang .

Juan Bermejo Vega
la source
Pour la divulgation, je n'étais pas ce scientifique des matériaux, mais plutôt, puisque la discussion sans fin était toujours insatisfaisante et en termes abstraits, j'étais la personne qui comprenait ce qu'il demandait, la recherchait sur Google et lui montrait une réponse minimale mais satisfaisante (un demi-additionneur sur quantiki) en termes de portes quantiques.
agaitaarino
5

Une nouvelle méthode de calcul des sommes sur un ordinateur quantique est introduite. Cette technique utilise la transformée de Fourier quantique et réduit le nombre de qubits nécessaires pour l'addition en supprimant le besoin de bits de report temporaires.

Lien PDF pour 'addition on a quantum computer' , écrit par Thomas G. Draper, écrit le 1er septembre 1998, révisé: 15 juin 2000.

Pour résumer le lien ci-dessus, l'addition est effectuée selon le schéma de circuit suivant (extrait de la page 6):

entrez la description de l'image ici

Pour citer l'article (encore une fois, page 6):

n

Arshdeep Singh
la source
1

Calcul parallèle de la somme de deux qubits

Je voulais expérimenter le calcul parallèle de la somme de deux qubits, une superposition de 0 et "1 avec phase -1 " ajouté à 1; et j'ai été inspiré par la réponse de Mithrandir24601. Les résultats sont ci-dessous. J'espère que ma réponse s'inscrit dans le contexte de ce qui a été demandé. Il montre comment 1 est ajouté 1 et à 0 en même temps, mais alors que les deux réponses sont calculées, nous ne pouvons lire la réponse qu'à un seul des calculs à chaque exécution du calcul. Vous pouvez voir que sur 1000 pistes, 417 fois nous lisons la réponse "1" (1 = 0 + 1), et 380 fois et nous lisons la réponse "2" (2 = 1 + 1).

(34 fois nous n'avons rien obtenu lorsque le bit 1 a été inversé, 54 fois 0 = 0 + 1, 29 fois 1 = 1 + 1, 28 fois 2 = 0 + 1, 42 fois 3 = 0 + 1, et 16 fois nous avons obtenu 3 = 1 + 1; chacune de ces erreurs résultant sans aucun doute de retournements de bits, de retournements de phase ou des deux). entrez la description de l'image ici

π

Une superposition de 0 et "1 avec la phase -1 " dans un registre à un qubit est ajoutée à 1 dans un registre à deux qubit. Avec trois qubits, les deux premiers qubits de gauche à droite sont la somme (ou le 3ème et le 4ème de 5) et le qubit le plus à droite indique si l'état fondamental (traité comme 0) a été ajouté ou l'état excité (1 avec une initiale phase de -1) a été ajoutée.

Brendan M
la source