Aller au contenu principal

La nature des états quantiques : variables cachées contre inégalité de Bell

Pour ce module Qiskit en classe, les étudiants doivent disposer d'un environnement Python fonctionnel avec les packages suivants installés :

  • qiskit v2.1.0 ou supérieur
  • qiskit-ibm-runtime v0.40.1 ou supérieur
  • qiskit-aer v0.17.0 ou supérieur
  • qiskit.visualization
  • numpy
  • pylatexenc

Pour configurer et installer les packages ci-dessus, consulte le guide Installer Qiskit. Pour pouvoir exécuter des tâches sur de vrais ordinateurs quantiques, les étudiants devront créer un compte IBM Quantum® en suivant les étapes du guide Configurer ton compte IBM Cloud.

Ce module a été testé et a utilisé 12 secondes de temps QPU. Il s'agit d'une estimation uniquement. Ton utilisation réelle peut varier.

# Added by doQumentation — required packages for this notebook
!pip install -q numpy qiskit qiskit-ibm-runtime
# Uncomment and modify this line as needed to install dependencies
#!pip install 'qiskit>=2.1.0' 'qiskit-ibm-runtime>=0.40.1' 'qiskit-aer>=0.17.0' 'numpy' 'pylatexenc'

Regarde la présentation du module par Dr. Katie McCormick ci-dessous, ou clique ici pour la regarder sur YouTube.


Contexte

Dans de nombreux calculs en mécanique quantique, tu pars d'un état connu d'un système, et cet état est généralement connu grâce à une mesure. Aujourd'hui, nous voulons répondre à la question : « Que peut-on dire de l'état d'une particule avant toute mesure ? » Un corollaire évident est : « Comment peut-on le savoir, si nous n'avons pas le droit de mesurer ? »

Cette question remonte aux débuts de la mécanique quantique. Les pionniers du domaine se sont divisés en factions : Einstein et beaucoup d'autres affirmaient qu'une particule se trouve simplement dans un état inconnu avant la mesure. D'autres, notamment Max Born, et plus tard Niels Bohr, ont formulé une affirmation plus radicale, selon laquelle l'état d'une particule était véritablement indéterminé par la nature avant la mesure, et pas seulement inconnu des humains. La mesure ferait alors s'effondrer probabilistiquement la particule dans un état défini. Einstein, insatisfait de cette explication, a eu cette célèbre réplique : « Gott würfelt nicht », ce qui se traduit approximativement par « Dieu ne joue pas aux dés. »

Pendant des décennies après l'émergence de ce désaccord, beaucoup pensaient qu'il ne serait peut-être jamais tranché, ou qu'il s'agissait d'une question de point de vue. Puis, en 1964, John Bell, un physicien originaire d'Irlande du Nord, publia un article dans lequel il explorait les statistiques de certaines expériences pouvant répondre à cette question de manière définitive. Il montra que, dans un test particulier, on obtient un ensemble de statistiques pour des états quantiques définis (mais inconnus), et un ensemble différent pour des états quantiques indéterminés par la nature.

À l'époque de l'article de Bell, les tests expérimentaux des statistiques concernées n'étaient accessibles qu'aux chercheurs à l'avant-garde de la physique. Mais aujourd'hui, IBM Quantum a rendu possible pour des étudiants du monde entier d'utiliser de vrais dispositifs quantiques, à distance via le cloud, et gratuitement, pour explorer la nature des états quantiques. C'est ce que tu vas faire aujourd'hui.

Mise en place de l'expérience de pensée : l'intrication de spin

Il existe des processus dans lesquels une particule sans spin se désintègre en deux particules ayant chacune un spin. Puisque le spin est une forme de moment angulaire, la loi de conservation du moment angulaire suggère que les deux particules émergentes doivent avoir des spins exactement anti-alignés. C'est en effet ce qu'on observe expérimentalement.

Un exemple : un méson pi neutre se désintègre parfois en un positron et un électron : π0e++e\pi^0\rightarrow e^+ + e^- Ne t'inquiète pas si tu ne sais pas ce que sont ces particules, et ne t'inquiète pas non plus si tu les connais si bien que tu sais que ce type de désintégration est relativement peu probable. Sache simplement que si l'une des particules émergentes est spin up, l'autre doit être spin down, et vice versa. Bien entendu, il n'y a rien de particulier avec « haut » et « bas » ; le même anti-alignement est observé si les mesures sont effectuées le long de ce qu'on appelle souvent xx ou yy. Cette désintégration constitue un contexte convaincant, car nous pouvons contourner les questions sur les mesures effectuées dans le passé ; le positron et l'électron n'existaient même pas avant le moment de la désintégration.

Nous pouvons laisser les mésons π0\pi^0 se désintégrer et observer la déviation des particules émergentes sous l'influence d'un champ magnétique inhomogène. Un champ inhomogène utilisé pour dévier les spins est souvent appelé dispositif de Stern-Gerlach, d'après les chercheurs qui l'ont utilisé en premier pour (accidentellement) rassembler des preuves de l'existence du spin mécanique quantique. Note que la situation est plus complexe que l'expérience originale, car l'électron et le positron sont également chargés (contrairement aux atomes d'argent dans l'expérience de Stern-Gerlach). Mais nous savons comment les particules chargées se déplacent dans un champ magnétique, et nous pouvons soustraire cet effet. Dans ce qui suit, nous supposerons que les déviations utilisées dans nos calculs sont dues au spin des particules et non à leur charge. Par conséquent, pour nos besoins, peu importe quel observateur reçoit le positron et lequel reçoit l'électron. Le dispositif expérimental ressemble à ceci :

Un schéma de la configuration d'une expérience EPR. Une source envoie une particule vers la gauche et une vers la droite. Chacune traverse un dispositif de Stern-Gerlach, un champ magnétique inhomogène et un écran de mesure.

Lorsque le méson se désintègre, un électron est expulsé dans une direction, et un positron dans l'autre. Chacune de ces deux particules traversera un champ magnétique inhomogène, ce qui la fera dévier soit dans la direction du champ magnétique, soit dans la direction opposée.

Si nous disposons d'une source de nombreux mésons, nous pouvons collecter des statistiques sur ce phénomène. Si un observateur à gauche et un à droite (appelons-les Lucas et Rihanna, respectivement) mesurent toujours le long du même axe, ces statistiques ne seront pas très intéressantes : chaque fois que l'un mesure up, l'autre mesure down ; chaque fois que l'un mesure vers la page, l'autre mesurera vers l'extérieur de la page, et ainsi de suite. Cependant, si les participants sont libres de mesurer le spin le long de n'importe quelle direction, nous pourrions trouver quelque chose de plus intéressant.

L'expérience décrite ci-dessus, dans laquelle des particules s'envolent avec un moment angulaire de spin mesuré par deux observateurs, a été initialement proposée par Einstein, Podolsky et Rosen (EPR) dans cet article, et on y fait parfois référence en tant qu'« expérience EPR ».

Nos options

Reformulons les deux points de vue historiques pour plus de clarté :

