La naturaleza de los estados cuánticos: variables ocultas frente a la desigualdad de Bell
Para este módulo de Qiskit en las aulas, los estudiantes deben tener un entorno Python en funcionamiento con los siguientes paquetes instalados:
qiskitv2.1.0 o más recienteqiskit-ibm-runtimev0.40.1 o más recienteqiskit-aerv0.17.0 o más recienteqiskit.visualizationnumpypylatexenc
Para configurar e instalar los paquetes anteriores, consulta la guía Instalar Qiskit. Para ejecutar trabajos en ordenadores cuánticos reales, los estudiantes deberán crear una cuenta en IBM Quantum® siguiendo los pasos de la guía Configure su cuenta IBM Cloud.
Este módulo fue probado y utilizó 12 segundos de tiempo QPU. Esto es sólo una estimación. Su uso real puede variar.
# 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'Vea el tutorial del módulo de la Dra. Katie McCormick a continuación, o haga clic aquí para verlo en YouTube.
En segundo plano
En muchos cálculos de la mecánica cuántica, se parte de un estado conocido de un sistema, y ese estado suele conocerse a través de una medición. Hoy queremos responder a la pregunta: "¿Qué se puede decir sobre el estado de una partícula antes de cualquier medición?" Un corolario obvio es: "¿Cómo podemos saber, si no se nos permite medir?"
Esta cuestión se remonta a los inicios de la mecánica cuántica. Los pioneros en este campo se dividieron en facciones, con Einstein y muchos otros diciendo que una partícula se encuentra simplemente en algún estado desconocido antes de la medición. Otros, en particular Max Born y más tarde Niels Bohr, hicieron una afirmación más radical, diciendo que el estado de una partícula era realmente indeterminado por la naturaleza antes de la medición, no sólo desconocido para los humanos. A continuación, la medición colapsa probabilísticamente la partícula en un estado definido. Einstein, insatisfecho con esta explicación, bromeó célebremente al respecto: "Gott würfelt nicht", que se traduce aproximadamente como "Dios no juega a los dados"
Durante décadas, tras el surgimiento de este desacuerdo, muchos pensaron que nunca se encontraría respuesta, o que se trataba de una cuestión de perspectiva. Entonces, en 1964, John Bell, un físico de Irlanda del Norte, escribió un artículo en el que exploraba las estadísticas de ciertos experimentos que podrían responder definitivamente a esta pregunta. Demostró que, en una prueba concreta, se obtiene un conjunto de estadísticas a partir de estados cuánticos definidos (pero desconocidos) y otro conjunto de estadísticas a partir de estados cuánticos indeterminados por la naturaleza.
En la época del artículo de Bell, las pruebas experimentales de las estadísticas implicadas eran inaccesibles para todos excepto para los investigadores en la vanguardia de la física. Pero hoy, IBM Quantum ha hecho posible que estudiantes de todo el mundo utilicen dispositivos cuánticos reales, de forma remota a través de la nube y gratuita, para explorar la naturaleza de los estados cuánticos. Esto es lo que harás hoy.
Configuración del experimento mental: entrelazamiento de espines
Hay procesos en los que una partícula sin espín decae en dos partículas que tienen espín cada una. Dado que el espín es un tipo de momento angular, la ley de conservación del momento angular sugeriría que las dos partículas salientes deben tener espines exactamente antialineados. De hecho, esto se ha observado experimentalmente.
Un ejemplo: un mesón pi neutro decae a veces en un positrón y un electrón: No te preocupes si no sabes qué son esas partículas, y no te preocupes si las conoces tan bien que sabes que este tipo de desintegración es relativamente improbable. Sólo hay que saber que si una de las partículas salientes es de espín hacia arriba, la otra debe ser de espín hacia abajo, y viceversa. Por supuesto, no hay nada especial en "arriba" y "abajo"; se observa la misma antialineación si las mediciones se realizan a lo largo de lo que solemos llamar o . Esta desintegración es un contexto convincente que debemos considerar, porque podemos eludir las preguntas sobre qué mediciones tuvieron lugar en el pasado; el positrón y el electrón ni siquiera existían hasta el momento de la desintegración.
Podemos dejar que los mesones de se desintegren y observar la desviación de las partículas salientes bajo la influencia de un campo magnético no homogéneo. Un campo no homogéneo utilizado para desviar espines suele denominarse dispositivo de Stern-Gerlach, en honor a los investigadores que lo utilizaron por primera vez para reunir (accidentalmente) pruebas de la existencia del espín mecánico cuántico. Nótese que aquí la historia es más complicada que en el experimento original, ya que el electrón y el positrón también están cargados (a diferencia de los átomos de plata del experimento de Stern Gerlach). Pero sabemos cómo se mueven las partículas cargadas en un campo magnético, y podemos restar ese efecto. En lo que sigue, supondremos que las desviaciones utilizadas en nuestros cálculos se deben al espín de las partículas y no a la carga. En consecuencia, para nuestros propósitos no importa qué observador obtiene el positrón y cuál el electrón. El montaje experimental es más o menos el siguiente
Al desintegrarse el mesón, se expulsa un electrón en una dirección y un positrón en la otra. Cada una de estas dos partículas viajará a través de un campo magnético no homogéneo, lo que provocará que se desvíe en la dirección del campo magnético o en dirección opuesta al campo magnético.
Si tenemos una fuente de muchos mesones, podemos recopilar estadísticas al respecto. Si un observador a la izquierda y otro a la derecha (llamémosles Lucas y Rihanna, respectivamente) miden siempre a lo largo del mismo eje, estas estadísticas no serán muy interesantes: cada vez que uno mida hacia arriba, el otro medirá hacia abajo; cada vez que uno mida hacia dentro de la página, el otro medirá hacia fuera de la página, y así sucesivamente. Sin embargo, si los jugadores son libres de medir el giro en la dirección que quieran, podemos encontrar algo más interesante.
El experimento descrito anteriormente, en el que las partículas salen volando con un momento angular de espín que es medido por dos observadores, fue propuesto inicialmente por Einstein, Podolsky y Rosen (EPR) en este trabajo, y a veces se denomina "experimento EPR".
Nuestras opciones
Volvamos a exponer los dos puntos de vista históricos, para mayor claridad:
Opción 1 (Einstein): Los dos espines (el electrón y el positrón) están determinados, en el sentido de que el resultado de cualquier medición a lo largo de cualquier eje está predeterminado por la naturaleza, aunque no sepamos cuál es. Se podría pensar que los espines tienen una orientación real y bien definida en el espacio, que no conocemos, pero que existe. También se podría pensar en ello como un conjunto de información o instrucciones que determinan los resultados de las mediciones a lo largo de , , , o cualquier otro punto intermedio. Medir el espín del positrón (digamos a lo largo de z) le obliga a orientarse y alinearse en la dirección z o -z. Esto no tiene ninguna influencia causal en el espín del electrón, aunque sabemos que el espín del electrón comenzó opuesto al espín del positrón, por lo que si el espín del positrón se mide a lo largo de +z, el espín del electrón se mide a lo largo de -z. Aparte de la condición inicial de instrucciones que conservan el momento angular (los espines están antialineados), no hay ninguna conexión entre los dos espines. Esta opción se denomina a veces "variables ocultas", como en: las proyecciones a lo largo de diferentes ejes están determinadas, pero se nos ocultan.
Opción 2 (Born): Los espines son ambos indeterminados en sus estados iniciales... no meramente desconocidos, sino mal definidos físicamente, sin orientación definida ni instrucciones sobre los resultados experimentales, hasta que se miden. La medición del espín del positrón "colapsa" el espacio de todas las posibilidades hasta un único estado determinado, ya sea a lo largo de los ejes +z o -z. Esta medida del positrón obliga al espín del electrón a colapsar también en una proyección bien definida a lo largo de z, exactamente opuesta a la del positrón. Este efecto se produce repartido por el espacio entre el positrón y el electrón. A esto se le ha llamado "espeluznante acción a distancia", pero se le podría llamar menos dramáticamente "física no local".
Comprueba tu comprensión
Sería estupendo poder distinguir experimentalmente entre las opciones de Einstein y Born. ¿Qué experimentos darían los mismos resultados independientemente de cuál de las opciones sea la correcta? ¿Se te ocurre algún experimento que diera resultados diferentes para las dos opciones?
Nota: Sería realmente impresionante que se te ocurriera un experimento que diera resultados diferentes para las opciones de Einstein y Born; a los seres humanos les llevó décadas idear uno.
Siguiendo con el experimento descrito hasta ahora (es decir, sin espín neto con el positrón y el electrón antialineados), la medición de ambos espines a lo largo de , , o siempre daría signos opuestos debido a la conservación del momento angular, independientemente de cuál sea la opción correcta. Si se mide el espín de una partícula (por ejemplo, el electrón) en una dirección (por ejemplo, ), el espín de la otra partícula, el positrón, se medirá en . Si, en cambio, se mide el espín del positrón en la dirección , la probabilidad de que salga o es la misma. Esto puede deberse a que así lo indican las instrucciones ocultas (opción 1 de Einstein) o a que la distribución de probabilidad del espín del positrón se actualiza tras la medición del espín del electrón, y la nueva distribución de probabilidad es coherente con un reparto 50-50 entre (opción 2 de Born). Estos puntos se explican con más detalle a continuación.
La respuesta sólo es ligeramente diferente si se considera la desintegración de una partícula con spin-1, de forma que las dos partículas emergentes (como el positrón y el electrón) deben tener sus espines alineados, en lugar de antialineados. Si se mide una a lo largo de , una medición de la otra partícula a lo largo del eje también debe arrojar , y así sucesivamente. Como antes, esto podría ser el resultado de cualquiera de las dos opciones.
El resto de esta lección está dedicado a un experimento que permite distinguir entre las opciones de Einstein y Born, por lo que no entraremos aquí en muchos detalles. Sin embargo, parte del truco consiste en medir las dos partículas a lo largo de direcciones diferentes (como y , o incluso alguna dirección entre los ejes cartesianos tradicionales). El resto viene de considerar cuidadosamente la probabilidad precisa de obtener resultados diferentes dadas las predicciones de la mecánica cuántica y las de la información clásica como en las variables ocultas.
En cualquiera de las dos opciones, si los dos observadores, Lucas y Rihanna, miden a lo largo del mismo eje, esperaríamos que obtuvieran espines antialineados, independientemente de cuál de las dos opciones sea la verdadera. Para ver por qué, considere los siguientes diagramas.
La figura anterior muestra la opción de Einstein. Las direcciones de los giros son opuestas y determinadas. Si medimos a lo largo del eje , uno estará a lo largo de , y el otro a lo largo de . No tenemos ninguna razón para suponer que el positrón estará a lo largo de , y el electrón a lo largo de ; la imagen muestra simplemente que los espines se medirán en direcciones opuestas. De hecho, no es necesario que un espín dado tenga realmente una componente de su espín a lo largo de la dirección finalmente medida, en el caso de la opción de Einstein. La afirmación más débil de la opción de Einstein es que hay algún conjunto de instrucciones que se almacenan en el espín que determinan cuáles serán los resultados de las mediciones cuando se miden a lo largo de cualquier eje. No hace falta que nos imaginemos que estas instrucciones tienen forma de vector simple (véase el diagrama siguiente); volveremos sobre ello, más adelante.
La figura siguiente muestra la opción de Born, en la que las direcciones de los espines del positrón y del electrón están dispersas en una distribución de probabilidad y no tienen una dirección definida. No le des demasiada importancia a la forma de la distribución. En realidad, cada espín podría tener una probabilidad distinta de cero de apuntar en cualquier dirección siempre que estén opuestos entre sí; simplemente los hemos dibujado como fracciones del círculo para poder distinguirlos visualmente para la discusión. Nótese que en el caso de la opción de Born, sigue siendo cierto que el momento angular debe conservarse. Por tanto, si una onda de probabilidad se "colapsa" de forma que el espín apunte a lo largo de , la otra apuntará a lo largo de y se desviará en la dirección opuesta. Las opciones parecen idénticas.
Pero, ¿qué ocurre cuando los observadores L y R pueden medir a lo largo de cualquiera de los tres ejes, con cada par separado 120 grados, como se muestra en las figuras 4 y 5? Cada observador puede decidir al azar a lo largo de qué eje medirá el espín (a, b o c). No es necesario que ambos midan a lo largo del mismo eje. Cuando cada observador mide, puede encontrar una proyección positiva en el eje de su elección, o puede encontrar una proyección negativa. Por ejemplo, Lucas y Rihanna podrían medir +a y -b o +b y +c. Nótese que si por casualidad eligen medir a lo largo del mismo eje, entonces DEBEN obtener signos opuestos en sus proyecciones: +a y -a, +b y -b, o +c y -c; no pueden encontrar ambos, por ejemplo +a. En la siguiente sección, veremos cómo calcular la probabilidad de que Lucas y Rihanna obtengan el mismo signo en sus ejes medidos (++ o --) y signos opuestos (+-) o (-+).
Las dos figuras anteriores ilustran las posibles interpretaciones de las variables ocultas en este nuevo escenario de medición de tres ejes. Es decir, o bien los espines ya están determinados, como vectores, o bien existe un conjunto de instrucciones físicas integradas de algún modo en el sistema, de modo que los resultados de todas las mediciones posibles están predeterminados, aunque los experimentadores no puedan conocerlos antes de la medición. La alternativa se ilustra a continuación. Existe cierta distribución de probabilidad de los resultados, y esta distribución puede decirnos algunas cosas sobre la probabilidad de los diferentes resultados de la medición, pero los resultados son indeterminados por naturaleza antes de la medición.
Podemos preguntarnos: "¿Con qué frecuencia deben encontrar los dos jugadores el mismo signo de la proyección del giro?" Es decir, ni siquiera estamos registrando a lo largo de qué eje eligieron medir; simplemente estamos registrando si encontraron el mismo signo o un signo diferente. No es obvio si las opciones de Einstein y Born darán el mismo resultado en este esquema de medición más complicado. Pero en las figuras 4 y 5 debería quedar claro que es para que haya una diferencia. Para el caso mostrado en la opción de Einstein, una medida de la proyección del espín sobre el eje dará definitivamente , y la proyección del espín sobre el eje dará (apenas). Pero en la opción de Born, las posibilidades están muy abiertas. Es cierto que el momento angular se conserva. Pero como los dos campos magnéticos no están orientados en el mismo eje, forzamos a las partículas a una situación en la que deben colapsar en ejes diferentes (a través de interacciones con el campo). En la próxima sección, utilizaremos la mecánica cuántica para determinar cuáles deberían ser las probabilidades, dada la opción de Born, de que Lucas y Rihanna obtengan el mismo signo en sus ejes medidos (++ o --), y las probabilidades de que obtengan signos opuestos (+- o -+).
Predicciones
¿Qué predice la opción de Einstein (variables ocultas)?
Si la opción de Einstein es cierta, entonces cualquier par dado de y tendrá un conjunto de componentes vectoriales a sus espines. Por ejemplo, el electrón puede tener componentes , en cuyo caso el positrón debe tener componentes . Aquí sólo especificamos el signo de la proyección sobre cada eje, no la magnitud. Imaginemos que permitimos que se produzca un número muy grande de tales desintegraciones, y recogemos mediciones para rellenar la tabla siguiente.
Población | Partícula 1 | Partícula 2 |
|---|---|---|
Para cada caso de la tabla anterior, hay 9 opciones posibles para los ejes de Lucas y Rihanna: , , , , , , , , y . Leyendo esta tabla, la probabilidad de que los dos observadores midan el mismo signo para las filas 1 y 8 es cero. Para las filas 2-7, hay 4 maneras de obtener el mismo signo, que mostraremos sólo para la fila 2:
Los mismos signos: , , , Signos opuestos: , , , ,
Por tanto, si la opción de Einstein es la interpretación correcta de los estados cuánticos, la probabilidad total sumada sobre todas las poblaciones posibles, de que Lucas y Rihanna obtengan el mismo signo de proyección de espín sobre sus ejes elegidos al azar sería: Donde la igualdad se mantiene sólo si .
Comprueba tu comprensión
Para la fila 2 de la tabla anterior, hemos enumerado todas las formas posibles de que Lucas y Rihanna obtengan el mismo signo para sus medidas, y todas las formas en que podrían obtener signos diferentes. Repita este procedimiento para la tercera fila.
Los mismos signos: , , ,
Signos opuestos: , , , ,
La tabla anterior se refiere a "poblaciones", lo que significa que no sabemos cuántas de cada tipo de instrucciones produce la naturaleza, si el tratamiento de variables ocultas es correcto. Demuestre que sea cual sea la distribución de a , la probabilidad de obtener el mismo signo a partir de las mediciones es siempre menor o igual que 4/9.
Empecemos por suponer un número constante de ensayos de medición totales, de forma que sea constante. Obsérvese que en el caso especial en que , la expresión se reduce a
Supongamos ahora que o . Entonces
La suma de todos los ensayos, , sigue siendo la misma que antes. Pero como o ha aumentado desde 0, la suma de a debe ser menor que antes. En concreto, la suma de a es menor que . Por lo tanto
Combinando todos los casos posibles, tenemos .
Generalización
En el tratamiento anterior, hemos considerado las mediciones a lo largo de ejes específicos. Por supuesto, se pueden realizar mediciones a lo largo de cualquier eje. Llamemos a los dos vectores de espín de dos partículas y . Sea alguna variable oculta tal que un estado del sistema de dos partículas corresponda a un valor bien definido de . Sea la densidad de probabilidad en . Por último, elegimos los símbolos y para que sean el resultado predeterminado de una medición realizada en cualquiera de las partículas (A o B), dados los vectores de espín y la variable oculta. Desde un punto de vista crítico, obsérvese que es independiente de y es independiente de . Ahora se podrían plantear cualquier número de preguntas relacionadas con las correlaciones entre las mediciones en A y B. En particular, se podría preguntar por el valor de expectativa dado por
Dadas algunas suposiciones estándar sobre estos valores, como , , y normalización sobre , se puede demostrar que las correlaciones entre las dos partículas obedecen a la relación
donde y son los estados de espín de tu sistema y y son estados de espín de referencia (cualquier otro posible estado de espín del sistema). Se trata de una de las desigualdades conocidas como "desigualdades de Bell". Aquí no utilizaremos esta forma general. En su lugar, nos centraremos en un montaje experimental específico, de modo que podamos mapear ese montaje en un circuito cuántico.
¿Qué predice la opción de Born (mecánica cuántica no determinista)?
Lucas elegirá un eje y encontrará que el espín de una partícula está en dirección positiva o negativa. Obtenga lo que obtenga, orientemos nuestros ejes de forma que el eje sea esa dirección. Entonces podemos escribir el estado inicial después de la desintegración del mesón y antes de cualquier medida como
Rihanna medirá el espín de su partícula a lo largo de alguna otra dirección en un ángulo relativo al de Lucas. El operador de espín a lo largo de una dirección arbitraria viene dado por
Los estados propios de este operador son
Comprueba tu comprensión
Verifique que es un estado propio del operador anterior, y encuentre el valor propio.
Utilizando y , tenemos
Esto demuestra que es un estado propio y el valor propio correspondiente es .
La probabilidad de que Lucas mida un espín en la dirección positiva a lo largo del eje que eligió de que Rihanna también mida un espín positivo a lo largo de su dirección elegida es
Comprueba tu comprensión
Haga lo mismo para . Comprueba que también es igual a
Sumando estos resultados, encontramos que la probabilidad de que los signos de los dos ejes medidos sean iguales .
Comprueba tu comprensión
¿Qué podrías hacer para comprobar matemáticamente este resultado? Para que quede claro, no te pedimos que verifiques todavía que coincide con la naturaleza, sólo que te asegures de que no ha fallado nada en todos los cálculos.
(1) Haz el mismo cálculo para para verificar la conservación de la probabilidad.
(2) Compruebe un caso conocido. Inserte . Entonces corresponde a los dos observadores midiendo cada uno su spin a lo largo del mismo eje, lo que violaría la conservación del momento angular. Así que cabría esperar que esa probabilidad fuera cero, y de hecho insertando se obtiene .
(3) Compruebe otro caso conocido. Pruebe . Qué debe obtener. Cuidado con ese .
Específicamente esbozamos el caso en el que los ejes están en uno respecto al otro. Recordemos que, cualquiera que sea la dirección ( , , o ) que obtenga Lucas, la llamaremos . Entonces Rihanna elige aleatoriamente medir a lo largo de , , o . Si su elección es la misma que la de Lucas (hasta un signo), entonces ambos están midiendo a lo largo de , y la probabilidad de que Rihanna también mida es cero. Esto debería ocurrir 1/3 de las veces, ya que la elección de eje de Rihanna es independiente de la elección de Lucas. Para cualquier otra opción, Rihanna estará midiendo a lo largo de un eje o bien radianes desde (1/3 del tiempo) o bien radianes desde (1/3 del tiempo). Y, por supuesto, a lo largo de cualquiera de esos ejes, el espín podría medirse en sentido positivo o negativo. Esto nos da una probabilidad total de que Lucas y Rihanna obtengan el mismo signo:
Guau
Acabamos de demostrar que
Demos un paso atrás.
Las opciones de Einstein y Born parecían que siempre darían los mismos resultados, ya que sólo diferían en su descripción de lo que ocurre antes de la medición. Y sin embargo, suponiendo que hubiera instrucciones que predeterminaran el signo de la medición del espín a lo largo de ciertos ejes, obteníamos una restricción sobre la probabilidad de que las mediciones arrojaran el mismo signo . Entonces asumimos distribuciones de probabilidad como en mecánica cuántica... y obtuvo un valor diferente para . La predicción de la mecánica cuántica es superior a la que permite el tratamiento de las variables ocultas. Así que podemos hacer un experimento y descubrir si los estados mecánicos cuánticos están determinados por la naturaleza antes de la medición, o si están realmente en una superposición probabilística de estados posibles.
Este experimento se ha realizado muchas veces utilizando muchos sistemas físicos diferentes, a menudo fotones. Hay muchas consideraciones sutiles, como los sesgos en la medición, la sincronización (simultaneidad) de las mediciones y muchas otras. A lo largo de las décadas, la preocupación por estas sutilezas se ha ido desvaneciendo. Todavía se están realizando pruebas, a medida que aprendemos más sobre la realidad, pero ahora existe un amplio acuerdo en que la respuesta que obtendrá aquí, utilizando ordenadores cuánticos IBM®, es correcta.
¡Prueba con ordenadores cuánticos reales!
De acuerdo con nuestro tratamiento anterior, definamos la dirección de la medida de Lucas como . Esto era conveniente incluso en el enfoque algebraico, pero es especialmente conveniente para la computación cuántica, ya que lo que se mide típicamente es la proyección del qubit a lo largo de . Queremos hacer un circuito cuántico que nos dé las mismas condiciones de probabilidad que las anteriores para . Somos libres de orientar nuestro plano de forma que , y obtenemos
Necesitamos saber algunas cosas sobre IBM quantum computers, para guiar nuestra discusión. En primer lugar, los qubits se inicializan en el estado . Como ya se ha mencionado, las mediciones se realizan a lo largo del eje . Así que el objetivo es determinar qué operadores podemos insertar entre los estados base de medida y los estados iniciales de los qubits para obtener la complicada expresión anterior. Para ello, tendremos que repasar algunas puertas básicas de la computación cuántica.
compuerta: Equivale a una operación NOT. Puerta single-qubit.
En Qiskit, crear un circuito con una puerta tiene este aspecto:
from qiskit import QuantumCircuit
qc = QuantumCircuit(1)
qc.x(0)
qc.draw("mpl")Output:
Puerta de Hadamard: Crea un estado de superposición. Puerta single-qubit.
Un circuito con una puerta Hadamard se realiza de la siguiente manera:
qc = QuantumCircuit(1)
qc.h(0)
qc.draw("mpl")Output:
Puerta CNOT Controlada-NOT: Esta puerta utiliza dos qubits: uno de control y otro de destino. Comprueba el estado de un qubit de control que no ha cambiado. Pero si el qubit de control está en el estado , la puerta cambia el estado del qubit de destino; si el estado del qubit de control es no se produce ningún cambio. En la notación siguiente, supongamos que el primer qubit es el control y el segundo es el objetivo.
Una puerta CNOT tiene un aspecto un poco diferente en un circuito, ya que requiere dos qubits. Así es como se aplica:
qc = QuantumCircuit(2)
qc.cx(0, 1)
qc.draw("mpl")Output:
Obsérvese que el primer qubit que aparece en qc.cx(0,1) es el control, y el segundo es el objetivo. Diagramáticamente, el objetivo es el que tiene el signo "+" o la cruz.
Rotación Puerta Y: Rota el estado alrededor del eje y. Esta es una puerta de un solo qubit.
Por último, las puertas de rotación se implementan especificando el tipo de puerta, la cantidad de rotación y el qubit en el que se coloca la puerta, en ese orden:
import numpy as np
pi = np.pi
qc = QuantumCircuit(2)
qc.ry(pi / 2, 0)
qc.draw("mpl")Output:
El nombre de la puerta ry especifica el eje alrededor del cual se produce la rotación. El primer argumento se refiere a la cantidad de la rotación, y el segundo argumento especifica el qubit en el que se va a colocar la puerta.
Comprueba tu comprensión
Utilizando la sintaxis introducida o refrescada anteriormente, realice cualquier circuito cuántico que implique cuatro tipos diferentes de puertas cuánticas.
Por supuesto, existen infinitas posibilidades. A continuación, se muestra un ejemplo:
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")
Del experimento físico a los circuitos cuánticos
A partir de las operaciones de estas puertas, podemos ver, por ejemplo, que los kets en las expresiones para :
probablemente impliquen una puerta Hadamard para obtener la superposición, y una puerta CNOT para crear el entrelazamiento.
Ahora utilizaremos las puertas H, X y CNOT para convertir en :
Aquí significa una puerta CNOT usando L como control y R como objetivo. Ahora podemos factorizar la parte R del estado:
Ahora hemos escrito el ket enteramente como puertas cuánticas que operan en el estado inicial por defecto de los qubits.
Ahora podemos utilizar el que actúa sobre para obtener el sujetador en la expresión para .
Combinando estos resultados, podemos escribir la probabilidad como
Esto nos da instrucciones explícitas sobre cómo construir nuestro circuito cuántico. Aplicaremos puertas X, H, CNOT y a qubits que representan los estados cuánticos de las partículas medidas por Lucas y Rihanna, y realizaremos mediciones para obtener la probabilidad.
IBM Quantum recomienda abordar los problemas de computación cuántica utilizando un marco que denominamos patrones Qiskit. Consta de los siguientes pasos.
- Paso 1: Representar el problema en un circuito cuántico
- Paso 2: Optimiza tu circuito para que funcione en hardware cuántico real
- Paso 3: Ejecute su trabajo en los ordenadores cuánticos de IBM utilizando primitivas de ejecución
- Paso 4: Postprocesamiento de los resultados
Básicamente todo el trabajo que hicimos anteriormente fue el paso 1. Construyamos el circuito resultante utilizando Qiskit
Paso 1: Asignación de nuestros resultados a un circuito cuántico
# 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_histogramRecuerda que 1/3 de las veces el eje elegido por Rihanna estará a radianes del de Lucas, 1/3 de las veces estará a radianes del de Lucas, y 1/3 de las veces, elegirán el mismo eje. Así que en realidad tenemos que hacer 3 circuitos cuánticos para estos 3 casos, y sumar los resultados. Explicaremos detenidamente la primera, y las dos últimas simplemente las enunciaremos.
# 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")Output:
El código siguiente construye rápidamente los tres circuitos de una forma más ágil. Nótese que la única diferencia entre los tres circuitos es cuánto giramos los dos qubits alrededor del eje .
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")Output:
Ahora utilizaremos una primitiva de Qiskit llamada StatevectorSampler. Un muestreador es una primitiva diseñada para muestrear todos los estados posibles de un sistema y devolver probabilidades (o, en algunos casos, cuasiprobabilidades) de obtener cada estado. Podemos especificar un número de "disparos" y ver los "recuentos" de cada estado.
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)Si nos fijamos en los recuentos de cada circuito, vemos que dos de ellos eran básicamente idénticos, y el tercero bastante diferente.
plot_histogram(counts_list)Output:
Hagamos una lista de los posibles resultados y sumemos todos los recuentos de cada estado de cada uno de los tres circuitos para obtener las probabilidades 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))
)Ahora podemos imprimir los recuentos totales de cada resultado y trazar el histograma.
print(total_counts)
plot_histogram(total_counts)Output:
{'00': 7493, '01': 7432, '10': 7605, '11': 7470}
Comprueba tu comprensión
¿Es esta imagen coherente con los resultados predichos por las variables ocultas y el determinismo? ¿O es coherente con la mecánica cuántica probabilística (y no local)?
Es coherente con la mecánica cuántica probabilística y no local. El tratamiento de variables ocultas predijo que la probabilidad de obtener el mismo signo era menor o igual a 4/9. La mecánica cuántica predijo una probabilidad del 50%. El histograma anterior describe una probabilidad de 00 u 11 igual a 49.97 %. Esto se acerca mucho a la predicción de la mecánica cuántica probabilística, pero lo más importante es que es mayor que el rango permitido en el tratamiento de variables ocultas.
¿Prueba esto algo sobre la naturaleza?
¡No! ¡Estábamos usando un simulador! Se trata de un ordenador programado para comportarse según las leyes de la mecánica cuántica probabilística. Si proponemos una regla y programamos un ordenador para que la siga, ¡su capacidad para seguirla no es prueba de que la regla sea correcta! La única forma de demostrarlo es utilizar un ordenador cuántico real
Paso 2: Optimiza tu circuito cuántico para que funcione en hardware real
Aunque al principio utilizamos un simulador para depurar nuestro código, en realidad queremos ejecutarlo en hardware real. Al fin y al cabo, un simulador sólo pretende ser mecánico cuántico, basándose en las ecuaciones anteriores. Si el simulador nos dijera que esas ecuaciones son correctas, no nos convencería mucho. Queremos un auténtico ordenador cuántico que nos diga qué está pasando Así que seleccionaremos el ordenador cuántico que queremos utilizar. A veces puede ser importante elegir un dispositivo específico que tenga las propiedades que deseamos, pero a menudo simplemente queremos utilizar cualquier dispositivo que esté menos ocupado.
A continuación encontrará un código para guardar sus credenciales la primera vez que las utilice. Asegúrate de borrar esta información del cuaderno después de guardarlo en tu entorno, para que tus credenciales no se compartan accidentalmente cuando compartas el cuaderno. Consulte Configurar su cuenta IBM Cloud e Inicializar el servicio en un entorno no fiable para obtener más orientación.
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")Output:
Paso 3: Ejecute su trabajo en ordenadores cuánticos de IBM utilizando primitivas de tiempo de ejecución
Ahora que hemos optimizado nuestros circuitos para que funcionen en hardware cuántico real y hemos depurado nuestro código utilizando simuladores, estamos listos para recopilar estadísticas de un ordenador cuántico real y resolver el desacuerdo entre Einstein y 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)Output:
{'00': 7542, '01': 7503, '10': 7304, '11': 7651}
# 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_listOutput:
[None, None, None]
Paso 4: Postprocesamiento y análisis
Demos un paso atrás y recapitulemos: Utilizando un tratamiento de variables ocultas, y los 3 ejes de desplazamiento, obtuvimos una restricción sobre la probabilidad de que las mediciones produjeran el mismo signo . A continuación, asumimos distribuciones de probabilidad como en la mecánica cuántica y obtuvimos un valor diferente para esa probabilidad: . La predicción de la mecánica cuántica es mayor que la que permite el tratamiento de las variables ocultas. Así se puede saber experimentalmente si los estados de la mecánica cuántica están determinados por la naturaleza antes de la medición, o si se encuentran realmente en una superposición probabilística de estados posibles.
Hemos diseñado nuestros circuitos cuánticos de forma que haya cuatro resultados posibles correspondientes a Lucas y Rihanna midiendo un signo u otro de la proyección de espín: 00, 01, 10 y 11. En los casos de 00 y 11, Lucas y Rihanna miden el mismo signo, y en los casos de 01 y 10, miden signos opuestos. Vemos que, con una muy buena aproximación, la probabilidad de que Lucas y Rihanna obtengan el mismo signo es aproximadamente del 50%, definitivamente mayor que . Esto significa que no hay ningún conjunto de variables ocultas que pueda dar cuenta de esa distribución de probabilidades, y el tratamiento de variables ocultas no es compatible con el experimento.
Existen diferentes interpretaciones de los resultados experimentales de la mecánica cuántica, y hay muchas sutilezas en los montajes experimentales que se revisan cada cierto tiempo. Pero hasta ahora los principios de la mecánica cuántica y la interpretación probabilística de los estados cuánticos han descrito con precisión los resultados. Max Born parece haber acertado.
Tomémonos un momento más para reflexionar sobre su significado. De una desintegración emergen dos partículas que viajan en direcciones diferentes, posiblemente durante mucho tiempo. Sus espines no se encuentran en ningún estado bien definido y no llevan consigo instrucciones de variables ocultas para determinar los resultados de futuras mediciones. Pero la medición de una de ellas (por ejemplo, en la dirección ) determina necesariamente el resultado de un experimento sobre el espín de la otra partícula en la dirección (debe ser ). Esto significa que algo de la física de una partícula está determinado por lo que se hace con la otra partícula, posiblemente muy lejana. Esta es una situación que ha llevado a la gente a referirse a la realidad como "no local".
Dos partículas como las que hemos descrito están de algún modo "conectadas" en el sentido de que las mediciones sobre una pueden influir en la otra. Estas partículas se denominan "enredadas". El enredo es algo más que correlaciones. Por ejemplo, podríamos construir una máquina clásica que escupiera un imán hacia un lado con su extremo norte hacia arriba y un imán hacia el otro lado con su extremo norte hacia abajo. Tales imanes podrían estar perfectamente anticorrelacionados. Pero una medida de uno no le haría nada al otro. En el entrelazamiento mecánico cuántico, la partícula A podría estar en un estado indefinido (o en una mezcla de muchos estados), y nosotros podemos fijarla en un estado definido mediante mediciones en una partícula totalmente distinta (digamos, B). No existe nada parecido en el mundo clásico.
Esto suele plantear todo un mundo nuevo de preguntas y posibilidades. Algunas de las ideas que evoca son reales, como el uso del entrelazamiento para calcular, como en los ordenadores cuánticos Algunas son aparentemente atractivas, pero resultan fallidas, como intentar utilizar el entrelazamiento para enviar información más rápido que la luz. Le animamos a que se haga todas las preguntas que se le ocurran y a que lea cómo otros han investigado estos fenómenos. Hay todo un mundo de mecánica cuántica por explorar, pero aquí tienes algunos recursos que puedes consultar:
IBM Cursos cuánticos:
Documentos interesantes sobre mecánica cuántica:
- La paradoja de Einstein, Podolsky y Rosen
- Documento original de John Bell de 1964
- documento de 2019 sobre la captura e inversión de un "salto cuántico" en plena transición
Algunos recursos didácticos sobre mecánica cuántica:
- Materiales del curso Quantum I de la Universidad de Colorado.
Algunas investigaciones educativas sobre mecánica cuántica:
- Revisión de las dificultades de los estudiantes en mecánica cuántica de nivel superior por C. Singh y E. Marshman
Preguntas
Los profesores pueden solicitar versiones de estos cuadernos con claves de respuestas y orientaciones sobre su colocación en planes de estudios comunes rellenando esta rápida encuesta sobre cómo se están utilizando los cuadernos.
Conceptos fundamentales:
- Hubo un desacuerdo histórico sobre si los estados cuánticos eran simplemente desconocidos o indeterminados por la naturaleza antes de la medición, si la mecánica cuántica es determinista o probabilista.
- Las variables ocultas y, por tanto, el realismo local no son coherentes con las observaciones de la mecánica cuántica. Es decir, las correlaciones observadas en la mecánica cuántica no pueden explicarse por variables bien definidas que simplemente desconocemos.
- La mecánica cuántica es probabilística.
- El entrelazamiento es real y observable.
- El enredo no son sólo correlaciones.
- Podemos mapear escenarios del mundo real en ordenadores cuánticos.
- Las variables ocultas se refieren a cantidades especificadas por la naturaleza, pero desconocidas para el ser humano; no existen en este contexto.
Preguntas de verdadero o falso:
- T/F Albert Einstein argumentó que la mecánica cuántica era incompleta, como teoría, porque sólo describía probabilidades de resultados, y no el mecanismo subyacente que determinaba esos resultados.
- T/F "Variables ocultas" se refiere a la idea de que dos partículas mecánicas cuánticas pueden estar enredadas.
- T/F Dos sistemas correlacionados cualesquiera están mecánicamente entrelazados.
- T/F El entrelazamiento mecánico cuántico es importante para hacer bien las matemáticas, pero no se puede ver en un experimento.
- T/F En la mayoría de los casos, la mecánica cuántica no puede decir el resultado exacto de un experimento, sólo las probabilidades de que se midan ciertos resultados.
- T/F En mecánica cuántica, bajo ciertas condiciones, el estado de la partícula A puede verse afectado por el estado de la partícula B, incluso si las partículas A y B no están en contacto y no intercambian ninguna partícula.
- V/F Podemos mapear experimentos del mundo real en circuitos cuánticos.
Preguntas del moderador:
-
Supongamos que una partícula spin-0 decae en dos partículas spin-1/2 A y B. Se realiza una medición sobre la partícula A que revela que su espín tiene una proyección a lo largo de . La partícula B ahora
- a. definitivamente tiene una proyección de giro a lo largo
- b. definitivamente tiene una proyección de giro a lo largo
- c. definitivamente tiene una proyección de giro a lo largo
- d. definitivamente tiene una proyección de espín negativo a lo largo de cualquier eje medido.
-
Una partícula spin-0 decae en dos partículas spin-1/2 A y B. Si se mide la proyección de la partícula A a lo largo de , ¿cuáles de las siguientes proyecciones son posibles para una medición de la partícula B? Marque con un círculo todo lo que corresponda.
- a.
- b.
- c.
- d.
- e.
- f.
-
Supongamos que una partícula spin-0 decae en dos partículas spin-1/2 A y B. Qué describe mejor el estado de la partícula A antes de cualquier medición.
- a. El espín de la partícula A es a lo largo de .
- b. El espín de la partícula A es a lo largo de .
- c. El espín de la partícula A es a lo largo de .
- d. El espín de la partícula A está definido a lo largo de algunas direcciones, pero no de otras.
- decir, La orientación del espín de la partícula A es indeterminada por la naturaleza antes de cualquier medición.
-
¿Cuál o cuáles de las siguientes afirmaciones son ciertas en relación con la puerta de Hadamard? Seleccione todo lo que corresponda
- a.
- b.
- c.
- d.
-
¿Cuál o cuáles de las siguientes afirmaciones son ciertas en relación con la puerta X? Seleccione todo lo que corresponda
- a.
- b.
- c.
- d.
- e.
-
¿Cuál de las siguientes es una puerta de dos qubits?
- a. X
- b.
- c. H
- d. CNOT
-
Supongamos que un qubit se encuentra en el estado . ¿Cuál es la probabilidad de medir que se encuentra en el estado ?
- a. Exactamente el 100% en un simulador sin ruido, casi el 100% en un ordenador cuántico real
- b. Casi el 100% en un simulador sin ruido, exactamente el 100% en un ordenador cuántico real
- c. Exactamente 0% en un simulador sin ruido, casi 0% en un ordenador cuántico real
- d. Cerca del 0% en un simulador sin ruido, exactamente 0% en un ordenador cuántico real
Preguntas para el debate:
-
Los amigos A, B y C discuten los resultados de este laboratorio, relacionados con la desigualdad de Bell. Concretamente, están mirando la imagen que muestra que la probabilidad mecánica cuántica de medir el mismo signo a lo largo de los ejes es mayor que la permitida por un tratamiento de variables ocultas: . El amigo A dice: "Esto significa que no conocíamos los estados de espín antes de una medición" El amigo B dice: "No, es más que eso. Esto significa que los espines no apuntan ya en una dirección determinada antes de la medición. Aunque, el estado de giro podría determinarse o almacenarse de alguna manera" El amigo C dice: "No, es incluso más que eso. Esto significa que el futuro estado de espín ni siquiera fue decidido por la naturaleza antes de la medición" ¿Con quién está de acuerdo y por qué?
-
Explique cómo fenómenos de la mecánica cuántica como el entrelazamiento indican que la realidad no es local.
-
¿Qué experimentos adicionales le gustaría hacer para convencerse de los resultados obtenidos aquí?
-
¿Podría explorarse la desigualdad de Bell sólo con 3 ejes igualmente espaciados , , y ? ¿Podría hacerse con cualquier otro número de ejes? ¿Qué aspecto tendría? ¿Seguiría existiendo una diferencia entre las probabilidades predichas por las variables ocultas y la mecánica cuántica probabilística?