Categorías
Quantum

Entrelazamiento

Son dos los fenómenos que hacen de la Mecánica Cuántica una teoría extraña: la superposición y el entrelazamiento. En ambos casos, la explicación más sencilla consiste en mirar las matemáticas.

Superposición

De los dos fenómenos, el más fácil de entender es la superposición, porque es una consecuencia de la linealidad de la ecuación de Schrödinger. Si un sistema puede estar en el estado $\vert\psi\rangle$ y en el estado $\vert\phi\rangle$, teóricamente puede estar también en cualquier estado intermedio $\alpha\vert\psi\rangle + \beta\vert\phi\rangle$. Traducido al mundo de los ordenadores cuánticos: un qubit no sólo puede estar en el estado que nosotros interpretaremos como $0$ y en el estado $1$, sino que puede estar, aunque no lo «veamos» directamente, en cualquier estado situado entre esos dos valores. Por ejemplo, si le aplicamos la transformación de Hadamard a un qubit que está en el estado inicial $\vert0\rangle$, obtenemos el estado mixto $\frac{1}{\sqrt{2}}(\vert0\rangle + \vert1\rangle)$.

Si estamos, por el contrario, en un sistema de $N$ qubits, podemos aplicar una transformada de Hadamard a cada uno de los qubits, y obtendremos una superposición de todos los enteros representables en esos qubits (esto lo veremos en breve). De manera que, si tengo $16$ qubits, puedo tener todos los números del $0$ al $65.535$ representados al mismo tiempo en esos registros. Lo mejor de todo: si le aplico una transformación unitaria a esos $16$ qubits, voy a estar transformando al mismo tiempo los $65.536$ valores posibles, gracias a la linealidad de estas transformaciones. Todo en su momento…

No obstante, lo que estoy diciendo es que matemáticamente es fácil comprender la superposición; no que sea fácil darle un sentido físico a la misma. La superposición es el origen de la famosa paradoja del Gato de Schrödinger, que estaba tanto vivo como muerto hasta el momento en que decidíamos realizar una medición.

Graduum libertatis

Para entender el problema del entrelazamiento, tenemos que comprender cómo funcionan los grados de libertad en un sistema cuántico. Imaginemos una partícula puntual moviéndose dentro de un mundo clásico en tres dimensiones. Un físico describiría la partícula mediante dos vectores: la posición y el impulso de la misma, es decir, la velocidad multiplicada por la masa. Seis componentes.

Ahora supongamos que nuestro universo tiene dos partículas. El físico clásico utilizaría entonces cuatro vectores: dos por cada partícula. En total, doce componentes. Lo que hemos hecho es concatenar dos espacios vectoriales de seis dimensiones. El mundo clásico es así de «sencillo».

$$\mathbb{R}^6 \oplus \mathbb{R}^6 = \mathbb{R}^{12}$$

Pero eso no es lo que hemos hecho al pasar de uno a dos qubits… o mejor, a tres qubits, para evitar confusiones. El estado cuántico de un qubit es $\mathbb{C}^2$, o un espacio proyectivo dentro de éste, si nos ponemos exquisitos. Sin embargo, hemos visto que el estado de dos qubits es $\mathbb{C}^4$, y el de tres qubits, $\mathbb{C}^8$. Aquí no estamos usando la concatenación de espacios vectoriales, sino el (¡ta-dah!) producto tensorial de estos espacios:

$$\mathbb{C}^2 \otimes \mathbb{C}^2 \otimes \mathbb{C}^2 = \mathbb{C}^8$$

Es hora de ponernos serios y explicar qué es eso del…

Producto tensorial de espacios

El producto tensorial de dos espacios vectoriales es un tontería, créame. Supongamos que tenemos un espacio vectorial arbitrario (no necesariamente cuántico) de dimensión $n_1$, con una correspondiente base formada por $n$ vectores, a los que vamos a llamar $e_1, e_2 \cdots e_{n1}$. Ahora vamos a elegir un segundo espacio vectorial… qué narices… voy a multiplicar el espacio consigo mismo, para no tener que inventarme una segunda base. El espacio original se llamaba (se me había olvidado), $V$. No es muy original, pero nos valdrá. Y queremos ver cómo se define el espacio $V \otimes V$.

La idea es definir la base del nuevo espacio como todos los pares posibles de vectores $e_i \otimes e_j$, tal que:

$$i \neq j \rightarrow e_i \otimes e_j \neq e_j \otimes e_i$$

Si el espacio original tenía $n_1$ dimensiones, el espacio producto tiene $n_1 \times n_1$ dimensiones o componentes. Es exactamente lo mismo que vimos en la entrada anterior, pero ahora le ponemos un nombre bonito y una definición más o menos formal.