Option 1 (Einstein) : Les deux spins (l'électron et le positron) sont déterminés, dans le sens où le résultat de toute mesure le long de n'importe quel axe est prédéterminé par la nature, même si nous ne le connaissons pas. On peut penser que les spins ont une orientation réelle et bien définie dans l'espace, qui nous est inconnue, mais qui existe. Ou on peut considérer cela comme un ensemble d'informations ou d'instructions qui déterminent les résultats des mesures le long de xx, yy, zz, ou de toute direction intermédiaire. Mesurer le spin du positron (par exemple le long de z) le force à s'orienter et à s'aligner dans la direction z ou -z. Cela n'a aucune influence causale sur le spin de l'électron, bien que nous sachions que le spin de l'électron était initialement opposé au spin du positron ; donc si le spin du positron est mesuré comme étant le long de +z, le spin de l'électron est mesuré le long de -z. En dehors de la condition initiale d'instructions qui conservent le moment angulaire (les spins étant anti-alignés), il n'y a aucune connexion entre les deux spins. Cette option est parfois appelée « variables cachées », car : les projections le long des différents axes sont déterminées, mais nous sont cachées.

Option 2 (Born) : Les spins sont tous deux indéterminés dans leurs états initiaux… non pas simplement inconnus, mais physiquement indéfinis, sans orientation définie ni instructions sur les résultats expérimentaux, jusqu'à ce qu'ils soient mesurés. Mesurer le spin du positron « effondre » l'espace de toutes les possibilités vers un seul état déterminé, soit le long de l'axe +z soit de l'axe -z. Cette mesure du positron force le spin de l'électron à s'effondrer également dans une projection bien définie le long de z, exactement opposée à celle du positron. Cet effet se produit dans tout l'espace entre le positron et l'électron. On a appelé cela une « action fantôme à distance », mais on pourrait, de manière moins dramatique, l'appeler « physique non locale ».

Vérifie ta compréhension

Lis la question ci-dessous, réfléchis à ta réponse, puis clique sur le triangle pour révéler la solution.

Il serait formidable de distinguer expérimentalement les options d'Einstein et de Born. Quelles sont les expériences qui donneraient les mêmes résultats quelle que soit l'option correcte ? Peux-tu imaginer une expérience qui donnerait des résultats différents pour les deux options ? Note Ce serait très impressionnant si tu pouvais proposer une expérience qui donnerait des résultats différents pour les options d'Einstein et de Born ; il a fallu des décennies aux humains pour en trouver une.

Réponse :

En s'en tenant à l'expérience décrite jusqu'ici (c'est-à-dire sans spin net, avec le positron et l'électron anti-alignés), la mesure des deux spins le long de ±x\pm x, ±y\pm y, ou ±z\pm z donnerait toujours des signes opposés en raison de la conservation du moment angulaire, quelle que soit l'option correcte. Mesurer le spin d'une particule (disons, l'électron) le long d'une direction (disons, +z+z) signifie que le spin de l'autre particule, le positron, serait mesuré le long de z-z. Si tu mesures plutôt le spin du positron le long de la direction xx, il est tout aussi probable qu'il sorte en +x+x ou en x-x. Cela pourrait être dû au fait que c'est ce que disent les instructions cachées (option 1 d'Einstein), ou parce que la distribution de probabilité du spin du positron se met à jour après la mesure du spin de l'électron, et la nouvelle distribution de probabilité correspond à un partage 50-50 entre ±x\pm x (option 2 de Born). Ces points sont expliqués plus en détail ci-dessous.

La réponse est légèrement différente si tu considères la désintégration d'une particule de spin 1, telle que les deux particules émergentes (comme le positron et l'électron) doivent avoir leurs spins alignés, plutôt qu'anti-alignés. Si l'un est mesuré le long de +y+y, une mesure de l'autre particule le long de l'axe yy doit également donner +y+y, et ainsi de suite. Comme précédemment, cela pourrait résulter de l'une ou l'autre option.

La suite de cette leçon est consacrée à une expérience qui permet de distinguer les options d'Einstein et de Born, et nous n'entrerons donc pas dans les détails ici. Cependant, une partie de l'astuce consiste à mesurer les deux particules le long de directions différentes (comme xx et zz, ou même une direction entre les axes cartésiens traditionnels). Le reste vient d'une considération minutieuse de la probabilité précise d'obtenir différents résultats compte tenu des prédictions de la mécanique quantique et de celles de l'information classique telles que les variables cachées.

Dans l'une ou l'autre option, si les deux observateurs, Lucas et Rihanna, mesurent le long du même axe, nous nous attendrions à ce qu'ils obtiennent des spins anti-alignés, quelle que soit l'option vraie. Pour comprendre pourquoi, considère les diagrammes ci-dessous.

Trois diagrammes. D'abord, un diagramme de deux vecteurs de spin orientés dans des directions opposées, situés en diagonale entre les axes x et z. Ensuite, lorsqu'une mesure est effectuée le long de z, un ami obtient un spin le long de z négatif, et l'autre le long de z positif. Enfin, la situation est montrée pour les mesures le long de l'axe x, auquel cas l'un mesure un spin le long de x négatif, et l'autre le long de x positif.

La figure ci-dessus montre l'option d'Einstein. Les directions des spins sont opposées et déterminées. Si nous mesurons le long de l'axe zz, l'un sera le long de +z+z, et l'autre le long de z-z. Nous n'avons aucune raison de supposer que le positron serait le long de +z+z, et l'électron le long de z-z ; l'image montre simplement que les spins seront mesurés dans des directions opposées. En fait, un spin donné n'a pas nécessairement besoin d'avoir une composante de son spin le long de la direction éventuellement mesurée, dans le cas de l'option d'Einstein. La formulation la plus faible de l'option d'Einstein est qu'il existe un ensemble d'instructions stockées dans le spin qui déterminent quels seront les résultats de la mesure lorsque mesurée le long de n'importe quel axe. Nous n'avons pas besoin de considérer que ces instructions sont sous la forme d'un simple vecteur (voir le diagramme ci-dessous) ; nous y reviendrons plus tard.

Trois diagrammes. Le premier ne montre plus de directions vectorielles bien définies, mais présente plutôt une liste de règles qui déterminent les résultats des mesures. Les deuxième et troisième diagrammes sont les mêmes que dans l'image précédente, montrant des mesures le long de z positif/négatif, et le long de x positif/négatif.

La figure ci-dessous montre l'option de Born, dans laquelle les directions du spin du positron et de l'électron sont diffuses dans une distribution de probabilité et n'ont pas de direction définie. Ne lis pas trop dans la forme de la distribution. Chaque spin pourrait en réalité avoir une probabilité non nulle de pointer dans n'importe quelle direction, à condition qu'ils soient opposés l'un à l'autre ; nous les avons simplement dessinés comme des fractions du cercle afin de pouvoir les distinguer visuellement pour la discussion. Note que dans le cas de l'option de Born, il est toujours vrai que le moment angulaire doit être conservé. Donc si une vague de probabilité est « effondrée » de telle sorte que le spin pointe le long de +z+z, l'autre pointera le long de z-z et sera dévié dans la direction opposée. Les options semblent identiques.

Un diagramme montrant un flou de directions possibles pour un vecteur de spin, suivi des mêmes résultats de mesure que dans les images précédentes.

Mais que se passe-t-il lorsque les observateurs L et R peuvent mesurer le long de n'importe lequel des trois axes, chaque paire étant séparée de 120 degrés, comme illustré dans les figures 4 et 5 ? Chaque observateur peut décider de manière aléatoire le long de quel axe il mesurera le spin (a, b ou c). Les deux n'ont pas besoin de mesurer le long du même axe. Lorsque chaque observateur mesure, il peut trouver une projection positive sur son axe de choix, ou une projection négative. Par exemple, Lucas et Rihanna pourraient mesurer +a et -b, ou +b et +c. Note que s'ils choisissent de mesurer le long du même axe, ils DOIVENT obtenir des signes opposés dans leurs projections : +a et -a, +b et -b, ou +c et -c ; ils ne peuvent pas tous les deux trouver, par exemple, +a. Dans la section suivante, nous calculerons la probabilité que Lucas et Rihanna obtiennent le même signe sur leurs axes mesurés (++ ou --) et des signes opposés (+-) ou (-+).

Un diagramme montrant deux vecteurs de spin initiaux, suivis de mesures possibles le long de trois droites, a, b et c, ayant chacune une direction positive et négative. Parce que ces axes ne sont pas mutuellement perpendiculaires, Lucas et Rihanna ne mesureront pas des spins dans des directions opposées à moins qu'ils ne choisissent de mesurer le long des mêmes axes.

Les deux figures ci-dessus illustrent des interprétations possibles des variables cachées dans ce nouveau scénario de mesure à trois axes. C'est-à-dire que soit les spins sont déjà déterminés, comme des vecteurs, soit un ensemble d'instructions physiques existe, intégré d'une manière ou d'une autre dans le système, de telle sorte que les résultats de toutes les mesures possibles sont prédéterminés, même s'ils sont inconnaissables pour les expérimentateurs avant la mesure. L'alternative est illustrée ci-dessous. Une distribution de probabilité de résultats existe, et cette distribution peut nous dire des choses sur la probabilité de différents résultats de mesure, mais les résultats sont indéterminés par la nature avant la mesure.

Une distribution de probabilité floue est à nouveau montrée, maintenant avec les trois nouveaux axes a, b et c. Cela s'accompagne de probabilités de mesure différentes le long des différentes directions.

Nous pouvons nous demander : « À quelle fréquence les deux participants devraient-ils trouver le même signe de la projection du spin ? » C'est-à-dire que nous n'enregistrons même pas le long de quel axe ils ont choisi de mesurer ; nous enregistrons simplement s'ils ont trouvé le même signe ou un signe différent. Il n'est pas évident que les options d'Einstein et de Born donneront le même résultat dans ce schéma de mesure plus complexe. Mais il devrait être clair à partir des figures 4 et 5 qu'il est possiblepossible qu'il y ait une différence. Dans le cas montré par l'option d'Einstein, une mesure de la projection du spin e+e+ sur l'axe aa donnera définitivement +a+a, et la projection du spin ee- sur l'axe bb donnera b-b (à peine). Mais dans l'option de Born, les possibilités sont grandes ouvertes. Il est vrai que le moment angulaire est toujours conservé. Mais puisque les deux champs magnétiques ne sont pas orientés le long du même axe, nous forçons les particules dans une situation où elles doivent s'effondrer sur des axes différents (par interactions avec le champ). Dans la section suivante, nous utiliserons la mécanique quantique pour déterminer quelles devraient être les probabilités, d'après l'option de Born, que Lucas et Rihanna obtiennent le même signe sur leurs axes mesurés (++ ou --), et les probabilités qu'ils obtiendront des signes opposés (+- ou -+).

