La suprématie quantique

La nouvelle est tombée il y a déjà plus de deux semaines, je m’attaque enfin à la suprématie quantique de Google !

Alors que puis-je dire pour compléter cette exposé ?

D’une part les « pros » de la mécanique quantique se seront probablement étranglés devant ma notation des états superposés. Je fais comme si les coefficients devant chaque état propre étaient des pourcentages, ce n’est pas le cas, il s’agit en réalité de coefficients complexes, et ce qui compte c’est le module carré. Mais bon, ceux qui le savaient déjà le savaient déjà. Les autres n’en auront probablement jamais l’usage. Ou alors ils auront droit à un « vrai » cours de mécanique quantique !

Pareil pour mon désormais habituel « à la fois » pour le principe de superposition. J’ai déjà fait une vidéo spécifique sur le sujet !

Concernant les portes quantiques, j’ai dit qu’il y en avait « beaucoup », en fait il y en a une infinité ! Mais disons que si on se limite aux portes usuelles, il y en a vite une bonne série à mémoriser. Petit détail amusant : contrairement aux portes classiques, les portes logiques quantiques sont réversibles ! On peut toujours revenir en arrière. Alors que si je vous dit que le bit de sortie d’une porte ET est 0, ça ne vous dit pas d’où on partait exactement.

Tiens d’ailleurs j’ai dit qu’on pouvait appliquer un circuit « de son choix », ce qui faisait de Sycamore un vrai processeur programmable. Techniquement chaque qbit n’est pas directement connecté avec tous les autres. Il y a une sorte de disposition des qbits et des coupleurs, qui font qu’il y a une notion de voisinage.

figure1

Les fins calculateurs auront peut-être remarqué un truc bizarre sur l’échantillonnage fait par Sycamore. On prend typiquement 10^6 échantillons alors que l’espace des états est de taille 10^{16} ! Eh bien oui, en fait on est très loin d’avoir ne serait-ce qu’un échantillon par état propre, et donc l' »histogramme » est surtout plein de 0, avec des 1 de temps en temps.

Mais ce type d’échantillon suffit pour calculer ce que les chercheurs de Google ont utilisé comme mesure de la fidélité de leur processeur : la cross-entropy qui représente en gros la probabilité qu’aucune erreur ne soit survenue lors de l’application d’un circuit. Sur les graphiques publiés, on voit que pour les cas les plus extrêmes, les valeurs sont quand même très faibles (moins d’1% !)

figure4

Ce qui signifie que dans ces régimes (et donc celui de la suprématie), le processeur passe son temps à faire des erreurs, et le résultat de la mesure est donc souvent une chaine random.

Tiens au passage signalons que toutes les chaines produites par Sycamore ont été stockées et sont disponibles, donc de futurs calculs classiques seront en mesure d’invalider le cas échéant le résultat.

J’ai été évasif sur la notion de circuit « simplifiable », il faut dire que sur ce coup je fais confiance à ce qui est écrit dans l’article. En gros un cycle consiste en l’application d’un groupe de 8 portes, et si on les choisit selon un schéma donné (par exemple ABCDABCD) il en résulte un circuit « difficile » alors qu’avec un autre schéma (EFGHGHEF) le calcul classique s’en trouve grandement facilité (circuits « patch » dans leur nomenclature)

Sur le calcul de la RAM nécessaire à stocker l’état de Sycamore, 10^16 coefficients (qui sont complexes je le rappelle !) demande disons deux fois 32 bits si on code avec des float, donc 640 millions de Go. Après on doit pouvoir gagner en faisant module et phase. IBM a une estimation un peu moins gourmande puisqu’ils annoncent 128 millions de Go pour 54 qbits. Mais je n’ai pas creusé pour comprendre la différence, on est dans le même ordre de grandeur.

Enfin sur l’estimation du nombre de qbits nécessaires pour faire du Shor en suprématie quantique, c’est tiré de l’article que je cite dans la vidéo. Une notion importante (que je n’ai pas voulu introduire) est celle de qbit « logique » vs qbit « physique ». Un qbit logique c’est en supposant que tout marche sans erreur. Et en pratique on « réalise » un qbit logique à partir d’un certain nombre de qbits physiques, le tout sous la supervision d’un code correcteur. Dans le cas dont je parle et qui est discuté dans le papier, il faudrait donc 500 000 qbits physique pour réaliser un seul qbit logique suffisamment robuste.

Si vous voulez aller plus loin :

La papier de Google dans Nature, en accès libre, et notamment les 60 et quelques pages de « Supplementary Material« 

Le blog de Scott Aaronson, qui était notamment « reviewer » de l’article de Google.

Pour la distinction qbit logique et physique et les codes correcteurs : Fowler, A. G., Mariantoni, M., Martinis, J. M., & Cleland, A. N. (2012). Surface codes: Towards practical large-scale quantum computation. Physical Review A, 86(3), 032324.

La « contre-attaque » d’IBM