Nuestro espacio de un qubit tenía dos vectores en la base: $\vert0\rangle$ y $\vert1\rangle$. Por lo tanto, la base de un espacio de dos qubits es la siguiente:

$$\eqalign{
\vert0\rangle \otimes \vert0\rangle &\equiv \vert0\rangle\vert0\rangle \equiv \vert00\rangle \cr
\vert0\rangle \otimes \vert1\rangle &\equiv \vert0\rangle\vert1\rangle \equiv \vert01\rangle \cr
\vert1\rangle \otimes \vert0\rangle &\equiv \vert1\rangle\vert0\rangle \equiv \vert10\rangle \cr
\vert1\rangle \otimes \vert1\rangle &\equiv \vert1\rangle\vert1\rangle \equiv \vert11\rangle}$$

Es decir: lo mismo que ocurría en la entrada anterior, pero ahora tenemos otras dos maneras equivalentes de escribir los vectores de la base.

Toda esta pedantería formal, aclaro, es necesaria para lo que viene a continuación.

Producto tensorial de vectores

Al definir el producto tensorial de dos «espacios» vectoriales, implícitamente definimos también un producto tensorial entre vectores de las bases. Podemos definir un producto tensorial entre «vectores», en vez de espacios, si complementamos el producto tensorial de las bases con el requisito adicional de linealidad. Es decir:

$$\displaylines{(a\vert\phi\rangle + b\vert\psi\rangle) \otimes (c\vert\phi\rangle + d\vert\psi\rangle) \equiv\cr
\quad ac\vert\phi\rangle\vert\phi\rangle + ad\vert\phi\rangle\vert\psi\rangle + bc\vert\psi\rangle\vert\phi\rangle + bd\vert\psi\rangle\vert\psi\rangle}
$$Recuerde que $\vert\phi\rangle\vert\psi\rangle$ es simplemente una abreviatura de $\vert\phi\rangle\otimes\vert\psi\rangle$. Por poner un ejemplo, si multiplicamos uno de los vectores de la base computacional por uno de la base de Hadamard, obtendríamos:

$$\vert0\rangle \otimes \frac{1}{\sqrt 2}(\vert0\rangle + \vert1\rangle) =\frac{1}{\sqrt 2}(\vert00\rangle + \vert01\rangle)
$$Esta operación, en particular, nos permite obtener un vector combinado en el espacio de dos qubits a partir de dos estados independientes en el espacio de un solo qubit.

Ahora sí: entrelazamiento

Supongamos que estamos trabajando con tres qubits:

$$\mathbb{C}^2 \otimes \mathbb{C}^2 \otimes \mathbb{C}^2 = \mathbb{C}^8$$

¿Cuántos números complejos, a bote pronto, necesitamos para representar un estado de este espacio? Si ignoramos la existencia de la equivalencia de fase y el convenio de normalización, necesitaremos ocho números complejos. Si tenemos en cuenta que el espacio de estados es realmente un estado proyectivo, en realidad necesitamos siete números complejos.

Podemos definir algunos estados en $\mathbb{C}^8$ componiendo tensorialmente estados independientes de un qubit. La gran pregunta que tenemos que hacernos es: ¿nos basta esta composición de vectores independientes para generar todos los elementos de $\mathbb{C}^8$? La respuesta es un rotundo no.

Un estado de un qubit se representa mediante dos valores reales o, alternativamente, un valor complejo. Incluso si ignoramos las equivalencias de fase y la normalización, hay sólo dos complejos en cada qubit. Tres qubits, explicados independientemente, nos dan un total bruto de seis valores complejos, que en neto son realmente tres complejos. Ni de broma alcanzamos a cubrir todas las descripciones basadas en siete números complejos que hacen falta para tres qubits. Lo podemos enmarcar en un cuadro y colgarlo en la pared de la oficina:

Hay más estados en un sistema de $N$ qubits que los que se pueden describir especificando estados independientes para cada qubit.

He empezado con el caso de los tres qubits para evitar confusión debida a que $2^2=2+2$. Pero cuando hay dos qubits ocurre lo mismo: tratados independientemente, necesitamos cuatro valores reales, o dos complejos. Tratados en conjunto, necesitamos tres complejos o seis reales.

Si este razonamiento top-down no le convence, probemos uno bottom-up. Consideremos este estado de dos qubits:

$$\frac{1}{\sqrt 2}(\vert00\rangle+\vert11\rangle)$$Le reto a encontrar dos estados de un qubit que, multiplicados tensorialmente, den lugar a este estado de dos qubits. Veamos la definición de producto tensorial de vectores:

$$\displaylines{(a\vert0\rangle + b\vert1\rangle) \otimes (c\vert0\rangle + d\vert1\rangle) \equiv\cr
\quad ac\vert00\rangle + ad\vert01\rangle + bc\vert10\rangle + bd\vert11\rangle}
$$Si queremos que se anulen los estados $01$ y $10$, necesitamos que $ad=bc=0$. Pero cualquier combinación que consiga esto, también conseguirá que se anulen los otros dos términos. La conclusión: no podemos explicar este estado descomponiéndolo en qubits independientes.

Medición entrelazada

¿Qué ocurre si realizamos una medición sobre un estado entrelazado como $\frac{1}{\sqrt 2}(\vert00\rangle+\vert11\rangle)$? Tenemos una combinación lineal de dos de los cuatro vectores propios, o eigenvectors, del espacio de estados. Por lo tanto, la medición no será determinista. Podemos obtener tanto el estado $\vert00\rangle$ como $\vert11\rangle$, y la probabilidad de obtener cualquiera de ellos es la misma.

Lo interesante es que, si obtenemos un $1$ en el primer qubit, no necesitamos mirar el contenido del segundo qubit: por fuerza, tiene que ser otro $1$. Lo mismo ocurre si recibimos un $0$ en uno de los qubits: el otro tendrá el mismo valor. Si estamos pensando en un ordenador cuántico, en el que los qubits están muy cercanos físicamente, esto puede que no nos sorprenda. Pero nadie ha dicho que los qubits tengan que estar uno al lado del otro. Uno de ellos puede estar en la Tierra y el otro en el planeta Raticulín.

Esta es una variante más o menos abstracta de la famosa paradoja de Einstein-Podolsky-Rosen, o paradoja EPR.

Dependencia de la base

¿Hay algo intrínseco en un estado cuántico dado que nos permita asegurar que es un estado superpuesto o entrelazado? Resulta que no: tanto la superposición como el entrelazamiento son fenómenos que dependen de la elección de una base. Por ejemplo, el estado $\frac{1}{\sqrt 2}(\vert00\rangle+\vert11\rangle)$ es un estado entrelazado para mediciones en la base computacional. Pero si vamos a realizar la medición en la llamada base de Bell, para sistemas de dos qubits, el estado anterior es un «estado puro». El truco está en que la base de Bell se define de esta manera:

$$\eqalign{
\vert\Phi^{+}\rangle =& \frac{1}{\sqrt 2}(\vert00\rangle+\vert11\rangle) \cr
\vert\Phi^{-}\rangle =& \frac{1}{\sqrt 2}(\vert00\rangle-\vert11\rangle) \cr
\vert\Psi^{+}\rangle =& \frac{1}{\sqrt 2}(\vert01\rangle+\vert10\rangle) \cr
\vert\Psi^{-}\rangle =& \frac{1}{\sqrt 2}(\vert01\rangle-\vert10\rangle)
}$$No obstante, en la base de Bell también habrá estados entrelazados. En realidad, volveremos a tener más estados entrelazados que estados descomponibles.

Categorías
Quantum

Shave and a haircut

Vamos a generalizar el concepto de estado cuántico y de transformación unitaria a sistemas de más de un qubit. Este es el momento en que los libros entran en un pequeño berenjenal llamado producto tensorial. Nosotros necesitaremos, por supuesto, saber cómo funciona el producto tensorial, pero vamos a introducir el tema de forma gradual y, espero, más intuitiva. Comenzaremos con el estado de un sistema con sólo dos qubits.

Two qubits

Ya sabemos que el estado de un sistema de $N$ qubits es un vector complejo en $\mathbb{C}^{2^N}$, con $2^N$ componentes. Un qubit tiene dos componentes, dos qubits, cuatro; tres qubits tienen ocho componentes y diez, mil veinticuatro. No hay nada sorprendente ni esotérico en que aparezca una exponencial en nuestras cuentas. Diez bits clásicos también dan para representar hasta 1024 valores. Pero es cierto que diez qubits tienen infinitamente más estados internos que su contrapartida clásica, como veremos en breve.

Esto también significa que la base vectorial de un sistema de $N$ qubits tiene $2^N$ vectores. En el caso de un qubit, teníamos una base con dos vectores, los ya familiares $\vert0\rangle$ y $\vert1\rangle$. Con dos qubits, vamos a tener una base de cuatro vectores, y vamos a denominarlos así:

$$\vert00\rangle, \vert01\rangle, \vert10\rangle, \vert11\rangle$$Cualquier estado del sistema de dos qubits, entonces, puede describirse como una combinación lineal de estos cuatro vectores:

$$\vert\psi\rangle = c_{00}\vert00\rangle+c_{01}\vert01\rangle+c_{10}\vert10\rangle+c_{11}\vert11\rangle$$En notación matricial, por ejemplo, el estado $\vert00\rangle$ se representaría:

$$\pmatrix{1\cr 0\cr 0\cr 0}$$Como esta notación consume mucho espacio vertical, a veces representaremos este vector mediante su transpuesta (no su transpuesta conjugada):

$$\pmatrix{1&0&0&0}^T$$Tenemos que tener cuidado en cómo interpretamos la notación matricial. Por ejemplo, el vector $\vert11\rangle$ corresponde a esta matriz:

$$\pmatrix{0\cr 0\cr 0\cr 1}\quad\text{ó}\quad\pmatrix{0&0&0&1}^T$$Para poder usar la notación matricial es necesario acordar un orden en los vectores de la base. Lo que hemos hecho es utilizar implícitamente el llamado orden lexicográfico o de diccionario. El otro detalle a cuidar es el orden de los ceros y unos en vectores como $\vert01\rangle$ y $\vert10\rangle$. Nosotros siempre consideraremos que el primer qubit es el de más a la derecha.

Una forma alternativa de escribir estos vectores de la base es dejándonos de pamplinas, y traduciendo las cadenas de bits a notación decimal:

$$\vert0\rangle, \vert1\rangle, \vert2\rangle, \vert3\rangle$$La desventaja de esta notación es que hace falta tener muy claro el número de qubits en el sistema. Por ejemplo, $\vert3\rangle$ podría significar $\vert11\rangle$ en nuestro sistema de dos qubits, pero también $\vert0011\rangle$ en un ordenador de cuatro. En ocasiones, para evitar esta incertidumbre, escribiremos cosas como $\vert3\rangle_2$ o incluso $\vert3\rangle_N$, para dejar claro el número de qubits del sistema.

Potencias de dos

El número $4$ es bastante engañoso, porque $4 = 2+2 = 2\times2 = 2^2$. ¿Qué tamaño tiene el espacio de estado de un sistema, digamos, de cuatro qubits? El espacio vectorial subyacente es $\mathbb{C}^{2^4}$, es decir, $\mathbb{C}^{16}$, y la base vectorial tendrá $16$ elementos:

$$\displaylines{\vert0\rangle, \vert1\rangle, \vert2\rangle, \vert3\rangle, \vert4\rangle, \vert5\rangle, \vert6\rangle, \vert7\rangle,\cr
\vert8\rangle, \vert9\rangle, \vert \text{A}\rangle, \vert \text{B}\rangle, \vert \text{C}\rangle, \vert \text{D}\rangle, \vert \text{E}\rangle, \vert {F}\rangle}$$Esta vez he abreviado el contenido de los kets usando la notación hexadecimal, pero podía haber usado igualmente notación binaria o decimal, siempre que estuviese claro el contexto.

Lo importante en este punto es tener claro que cualquier espacio de estados en un ordenador cuántico va a tener una base cuyo tamaño es una potencia de dos. Esto importa porque, al diseñar algunos algoritmos como la Transformada Cuántica de Fourier, utilizaremos técnicas como “divide y vencerás”, que funcionan mejor cuando se trabaja sobre potencias de dos.

La insoportable gravedad del ser

Imaginemos que hay que simular un ordenador cuántico mediante un ordenador clásico. Supongamos que queremos simular 100 qubits. ¿Cuán difícil es? $2^{10}$ es $1.024$, pero $2^{100}$ es este monstruo:

$$1.267.650.600.228.229.401.496.703.205.376$$O, en notación científica decimal, 1,267E30. Ese es el número de componentes complejos en un simple estado cuántico. Ahora bien, la programación cuántica tiene una buena parte que consiste en multiplicar matrices o aplicar matrices a un estado cuántico. Calcule por su cuenta el tamaño de una matriz de transformación para un estado cuántico como el descrito.

Los ordenadores cuánticos más grandes en estas fechas tienen unos 50 qubits. $2^{50}$ es aproximadamente un 1 seguido de 15 ceros. Un mega son seis ceros, el giga, nueve y el tera, doce. Necesitamos mil teras para representar el estado cuántico completo. Es decir, un peta.

En la siguiente entrada, intentaré justificar cómo es posible este tipo de monstruosidades, y de paso, le presentaré el formalismo de los productos tensoriales.