Prédictions

Que prédit l'option d'Einstein (variables cachées) ?

Si l'option d'Einstein est vraie, alors chaque paire de e+e+ et ee- aura un ensemble de composantes vectorielles de leurs spins. Par exemple, l'électron pourrait avoir les composantes (+a^,b^,+c^)(+\hat{a},-\hat{b}, +\hat{c}), auquel cas le positron doit avoir les composantes (a^,+b^,c^)(-\hat{a},+\hat{b}, -\hat{c}). Nous précisons ici seulement le signe de la projection sur chaque axe, pas la magnitude. Imaginons que nous permettons à un très grand nombre NN de telles désintégrations de se produire, et nous collectons des mesures pour remplir le tableau ci-dessous.

PopulationParticule 1Particule 2
N1N_1(+a^,+b^,+c^)(+\hat{a},+\hat{b},+\hat{c})(a^,b^,c^)(-\hat{a},-\hat{b},-\hat{c})
N2N_2(+a^,+b^,c^)(+\hat{a},+\hat{b},-\hat{c})(a^,b^,+c^)(-\hat{a},-\hat{b},+\hat{c})
N3N_3(+a^,b^,+c^)(+\hat{a},-\hat{b},+\hat{c})(a^,+b^,c^)(-\hat{a},+\hat{b},-\hat{c})
N4N_4(+a^,b^,c^)(+\hat{a},-\hat{b},-\hat{c})(a^,+b^,+c^)(-\hat{a},+\hat{b},+\hat{c})
N5N_5(a^,+b^,+c^)(-\hat{a},+\hat{b},+\hat{c})(+a^,b^,c^)(+\hat{a},-\hat{b},-\hat{c})
N6N_6(a^,+b^,c^)(-\hat{a},+\hat{b},-\hat{c})(+a^,b^,+c^)(+\hat{a},-\hat{b},+\hat{c})
N7N_7(a^,b^,+c^)(-\hat{a},-\hat{b},+\hat{c})(+a^,+b^,c^)(+\hat{a},+\hat{b},-\hat{c})
N8N_8(a^,b^,c^)(-\hat{a},-\hat{b},-\hat{c})(+a^,+b^,+c^)(+\hat{a},+\hat{b},+\hat{c})

Pour chaque cas du tableau ci-dessus, il y a 9 choix possibles pour les axes de Lucas et Rihanna : aaaa, abab, acac, baba, bbbb, bcbc, caca, cbcb, et cccc. En lisant ce tableau, la probabilité que les deux observateurs mesurent le même signe pour les lignes 1 et 8 est nulle. Pour les lignes 2 à 7, il y a 4 façons d'obtenir le même signe, ce que nous montrerons uniquement pour la ligne 2 :

Mêmes signes : acac, bcbc, caca, cbcb Signes opposés : aaaa, abab, baba, bbbb, cccc

Donc si l'option d'Einstein est la bonne interprétation des états quantiques, la probabilité totale, sommée sur toutes les populations possibles, que Lucas et Rihanna obtiennent le même signe de projection de spin sur leurs axes choisis aléatoirement serait : Psame=1iNi49(N2+N3+N4+N5+N6+N7)49 P_\text{same}=\frac{1}{\sum_i{N_i}} \frac{4}{9} (N_2+N_3+N_4+N_5+N_6+N_7)\leq \frac{4}{9} où l'égalité ne tient que si N1=N8=0N_1=N_8=0.

Vérifie ta compréhension

Lis les questions ci-dessous, réfléchis à tes réponses, puis clique sur les triangles pour révéler les solutions.

Pour la ligne 2 du tableau ci-dessus, nous avons listé toutes les façons pour Lucas et Rihanna d'obtenir le même signe pour leurs mesures, et toutes les façons dont ils pourraient obtenir des signes différents. Répète cela pour la troisième ligne.

Réponse :

Mêmes signes : abab, baba, bcbc, cbcb

Signes opposés : aaaa, acac, bbbb, caca, cccc

Le tableau ci-dessus fait référence à des « populations », ce qui signifie que nous ne savons pas combien de chaque type d'instructions la nature produit, si le traitement par variables cachées est correct. Montre que quelle que soit la distribution de N1N_1 à N8N_8, la probabilité d'obtenir le même signe à partir des mesures est toujours inférieure ou égale à 4/9.

Réponse :

Commençons par supposer un nombre constant d'essais de mesure totaux, de sorte que iNi=Ntot\sum_i{N_i} = N_{tot} est constant. Note que dans le cas particulier où N1=N8=0N_1=N_8=0, l'expression se réduit à

Psame=1N2+N3+N4+N5+N6+N7×49×(N2+N3+N4+N5+N6+N7)=1Ntot×49×Ntot=49P_{same}=\frac{1}{N_2+N_3+N_4+N_5+N_6+N_7} \times \frac{4}{9} \times (N_2+N_3+N_4+N_5+N_6+N_7) = \frac{1}{N_{tot}} \times \frac{4}{9} \times N_{tot}= \frac{4}{9}

Supposons maintenant que N10N_1 \neq 0 ou N80N_8 \neq 0. Alors

Psame=1N1+N2+N3+N4+N5+N6+N7+N8×49×(N2+N3+N4+N5+N6+N7)=49P_{same}=\frac{1}{N'_1+N'_2+N'_3+N'_4+N'_5+N'_6+N'_7+N'_8} \times \frac{4}{9} \times (N'_2+N'_3+N'_4+N'_5+N'_6+N'_7) = \frac{4}{9}

La somme de tous les essais, NtotN_tot, est toujours la même qu'avant. Mais puisque N1N'_1 ou N8N'_8 a augmenté depuis 0, la somme de N2N'_2 à N7N'_7 doit être inférieure à avant. En particulier, la somme de N2N'_2 à N7N'_7 est inférieure à NtotN_{tot}. Ainsi

Psame=1Ntot×49×(N2+N3+N4+N5+N6+N7)<49P_{same}=\frac{1}{N_{tot}} \times \frac{4}{9} \times (N'_2+N'_3+N'_4+N'_5+N'_6+N'_7) < \frac{4}{9}

En combinant tous les cas possibles, nous avons Psame49P_{same} \leq \frac{4}{9}.

Généralisation

Dans le traitement ci-dessus, nous avons considéré des mesures le long d'axes spécifiques. Bien entendu, on peut effectuer des mesures le long de n'importe quel axe. Appelons les deux vecteurs de spin de deux particules a\vec{a} et b\vec{b}. Soit λ\lambda une variable cachée telle qu'un état du système à deux particules corresponde à une valeur bien définie de lambdalambda. Soit ρ(λ)\rho(\lambda) la densité de probabilité en λ\lambda. Enfin, nous choisissons les symboles A(a,λ)A(\vec{a},\lambda) et B(b,λ)B(\vec{b},\lambda) pour représenter le résultat prédéterminé d'une mesure effectuée sur l'une ou l'autre particule (A ou B), compte tenu des vecteurs de spin et de la variable cachée. Remarque de manière cruciale que AA est indépendant de b\vec{b} et BB est indépendant de a\vec{a}. On pourrait maintenant poser un nombre quelconque de questions liées aux corrélations entre les mesures sur A et B. En particulier, on pourrait interroger la valeur d'espérance donnée par

E(a,b)dλρ(λ)A(a,λ)B(b,λ)E(\vec{a},\vec{b})\equiv\int{d\lambda \rho(\lambda)A(\vec{a},\lambda)B(\vec{b},\lambda)}

Compte tenu de certaines hypothèses standard sur ces valeurs, comme A(a,λ)1A(\vec{a},\lambda)\leq 1, B(b,λ)1B(\vec{b},\lambda)\leq 1, et la normalisation sur ρ(λ)\rho(\lambda), on peut montrer que les corrélations entre les deux particules obéissent à la relation

E(a,b)E(a,d)+E(c,d)+E(c,b)2,|E(\vec{a},\vec{b})-E(\vec{a},\vec{d})|+|E(\vec{c},\vec{d})+E(\vec{c},\vec{b})|\leq 2,

a\vec{a} et b\vec{b} sont les états de spin de ton système et c\vec{c} et d\vec{d} sont des états de spin de référence (tout autre état de spin possible du système). C'est l'une de toute une classe d'inégalités maintenant connues sous le nom d'« inégalités de Bell ». Nous n'utiliserons pas cette forme générale ici. Au lieu de cela, nous nous concentrerons sur un dispositif expérimental spécifique, afin de pouvoir faire correspondre ce dispositif à un circuit quantique.

Que prédit l'option de Born (mécanique quantique non déterministe) ?

Lucas choisira un axe et trouvera que le spin d'une particule est soit dans la direction positive soit dans la direction négative. Quoi qu'il obtienne, orientons nos axes de telle sorte que l'axe zz soit dans cette direction. Nous pouvons alors écrire l'état initial après la désintégration du méson et avant toute mesure comme

ψ=12(+LRL+R)|\psi \rangle =\frac{1}{\sqrt{2}}(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R)

Rihanna mesurera le spin de sa particule le long d'une autre direction à un angle θ\theta par rapport à celle de Lucas. L'opérateur de spin le long d'une direction arbitraire n^\hat{n} est donné par

S^n^=2[cos(θ)sin(θ)eiϕsin(θ)eiϕcos(θ)]\hat{S}_{\hat{n}}=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta) & \sin(\theta) e^{-i\phi} \\ \sin(\theta) e^{i\phi} & -\cos(\theta) \end{bmatrix}

Les états propres de cet opérateur sont

+n^=cos(θ/2)0+sin(θ/2)eiϕ1n^=sin(θ/2)0cos(θ/2)eiϕ1|+\rangle_{\hat{n}}=\cos(\theta/2)|0\rangle+\sin(\theta/2)e^{i\phi}|1\rangle \\ |-\rangle_{\hat{n}}=\sin(\theta/2)|0\rangle-\cos(\theta/2)e^{i\phi}|1\rangle

Vérifie ta compréhension

Lis les questions ci-dessous, réfléchis à tes réponses, puis clique sur les triangles pour révéler les solutions.

Vérifie que +n^|+\rangle_{\hat{n}} est un état propre de l'opérateur S^n^\hat{S}_{\hat{n}} ci-dessus, et trouve la valeur propre.

Réponse :

S^n^+n^=2[cos(θ)sin(θ)eiϕsin(θ)eiϕcos(θ)][cos(θ/2)sin(θ/2)eiϕ]\hat{S}_{\hat{n}}|+\rangle_{\hat{n}}=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta) & \sin(\theta) e^{-i\phi} \\ \sin(\theta) e^{i\phi} & -\cos(\theta) \end{bmatrix} \begin{bmatrix} \cos(\theta/2) \\ \sin(\theta/2)e^{i\phi}\end{bmatrix}=2[cos(θ)cos(θ/2)+sin(θ)sin(θ/2)eiϕeiϕcos(θ/2)sin(θ)eiϕcos(θ)sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta)\cos(\theta/2) + \sin(\theta)\sin(\theta/2)e^{i\phi} e^{-i\phi} \\ \cos(\theta/2)\sin(\theta) e^{i\phi} -\cos(\theta)\sin(\theta/2)e^{i\phi} \end{bmatrix}

En utilisant cos(θ)=cos2(θ/2)sin2(θ/2)\cos(\theta)=\cos^2(\theta/2)-\sin^2(\theta/2) et sin(θ)=2cos(θ/2)sin(θ/2)\sin(\theta)=2\cos(\theta/2)\sin(\theta/2), nous obtenons

=2[(cos(θ)+2sin2(θ/2))cos(θ/2)(2cos2(θ/2)cos2(θ/2)+sin2(θ/2))sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \left(\cos(\theta) + 2\sin^2(\theta/2)\right) \cos(\theta/2) \\ \left(2\cos^2(\theta/2) -\cos^2(\theta/2)+\sin^2(\theta/2)\right)\sin(\theta/2)e^{i\phi} \end{bmatrix}=2[(cos2(θ/2)sin2(θ/2)+2sin2(θ/2))cos(θ/2)(2cos2(θ/2)cos2(θ/2)+sin2(θ/2))sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \left(\cos^2(\theta/2)-\sin^2(\theta/2) + 2\sin^2(\theta/2)\right) \cos(\theta/2) \\ \left(2\cos^2(\theta/2) -\cos^2(\theta/2)+\sin^2(\theta/2)\right)\sin(\theta/2)e^{i\phi} \end{bmatrix}=2[cos(θ/2)sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta/2) \\ \sin(\theta/2)e^{i\phi} \end{bmatrix}

Ceci démontre que +n^|+\rangle_{\hat{n}} est un état propre et que la valeur propre correspondante est 2\frac{\hbar}{2}.

La probabilité que Lucas mesure un spin dans la direction positive le long de l'axe qu'il a choisi +|+\rangle etet que Rihanna mesure également un spin positif le long de sa direction choisie +n^|+\rangle_{\hat{n}} est

P++=(L+R,n^+)ψ2P_{++}=\left|\left(_L\langle+|_{R,\hat{n}}\langle+|\right)|\psi\rangle\right|^2 P++=(L+R(cos(θ/2)++sin(θ/2)eiϕ))12(+LRL+R)2P_{++}=\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)e^{-i\phi}\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2 P++=12(L+R(cos(θ/2)++sin(θ/2)eiϕ))(+LR)2P_{++}=\frac{1}{2}\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)e^{-i\phi}\langle-|\right)\right) \left(|+\rangle_L|-\rangle_R\right) \right|^2 P++=12(sin(θ/2)eiϕpR)R2P_{++}=\frac{1}{2}\left| \left(\sin(\theta/2)e^{-i\phi}\vphantom{p}_R\langle-|\right) |-\rangle_R \right|^2 P++=12sin2(θ/2)P_{++}=\frac{1}{2}\sin^2(\theta/2)

Vérifie ta compréhension

Lis les questions ci-dessous, réfléchis à tes réponses, puis clique sur les triangles pour révéler les solutions.

Fais de même pour PP_{--}. Vérifie qu'il est également égal à 12sin2(θ).\frac{1}{2}\sin^2(\theta).

Réponse :

P=(LR,n^+)ψ2P_{--}=\left|\left(_L\langle-|_{R,\hat{-n}}\langle+|\right)|\psi\rangle\right|^2P=(LR(sin(θ/2)+cos(θ/2)eiϕ))12(+LRL+R)2P_{--}=\left| \left(_L\langle-|_R\left(\sin(\theta/2)\langle+|-\cos(\theta/2)e^{-i\phi}\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2P=12(LR(sin(θ/2)+cos(θ/2)eiϕ))(L+R)2P_{--}=\frac{1}{2}\left| \left(_L\langle-|_R\left(\sin(\theta/2)\langle+|-\cos(\theta/2)e^{-i\phi}\langle-|\right)\right) \left(-|-\rangle_L|+\rangle_R\right) \right|^2P=12(sin(θ/2)pR+)+R2P_{--}=\frac{1}{2}\left| \left(\sin(\theta/2) \vphantom{p}_R\langle+|\right) |+\rangle_R \right|^2P=12sin2(θ/2)P_{--}=\frac{1}{2}\sin^2(\theta/2)

En additionnant ces résultats, nous trouvons que la probabilité que les signes des deux axes mesurés soient les mêmes est Psame=sin2(θ/2)P_{\text{same}}=\sin^2(\theta/2).

Vérifie ta compréhension

Lis la question ci-dessous, réfléchis à ta réponse, puis clique sur le triangle pour révéler la solution.

Que pourrais-tu faire pour vérifier les mathématiques de ce résultat ? Pour être clair, nous ne te demandons pas encore de vérifier que cela correspond à la nature, juste de t'assurer que rien ne s'est mal passé dans tout le calcul.

Réponse :

(1) Fais le même calcul pour Pdiff=cos2(θ/2)P_{\text{diff}}=\cos^2(\theta/2) pour vérifier la conservation de la probabilité.

(2) Vérifie un cas connu. Insère θ=0\theta = 0. Alors PsameP_{\text{same}} correspond aux deux observateurs mesurant chacun leur spin le long du même axe, ce qui violerait la conservation du moment angulaire. Donc tu t'attendrais à ce que cette probabilité soit nulle, et en effet l'insertion de θ=0\theta = 0 donne sin2(0/2)=0\sin^2(0/2) = 0.

(3) Vérifie un autre cas connu. Essaie θ=π\theta = \pi. Qu'est-ce que tu devrais obtenir ? Attention à ce 12\frac{1}{2}.

Nous esquissions spécifiquement le cas où les axes sont à 120deg120\deg les uns par rapport aux autres. Rappelle-toi que, quelle que soit la direction (±a\pm a, ±b\pm b, ou ±c\pm c) que Lucas obtient, nous l'appelons zz. Ensuite, Rihanna choisit aléatoirement de mesurer le long de ±a\pm a, ±b\pm b, ou ±c\pm c. Si son choix est le même que celui de Lucas (à un signe près), alors ils mesurent tous les deux le long de zz, et la probabilité que Rihanna mesure également +z+z est nulle. Cela devrait arriver 1/3 du temps, puisque le choix d'axe de Rihanna est indépendant de celui de Lucas. Pour tout autre choix, Rihanna mesurera le long d'un axe soit à 120deg=2π/3120\deg = 2\pi/3 radians de zz (1/3 du temps), soit à 240deg=4π/3240\deg = 4\pi/3 radians de zz (1/3 du temps). Et bien entendu, le long de l'un ou l'autre de ces axes, le spin pourrait être mesuré dans la direction positive ou négative. Cela nous donne une probabilité totale que Lucas et Rihanna obtiennent le même signe :

Psame=13(0+sin2(π/3)+sin2(2π/3))=13(0+34+34)=12P_{\text{same}} = \frac{1}{3}\left( 0 + \sin^2(\pi/3) + \sin^2(2\pi/3) \right) = \frac{1}{3}\left( 0 + \frac{3}{4} + \frac{3}{4} \right) = \frac{1}{2}

Wow

Nous venons de montrer que

(Psame)max, Einstein<(Psame)max, Born.(P_\text{same})_\text{max, Einstein}<(P_\text{same})_\text{max, Born}.

Faisons un pas en arrière.

Les options d'Einstein et de Born semblaient donner toujours les mêmes résultats, puisqu'elles ne différaient que dans leur description de ce qui se passe avant la mesure. Et pourtant, en supposant qu'il existe des instructions qui prédéterminent le signe de la mesure de spin le long de certains axes, nous avons obtenu une contrainte sur la probabilité que les mesures donnent le même signe (Psame)Einstein49(P_{\text{same}})_\text{Einstein}\leq\frac{4}{9}. Ensuite, nous avons supposé des distributions de probabilité comme en mécanique quantique… et obtenu une valeur différente pour (Psame)Born=12(P_{\text{same}})_\text{Born}=\frac{1}{2}. La prédiction de la mécanique quantique est supérieure à celle autorisée par le traitement des variables cachées. Nous pouvons donc réellement faire une expérience et découvrir si les états quantiques sont déterminés par la nature avant la mesure, ou s'ils sont vraiment dans une superposition probabiliste d'états possibles.

Cette expérience a été réalisée de nombreuses fois en utilisant de nombreux systèmes physiques différents, souvent des photons. Il y a de nombreuses considérations subtiles, comme les biais dans les mesures, la synchronisation (simultanéité) des mesures, et bien d'autres. Au fil des décennies, les préoccupations concernant ces subtilités ont été régulièrement éliminées. Des tests sont encore mis en œuvre, à mesure que nous en apprenons davantage sur la réalité, mais il existe maintenant un large consensus sur le fait que la réponse que tu obtiendras ici, en utilisant les ordinateurs quantiques IBM®, est correcte.

Test avec de vrais ordinateurs quantiques !

Conformément à notre traitement ci-dessus, définissons la direction de mesure de Lucas comme étant +z+z. Cela était pratique même dans l'approche algébrique, mais c'est particulièrement commode pour le calcul quantique, puisque ce que l'on mesure typiquement est la projection du qubit le long de zz. Nous voulons construire un circuit quantique qui nous donne les mêmes conditions de probabilité que celles définies plus haut pour P++P_{++}. Nous sommes libres d'orienter notre plan de sorte que ϕ=0\phi=0, et nous obtenons

P++=(L+R(cos(θ/2)++sin(θ/2)))12(+LRL+R)2P_{++}=\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2

Nous avons besoin de connaître quelques éléments sur les ordinateurs quantiques IBM, pour guider notre discussion. Premièrement, les qubits sont initialisés dans l'état 0=+z|0\rangle = |+\rangle_z. Comme mentionné précédemment, lorsque des mesures sont effectuées, elles se font le long de l'axe zz. L'objectif est donc de déterminer quels opérateurs nous pouvons insérer entre les états de base de mesure 00\langle 0|\langle 0| et les états initiaux des qubits 00|0\rangle |0\rangle pour obtenir l'expression complexe ci-dessus. Pour cela, nous devons passer en revue quelques portes fondamentales en calcul quantique.

Porte XX : Équivalente à une opération NOT. Porte à un seul qubit.

X0=1,X1=0X|0\rangle = |1\rangle,\\X|1\rangle=|0\rangle X=[0110]X=\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}

Dans Qiskit, créer un circuit avec une porte XX ressemble à ceci :

from qiskit import QuantumCircuit

qc = QuantumCircuit(1)
qc.x(0)
qc.draw("mpl")

Sortie de la cellule de code précédente

Porte HH de Hadamard : Crée un état de superposition. Porte à un seul qubit.

H0=12(0+1),H|0\rangle = \frac{1}{\sqrt{2}}\left(|0\rangle+|1\rangle\right), H1=12(01)H|1\rangle = \frac{1}{\sqrt{2}}\left(|0\rangle-|1\rangle\right) H=12[1111]H=\frac{1}{\sqrt{2}}\begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix}

Un circuit avec une porte de Hadamard se construit comme suit :

qc = QuantumCircuit(1)
qc.h(0)
qc.draw("mpl")

Sortie de la cellule de code précédente

Porte CNOT (NOT contrôlé) : Cette porte utilise deux qubits : un qubit de contrôle et un qubit cible. Elle vérifie l'état du qubit de contrôle, qui reste inchangé. Mais si le qubit de contrôle est dans l'état 1|1\rangle, la porte modifie l'état du qubit cible ; si l'état du qubit de contrôle est 0|0\rangle, aucune modification n'est apportée. Dans la notation ci-dessous, le premier qubit est le contrôle et le second est la cible.

CNOT00=00,CNOT01=01CNOT10=11CNOT11=10CNOT|00\rangle = |00\rangle, \\ CNOT|01\rangle = |01\rangle \\ CNOT|10\rangle = |11\rangle \\ CNOT|11\rangle = |10\rangle

Une porte CNOT a une apparence légèrement différente dans un circuit, car elle nécessite deux qubits. Voici comment elle est implémentée :

qc = QuantumCircuit(2)
qc.cx(0, 1)
qc.draw("mpl")

Sortie de la cellule de code précédente

Note : le premier qubit indiqué dans qc.cx(0,1) est le contrôle, et le second est la cible. Diagrammatiquement, la cible est celle qui porte le signe « + » ou une croix.

Porte Ry(θ)R_y(\theta) (rotation Y) : Fait pivoter l'état autour de l'axe yy. C'est une porte à un seul qubit.

Ry(θ)0=cos(θ/2)0+sin(θ/2)1,Ry(θ)0=sin(θ/2)0+cos(θ/2)1R_y(\theta)|0\rangle = \cos(\theta/2)|0\rangle+\sin(\theta/2)|1\rangle,\\R_y(\theta)|0\rangle = -\sin(\theta/2)|0\rangle+\cos(\theta/2)|1\rangle Ry(θ)=[cos(θ/2)sin(θ/2)sin(θ/2)cos(θ/2)]R_y(\theta)=\begin{bmatrix} \cos(\theta/2) & -\sin(\theta/2) \\ \sin(\theta/2) & \cos(\theta/2) \end{bmatrix}

Enfin, les portes de rotation sont implémentées en spécifiant le type de porte, l'angle de rotation, et le qubit sur lequel la porte est appliquée, dans cet ordre :

import numpy as np

pi = np.pi

qc = QuantumCircuit(2)
qc.ry(pi / 2, 0)
qc.draw("mpl")

Sortie de la cellule de code précédente

Le nom de la porte ry précise l'axe autour duquel s'effectue la rotation. Le premier argument π/2\pi/2 correspond à l'angle de rotation, et le second argument indique le qubit sur lequel la porte doit être appliquée.

Vérifie ta compréhension

Lis la ou les question(s) ci-dessous, réfléchis à ta réponse, puis clique sur le triangle pour afficher la solution.

En utilisant la syntaxe introduite ou rappelée ci-dessus, construis un circuit quantique quelconque faisant intervenir quatre types différents de portes quantiques.

Réponse :

Il existe bien sûr une infinité de possibilités. Voici un exemple :

qc=QuantumCircuit(2)
qc.ry(pi/2,0)
qc.cx(1,0)
qc.x(1)
qc.h(0)
qc.cx(0,1)
qc.draw("mpl")

De l'expérience physique aux circuits quantiques

D'après les opérations de ces portes, nous pouvons constater, par exemple, que les kets présents dans les expressions de P++P_{++} :

12(+LRL+R)\frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right)

impliquent probablement une porte de Hadamard pour créer la superposition, et une porte CNOT pour générer l'intrication.

Nous allons maintenant utiliser les portes H, X et CNOT pour transformer 0L0R|0\rangle_L|0\rangle_R en 12(+LRL+R)\frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) :

12(0L1R1L0R)\frac{1}{\sqrt{2}}\left(|0\rangle_L|1\rangle_R-|1\rangle_L|0\rangle_R\right) 12CNOTLR(0L1R1L1R)\frac{1}{\sqrt{2}}CNOT_{LR}\left(|0\rangle_L|1\rangle_R-|1\rangle_L|1\rangle_R\right)

Ici CNOTLRCNOT_{LR} désigne une porte CNOT utilisant L comme contrôle et R comme cible. Nous pouvons maintenant factoriser la partie R de l'état :

CNOTLR12(0L1L)1R\text{CNOT}_{LR}\frac{1}{\sqrt{2}}\left(|0\rangle_L-|1\rangle_L\right)|1\rangle_R CNOTLRHL1L1R\text{CNOT}_{LR} H_L|1\rangle_L|1\rangle_R CNOTLRHLXLXR0L0R\text{CNOT}_{LR} H_L X_L X_R|0\rangle_L|0\rangle_R

Nous avons maintenant écrit le ket entièrement sous la forme de portes quantiques agissant sur l'état initial par défaut des qubits.

Nous pouvons maintenant utiliser Ry(θ)R_y(\theta) agissant sur pL0R1\vphantom{p}_L\langle 0|_R\langle 1| pour obtenir le bra dans l'expression de P++P_{++}.

pL0R(cos(θ/2)0+sin(θ/2)1)\vphantom{p}_L\langle0|_R\left(\cos(\theta/2)\langle0|+\sin(\theta/2)\langle1|\right) pL0R(0cos(θ/2)+1sin(θ/2))\vphantom{p}_L\langle0|_R\left(|0\rangle \cos(\theta/2)+|1\rangle \sin(\theta/2)\right)^{\dagger} pL0(Ry,R(θ)0R)\vphantom{p}_L\langle0|\left(R_{y,R}(\theta)|0\rangle_R\right)^{\dagger} pL0R0Ry,R(θ)\vphantom{p}_L\langle0|_R\langle0|R_{y,R}(-\theta)

En combinant ces résultats, nous pouvons écrire la probabilité P++P_{++} comme suit :

p++=pL0R0Ry,R(θ)CNOTLRHLXLXR0L0R2p_{++}=\left|\vphantom{p}_L\langle0|_R\langle0|R_{y,R}(-\theta)\text{CNOT}_{LR} H_L X_L X_R|0\rangle_L|0\rangle_R\right|^2

Cela nous donne des instructions explicites pour construire notre circuit quantique. Nous allons appliquer les portes X, H, CNOT et RyR_y à des qubits représentant les états quantiques des particules mesurées par Lucas et Rihanna, puis effectuer des mesures pour obtenir la probabilité.

IBM Quantum recommande d'aborder les problèmes de calcul quantique à l'aide d'un cadre que nous appelons les Qiskit patterns. Il comprend les étapes suivantes :

  • Étape 1 : Modéliser le problème sous forme de circuit quantique
  • Étape 2 : Optimiser le circuit pour l'exécution sur du vrai matériel quantique
  • Étape 3 : Exécuter la tâche sur les ordinateurs quantiques IBM à l'aide des Runtime Primitives
  • Étape 4 : Post-traiter les résultats

En substance, tout le travail effectué ci-dessus correspond à l'étape 1. Construisons maintenant le circuit résultant avec Qiskit !

Étape 1 : Modélisation de nos résultats sous forme de circuit quantique

# We'll begin by importing qiskit and a visualization module so that we can plot a histogram of our results.

from qiskit.visualization import plot_histogram

Rappelons que Rihanna choisit un axe à 2π/32\pi/3 radians de celui de Lucas dans 1/3 des cas, à 4π/34\pi/3 radians dans 1/3 des cas, et qu'ils choisissent le même axe dans 1/3 des cas. Nous avons donc besoin de construire 3 circuits quantiques pour ces 3 situations, puis d'additionner les résultats. Nous expliquerons le premier en détail, et nous nous contenterons de poser les deux derniers.

# We start by declaring our first quantum circuit, and giving it two qubits (the first "2") and two classical bits for storing outputs (the second "2")
# Define registers
from qiskit import ClassicalRegister, QuantumRegister

qr = QuantumRegister(2, "q")
cr = ClassicalRegister(2, "c")
qc1 = QuantumCircuit(qr, cr)

# We know from our analysis above that we need an X gate acting on each of the qubits (L and R)
qc1.x([0, 1])
# We need a Hadamard gate acting on Lucas's qubit, which we're calling the 0th qubit.
qc1.h(0)
# The controlled-NOT gate uses the 0th qubit (Lucas's) as the control and the 1st qubit (Rihanna's) as the target.
qc1.cx(0, 1)
# The rotation gate acts on the 1st qubit (Rihanna's) and has an argument of -2 pi/3
qc1.ry(-2 * pi / 3, 1)
# Finally, we want to measure all the qubits in the circuit to obtain measurement probabilities, and store the results in the classical bits.
qc1.measure([0, 1], [0, 1])
# Now we can draw the first of the three circuits that will check Bell's inequality for us.
qc1.draw(output="mpl")

Sortie de la cellule de code précédente

Le code ci-dessous construit rapidement les trois circuits de manière plus concise. Note que la seule différence entre les trois circuits est l'angle de rotation des qubits autour de l'axe yy.

qcs = [QuantumCircuit(2, 2), QuantumCircuit(2, 2), QuantumCircuit(2, 2)]
for i in range(0, len(qcs)):
qcs[i].x([0, 1])
qcs[i].h(0)
qcs[i].cx(0, 1)

qcs[0].ry(-2 * pi / 3, 1)
qcs[1].ry(-4 * pi / 3, 1)
qcs[2].ry(-2 * pi / 3, 1)
qcs[2].ry(-4 * pi / 3, 1)

for i in range(0, len(qcs)):
qcs[i].barrier()
qcs[i].measure([0, 1], [0, 1])

counts_list = [None] * len(qcs)
qcs[0].draw(output="mpl")

Sortie de la cellule de code précédente

Nous allons maintenant utiliser une primitive Qiskit appelée StatevectorSampler. Un sampler est une primitive conçue pour échantillonner tous les états possibles d'un système et retourner les probabilités (ou dans certains cas, des quasi-probabilités) d'obtenir chaque état. Nous pouvons spécifier un nombre de « shots » et examiner les « counts » pour chaque état.

from qiskit.primitives import StatevectorSampler

sampler = StatevectorSampler()

# Start a job that will return shots for all 100 parameter value sets.
for i in range(0, len(qcs)):
pub = qcs[i]
job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
result = job.result()
data_pub = result[0].data
counts = data_pub.c.get_counts()
counts_list[i] = counts
# plot_histogram(counts)

En examinant les counts de chaque Circuit, nous constatons que deux d'entre eux sont pratiquement identiques, et que le troisième est très différent.

plot_histogram(counts_list)

Sortie de la cellule de code précédente

Établissons la liste des résultats possibles et additionnons tous les counts de chaque état provenant des trois Circuits pour obtenir les probabilités globales.

outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

for i in range(0, len(qcs)):
for j in range(0, len(outcomes)):
if counts_list[i].get(outcomes[j]) is None:
counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

total_counts = {}
for i in range(0, len(outcomes)):
total_counts[outcomes[i]] = sum(
counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
)

Nous pouvons maintenant afficher le total des counts pour chaque résultat et tracer l'histogramme.

print(total_counts)
plot_histogram(total_counts)
{'00': 7493, '01': 7432, '10': 7605, '11': 7470}

Sortie de la cellule de code précédente

Vérifie ta compréhension

Lis la ou les question(s) ci-dessous, réfléchis à ta réponse, puis clique sur le triangle pour afficher la solution.

L'image ci-dessus est-elle compatible avec les résultats prédits par les variables cachées et le déterminisme ? Ou est-elle compatible avec la mécanique quantique probabiliste (et non locale) ?

Réponse :

Elle est compatible avec la mécanique quantique probabiliste et non locale. Le traitement par variables cachées prédisait que la probabilité d'obtenir le même signe était inférieure ou égale à 4/9. La mécanique quantique prédisait une probabilité de 50 %. L'histogramme ci-dessus décrit une probabilité de 00 ou 11 égale à 49,97 %. C'est très proche de la prédiction de la mécanique quantique probabiliste, mais surtout, c'est supérieur à la plage autorisée dans le traitement par variables cachées.

Est-ce que cela prouve quelque chose sur la nature ?

Réponse :

Non ! Nous utilisions un simulateur ! C'est un ordinateur programmé pour se comporter selon les lois de la mécanique quantique probabiliste. Si nous proposons une règle, puis programmons un ordinateur pour la suivre, sa capacité à respecter cette règle ne prouve pas que la règle est correcte ! La seule façon de le prouver est d'utiliser un vrai ordinateur quantique !

Étape 2 : Optimiser le circuit quantique pour l'exécution sur du vrai matériel

Bien que nous ayons initialement utilisé un simulateur pour déboguer notre code, nous voulons vraiment l'exécuter sur du vrai matériel. Après tout, un simulateur fait semblant d'être quantique, en se basant sur les équations ci-dessus. Si le simulateur nous disait que ces équations sont correctes, cela ne serait pas très convaincant. Nous voulons qu'un vrai ordinateur quantique nous dise ce qui se passe ! Nous allons donc sélectionner l'ordinateur quantique que nous souhaitons utiliser. Parfois, il peut être important de choisir un appareil spécifique possédant les propriétés souhaitées, mais souvent nous voulons simplement utiliser l'appareil le moins sollicité.

Le code ci-dessous permet d'enregistrer tes identifiants lors de la première utilisation. Pense à supprimer ces informations du notebook après les avoir sauvegardées dans ton environnement, afin que tes identifiants ne soient pas accidentellement partagés lorsque tu partages le notebook. Consulte Configurer ton compte IBM Cloud et Initialiser le service dans un environnement non fiable pour plus de conseils.

from qiskit_ibm_runtime import QiskitRuntimeService

# Syntax for first saving your token. Delete these lines after saving your credentials.
# QiskitRuntimeService.save_account(channel='ibm_quantum_platform', instance = '<YOUR_IBM_INSTANCE_CRN>', token='<YOUR-API_KEY>', overwrite=True, set_as_default=True)
# service = QiskitRuntimeService(channel='ibm_quantum_platform')

# Load saved credentials
service = QiskitRuntimeService()

backend = service.least_busy(
operational=True, min_num_qubits=qcs[0].num_qubits, simulator=False
)
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager

target = backend.target
pm = generate_preset_pass_manager(target=target, optimization_level=3)

qcs_isa = qcs

for i in range(0, len(qcs)):
qcs_isa[i] = pm.run(qcs[i])
qcs_isa[i].draw(output="mpl", idle_wires=False, style="iqp")
qcs_isa[2].draw(output="mpl", idle_wires=False, style="iqp")

Sortie de la cellule de code précédente

Étape 3 : Exécuter la tâche sur les ordinateurs quantiques IBM à l'aide des Runtime Primitives

Maintenant que nous avons optimisé nos Circuits pour l'exécution sur du vrai matériel quantique, et débogué notre code à l'aide de simulateurs, nous sommes prêts à recueillir des statistiques depuis un vrai ordinateur quantique, et à trancher le désaccord entre Einstein et Born.

from qiskit_ibm_runtime import SamplerV2 as Sampler
# from qiskit_ibm_runtime import Session
# sampler.options.default_shots = 1000

# Start a job that will return shots for all 100 parameter value sets.
# The best practice is to use a session as shown below. This is available to Premium Plan, Flex Plan, and On-Prem (IBM Quantum Platform API) Plan users.
# result_list = [None] * len(qcs)
# real_counts_list = [None] * len(qcs)
# with Session(backend=backend) as session:
# sampler = Sampler(mode=session)

# for i in range(0, len(qcs)):
# # Define the primitive unified bloc (pub)
# pub = qcs[i]
# job = sampler.run([pub], shots=10000)
# # Extract the result for the 0th pub (this example only has one pub).
# result_list[i] = job.result()
# data_pub = result_list[i][0].data
# counts = data_pub.c.get_counts()
# real_counts_list[i] = counts
# # plot_histogram(counts)

# Open users can still carry out this experiment, but without reserving a session of use, meaning repeated queuing is possible.
from qiskit_ibm_runtime import Batch

batch = Batch(backend=backend)
sampler = Sampler(mode=batch)

result_list = [None] * len(qcs)
real_counts_list = [None] * len(qcs)

for i in range(0, len(qcs)):
# Define the primitive unified bloc (pub)
pub = qcs[i]
job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
result_list[i] = job.result()
data_pub = result_list[i][0].data
counts = data_pub.c.get_counts()
real_counts_list[i] = counts

# Close the batch because no context manager was used.
batch.close()
outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

for i in range(0, len(qcs)):
for j in range(0, len(outcomes)):
if real_counts_list[i].get(outcomes[j]) is None:
real_counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

real_total_counts = {}
for i in range(0, len(outcomes)):
real_total_counts[outcomes[i]] = sum(
real_counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
)

print(real_total_counts)
plot_histogram(real_total_counts)
{'00': 7542, '01': 7503, '10': 7304, '11': 7651}

Sortie de la cellule de code précédente

# This syntax allows you to run the job on a simulator, in case you have exhausted your allotted time on real IBM quantum computers.
# But we strongly advise running this on real quantum computers, since this is meant to be a check of the behavior of real quantum systems.

# This uses a local simulator
# from qiskit_aer import AerSimulator

# This generates a simulator that mimics the real quantum system
# backend_sim = AerSimulator.from_backend(backend)

# Import an estimator, this time from qiskit (we import from Runtime for real hardware)
# from qiskit.primitives import BackendSamplerV2
# sampler = BackendSamplerV2(backend = backend_sim)

# result_list = [None] * len(qcs)
# counts_list = [None] * len(qcs)
# for i in range(0, len(qcs)):
# Define the primitive unified bloc (pub)
# pub = qcs[i]
# job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
# result_list[i] = job.result()
# data_pub = result_list[i][0].data
# counts = data_pub.c.get_counts()
# counts_list[i] = counts

# data_pubs = (result_list[0][0].data,result_list[1][0].data,result_list[2][0].data)
# outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

# for i in range(0, len(qcs)):
# for j in range(0, len(outcomes)):
# if counts_list[i].get(outcomes[j]) is None:
# counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

# total_counts = {}
# for i in range(0, len(outcomes)):
# total_counts[outcomes[i]] = sum(
# counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
# )

# print(total_counts)
# plot_histogram(total_counts)
counts_list
[None, None, None]

Étape 4 : Post-traitement et analyse

Prenons un moment pour récapituler : en utilisant le traitement par variables cachées et les 3 axes décalés, nous avons obtenu une contrainte sur la probabilité que les mesures donnent le même signe Psame,hv=4/9P_{same,hv} = 4/9. Nous avons ensuite supposé des distributions de probabilité conformes à la mécanique quantique et obtenu une valeur différente pour cette probabilité : Psame,gm=1/2P_{same,gm} = 1/2. La prédiction de la mécanique quantique est supérieure à ce qu'autorise le traitement par variables cachées. Il est donc possible de déterminer expérimentalement si les états quantiques sont fixés par la nature avant la mesure, ou s'ils sont véritablement dans une superposition probabiliste d'états possibles.

Nous avons conçu nos Circuits quantiques de sorte qu'il existe quatre résultats possibles correspondant à Lucas et Rihanna mesurant l'un ou l'autre signe de la projection de spin : 00, 01, 10 et 11. Dans les cas 00 et 11, Lucas et Rihanna mesurent le même signe ; dans les cas 01 et 10, ils mesurent des signes opposés. Nous constatons qu'à très bonne approximation, la probabilité que Lucas et Rihanna obtiennent le même signe est d'environ 50 %, soit nettement supérieure à 4/94/9. Cela signifie qu'il n'existe aucun ensemble de variables cachées pouvant rendre compte de cette distribution de probabilités, et que le traitement par variables cachées n'est pas compatible avec l'expérience.

Il existe différentes interprétations des résultats expérimentaux de la mécanique quantique, et de nombreuses subtilités dans les montages expérimentaux qui sont régulièrement remises en question. Mais jusqu'à présent, les principes de la mécanique quantique et l'interprétation probabiliste des états quantiques ont décrit fidèlement les résultats. Max Born semble avoir eu raison.

Prenons encore un instant pour réfléchir à la signification de tout ceci. Deux particules émergent d'un événement de désintégration et voyagent dans des directions opposées, peut-être pendant longtemps. Leurs spins ne sont dans aucun état bien défini, et elles ne transportent avec elles aucune instruction de type variable cachée pour déterminer le résultat de futures mesures. Or, la mesure de l'une (selon, disons, +z+z) détermine nécessairement le résultat d'une expérience sur le spin de l'autre particule selon la direction zz (il doit être z-z). Cela signifie que quelque chose de la physique d'une particule est déterminé par ce que l'on fait à l'autre particule, possiblement très loin. C'est l'une des situations qui a conduit à qualifier la réalité de « non locale ».

Deux particules comme celles que nous avons décrites sont en quelque sorte « connectées », dans le sens où les mesures effectuées sur l'une peuvent influencer l'autre. On dit alors que ces particules sont « intriquées ». L'intrication va au-delà des simples corrélations. Par exemple, on pourrait construire une machine classique qui éjecte un aimant d'un côté avec son pôle nord vers le haut et un aimant de l'autre côté avec son pôle nord vers le bas. Ces aimants pourraient être parfaitement anti-corrélés. Mais la mesure de l'un ne ferait rien à l'autre. Dans l'intrication quantique, la particule A peut être dans un état indéfini (ou un mélange de nombreux états), et nous pouvons la fixer dans un état défini grâce à des mesures effectuées sur une particule totalement différente (par exemple, B). Rien de tel n'existe dans le monde classique.

Cela ouvre souvent tout un nouvel univers de questions et de possibilités. Certaines des idées qu'il suscite sont réelles, comme l'utilisation de l'intrication pour calculer, comme dans les ordinateurs quantiques ! D'autres sont séduisantes en apparence, mais s'avèrent finalement impossibles, comme tenter d'utiliser l'intrication pour envoyer de l'information plus vite que la lumière. Nous t'encourageons à poser toutes les questions qui te viennent à l'esprit, et à lire comment d'autres ont exploré ces phénomènes. Il existe tout un monde de la mécanique quantique à explorer ; voici quelques ressources pour commencer :

Cours IBM Quantum :

Articles intéressants sur la mécanique quantique :

Quelques ressources pédagogiques sur la mécanique quantique :

Quelques travaux de recherche en didactique de la mécanique quantique :

Questions

Les enseignants peuvent demander des versions de ces notebooks avec les corrigés et des conseils sur leur intégration dans les programmes courants en remplissant ce court sondage sur la façon dont les notebooks sont utilisés.

Concepts clés :

  • Il y avait historiquement un désaccord sur la question de savoir si les états quantiques étaient simplement inconnus ou réellement indéterminés par la nature avant la mesure, et si la mécanique quantique est déterministe ou probabiliste.
  • Les variables cachées, et par conséquent le réalisme local, ne sont pas compatibles avec les observations de la mécanique quantique. Autrement dit, les corrélations observées en mécanique quantique ne peuvent pas s'expliquer par des variables bien définies qui nous seraient simplement inconnues.
  • La mécanique quantique est probabiliste.
  • L'intrication est réelle et observable.
  • L'intrication n'est pas simplement une corrélation.
  • On peut transposer des scénarios du monde réel sur des ordinateurs quantiques.
  • Les variables cachées désignent des grandeurs spécifiées par la nature mais inconnues des humains ; elles n'existent pas dans ce contexte.

Questions V/F :

  1. V/F Albert Einstein soutenait que la mécanique quantique était incomplète en tant que théorie, car elle ne décrivait que les probabilités des résultats, et non le mécanisme sous-jacent qui déterminait ces résultats.
  2. V/F Les « variables cachées » renvoient à l'idée que deux particules quantiques peuvent être intriquées.
  3. V/F Deux systèmes corrélés quelconques sont nécessairement intriqués au sens quantique.
  4. V/F L'intrication quantique est importante pour obtenir des résultats mathématiques corrects, mais elle n'est pas observable expérimentalement.
  5. V/F Dans la plupart des cas, la mécanique quantique ne peut pas prédire le résultat exact d'une expérience, seulement les probabilités que certains résultats soient mesurés.
  6. V/F En mécanique quantique, dans certaines conditions, l'état de la particule A peut être affecté par l'état de la particule B, même si les particules A et B ne sont pas en contact et n'échangent aucune particule.
  7. V/F On peut transposer des expériences du monde réel sur des circuits quantiques.

Questions à choix multiples :

  1. Supposons qu'une particule de spin 0 se désintègre en deux particules de spin 1/2, A et B. Une mesure effectuée sur la particule A révèle que sa projection de spin est selon +z+z. La particule B a alors

    • a. définitivement une projection de spin selon z-z
    • b. définitivement une projection de spin selon x-x
    • c. définitivement une projection de spin selon y-y
    • d. définitivement une projection de spin négative selon tout axe mesuré.
  2. Une particule de spin 0 se désintègre en deux particules de spin 1/2, A et B. Si la particule A est mesurée avec une projection selon +z+z, lesquelles des projections suivantes sont possibles pour une mesure de la particule B ? Entoure toutes les réponses qui s'appliquent.

    • a. +x+x
    • b. x-x
    • c. +y+y
    • d. y-y
    • e. +z+z
    • f. z-z
  3. Supposons qu'une particule de spin 0 se désintègre en deux particules de spin 1/2, A et B. Quelle affirmation décrit le mieux l'état de la particule A avant toute mesure ?

    • a. Le spin de la particule A est selon +z+z.
    • b. Le spin de la particule A est selon z-z.
    • c. Le spin de la particule A est selon +x+x.
    • d. Le spin de la particule A est défini selon certaines directions, mais pas toutes.
    • e. L'orientation du spin de la particule A est indéterminée par la nature avant toute mesure.
  4. Lesquelles des affirmations suivantes sont vraies concernant la porte Hadamard ? Sélectionne toutes celles qui s'appliquent.

    • a. H0=12(0+1)H|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)
    • b. H0=12(01)H|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)
    • c. H12(01)=0H \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)=|0\rangle
    • d. H12(0+1)=0H \frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)=|0\rangle
  5. Lesquelles des affirmations suivantes sont vraies concernant la porte X ? Sélectionne toutes celles qui s'appliquent.

    • a. X0=1X|0\rangle = |1\rangle
    • b. X0=12(01)X|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)
    • c. X0=0X|0\rangle = -|0\rangle
    • d. X1=0X|1\rangle = |0\rangle
    • e. X12(01)=X12(10)X\frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)=X\frac{1}{\sqrt{2}}(|1\rangle-|0\rangle)
  6. Laquelle des portes suivantes est une porte à deux qubits ?

    • a. X
    • b. Ry(θ)R_y(\theta)
    • c. H
    • d. CNOT
  7. Supposons qu'un qubit soit dans l'état 0|0\rangle. Quelle est la probabilité de le mesurer dans l'état 1|1\rangle ?

    • a. Exactement 100 % sur un simulateur sans bruit, proche de 100 % sur un véritable ordinateur quantique
    • b. Proche de 100 % sur un simulateur sans bruit, exactement 100 % sur un véritable ordinateur quantique
    • c. Exactement 0 % sur un simulateur sans bruit, proche de 0 % sur un véritable ordinateur quantique
    • d. Proche de 0 % sur un simulateur sans bruit, exactement 0 % sur un véritable ordinateur quantique

Questions de discussion :

  1. Les amis A, B et C discutent des résultats de ce laboratoire, liés à l'inégalité de Bell. Plus précisément, ils examinent l'image qui montre que la probabilité quantique de mesurer le même signe selon des axes donnés est supérieure à celle autorisée par un traitement à variables cachées : (Psame)max,QM>(Psame)max,HV(P_\text{same})_\text{max,QM}>(P_\text{same})_\text{max,HV}. L'ami A dit : « Cela signifie que nous ne connaissions pas les états de spin avant une mesure. » L'ami B dit : « Non, c'est plus que ça. Cela signifie que les spins ne pointent pas déjà dans une direction particulière avant la mesure. Cependant, l'état de spin pourrait d'une certaine façon être déterminé ou stocké quelque part. » L'ami C dit : « Non, c'est encore plus que ça. Cela signifie que le futur état de spin n'était même pas décidé par la nature avant la mesure. » Avec qui es-tu d'accord, et pourquoi ?

  2. Explique comment des phénomènes de mécanique quantique comme l'intrication indiquent que la réalité est non-locale.

  3. Quelles expériences supplémentaires voudrais-tu réaliser pour te convaincre des résultats obtenus ici ?