(He escrito una introducción a la computación cuántica que se encuentra aquí. Si eres completamente nuevo en el campo, será un mejor lugar para empezar.)
Si quieres entrar en la computación cuántica, no hay manera de evitarlo: tendrás que dominar el turbio concepto de la puerta cuántica. Como todo en la computación cuántica, por no hablar de la mecánica cuántica, las puertas cuánticas están envueltas en una niebla desconocida de jerga y matemáticas matriciales que reflejan el misterio cuántico. Mi objetivo en este artículo es desvelar algunas capas de ese misterio. Pero te ahorraré el suspenso: nadie puede deshacerse de él por completo. Al menos, no en 2018. Todo lo que podemos hacer hoy es revelar las sorprendentes similitudes y las alarmantes diferencias entre las puertas clásicas y las puertas cuánticas, y explorar las implicaciones para el futuro cercano y lejano de la computación.
Similaridades sorprendentes
Aunque sólo sea por eso, las puertas lógicas clásicas y las puertas lógicas cuánticas son ambas puertas lógicas. Así que empecemos por ahí. Una puerta lógica, ya sea clásica o cuántica, es cualquier estructura o sistema físico que toma un conjunto de entradas binarias (ya sean 0s y 1s, manzanas y naranjas, electrones con espín y electrones con espín, lo que sea) y escupe una única salida binaria: un 1, una naranja, un electrón con espín, o incluso uno de los dos estados de superposición. Lo que gobierna la salida es una función booleana. Suena muy elegante y premonitorio, pero créeme, no lo es. Puedes pensar en una función booleana como nada más que una regla para responder a preguntas de Sí/No. Es tan sencillo como eso. Las puertas se combinan luego en circuitos, y los circuitos en CPUs u otros componentes computacionales. Esto es así tanto si hablamos de la Máquina Diferencial de Babbage, de ENIAC, del campeón de ajedrez retirado Deep Blue, como del último ordenador cuántico que llena salas, calienta huesos y da titulares.
Diferencias alarmantes
Las puertas clásicas funcionan con bits clásicos, mientras que las puertas cuánticas funcionan con bits cuánticos (qubits). Esto significa que las puertas cuánticas pueden aprovechar dos aspectos clave de la mecánica cuántica que están totalmente fuera del alcance de las puertas clásicas: la superposición y el entrelazamiento. Estos son los dos conceptos de los que más se habla en el contexto de la computación cuántica, y aquí se explica por qué. Pero hay un concepto menos conocido que quizá sea igual de importante: la reversibilidad. En pocas palabras, las puertas cuánticas son reversibles. Aprenderás mucho sobre la reversibilidad cuando te adentres en la computación cuántica, así que vale la pena profundizar en ella. Por ahora, puedes pensarlo así: todas las puertas cuánticas vienen con un botón de deshacer, mientras que muchas puertas clásicas no lo tienen, al menos todavía. Esto significa que, al menos en principio, las puertas cuánticas nunca pierden información. Los qubits que se enredan al entrar en la puerta cuántica siguen enredados al salir, manteniendo su información a salvo durante la transición. En cambio, muchas de las puertas clásicas de los ordenadores convencionales sí pierden información y, por tanto, no pueden volver sobre sus pasos. Curiosamente, esa información no se pierde en última instancia en el universo, sino que se filtra en tu habitación o en tu regazo como el calor de tu ordenador clásico.
V es de vector
No podemos hablar de puertas cuánticas sin hablar de matrices, y no podemos hablar de matrices sin hablar de vectores. Así que sigamos con ello. En el lenguaje de la mecánica cuántica y la computación, los vectores se representan en un paquete bastante extraño llamado ket, que viene de la segunda mitad de la palabra braket. Y tienen el mismo aspecto. Este es un vector ket: |u>, donde u representa los valores del vector. Para empezar, usaremos dos kets, |0> y |1>, que representarán qubits en forma de electrones en los estados de espinaje (|0>) y espinaje (|1>). Estos vectores pueden abarcar cualquier número, por así decirlo. Pero en el caso de un estado binario como un qubit de electrón de espín arriba/abajo, sólo tienen dos. Así que en lugar de parecer vectores columna altísimos, sólo parecen números apilados de dos en dos. Así es como se ve |0>:
/ 1 \
\ 0 /
Ahora, lo que hacen las puertas/matrices es transformar estos estados, estos vectores, estos qubits, estas columnas de números, en otros completamente nuevos. Por ejemplo, una puerta puede transformar un estado ascendente (|0>) en un estado descendente (|1>), como por arte de magia:
/ 1 \ → / 0 \
\ 0 / \ 1 /
M es para la matriz
Esta transformación de un vector en otro tiene lugar a través de la magia apenas entendida de la multiplicación matricial, que es completamente diferente del tipo de multiplicación que todos aprendimos en la escuela pre-cuántica. Sin embargo, una vez que le coges el tranquillo a este tipo de matemáticas, es extremadamente gratificante, porque puedes aplicarlo una y otra vez a innumerables ecuaciones que, de otro modo, serían incomprensibles y dejarían estupefactos a los no iniciados. Si necesitas más motivación, recuerda que fue a través del lenguaje de las matemáticas matriciales como Heisenberg desveló los secretos del principio de incertidumbre que todo lo abarca.
De todas formas, si no estás familiarizado con esta herramienta matemática, se te pondrán los ojos como platos si empiezo a llenar este post con grandes matrices cuadradas de números en este momento. Y no podemos dejar que eso ocurra. Así que vamos a esperar unos cuantos párrafos más para las matemáticas y la notación de las matrices. Basta con decir, por ahora, que generalmente utilizamos una matriz para sustituir una puerta cuántica. El tamaño y el factor de miedo de la matriz dependerán del número de qubits con los que opere. Si sólo hay un qubit que transformar, la matriz será bonita y sencilla, sólo una matriz de 2 x 2 con cuatro elementos. Pero el tamaño de la matriz se dispara con dos, tres o más qubits. Esto se debe a que una ecuación decididamente exponencial que vale la pena memorizar impulsa el tamaño de la matriz (y por lo tanto la sofisticación de la puerta cuántica):
2^n x 2^n = the total number of matrix elements
Aquí, n es el número de qubits con los que opera la puerta cuántica. Como puedes ver, este número se dispara a medida que aumenta el número de qubits (n). Con un qubit, es 4. Con dos, es 16. Con tres, son 64. Con cuatro, es… desesperante. Así que, por ahora, me quedo con un qubit, y tiene a Pauli escrito por todas partes.
Las puertas de Pauli
Las puertas de Pauli llevan el nombre de Wolfgang Pauli, que no sólo tiene un nombre genial, sino que ha conseguido inmortalizarse en dos de los principios más conocidos de la física moderna: el célebre principio de exclusión de Pauli y el temido efecto Pauli.
Las puertas de Pauli se basan en las más conocidas matrices de Pauli (también conocidas como matrices de espín de Pauli) que son increíblemente útiles para calcular los cambios en el espín de un solo electrón. Dado que el espín del electrón es la propiedad preferida para un qubit en las puertas cuánticas actuales, las matrices y puertas de Pauli nos vienen como anillo al dedo. En cualquier caso, hay esencialmente una puerta/matriz de Pauli para cada eje del espacio (X, Y y Z).
Así que puedes imaginarte cada una de ellas ejerciendo el poder de cambiar la dirección del espín de un electrón a lo largo de su eje correspondiente en el espacio 3D. Por supuesto, como todo en el mundo cuántico, hay una trampa: este no es nuestro espacio 3D ordinario, porque incluye una dimensión imaginaria. Pero dejémoslo pasar por ahora, ¿de acuerdo?
Mercialmente, las puertas de Pauli son casi las puertas cuánticas más simples que se pueden encontrar. (Al menos las puertas X y Z. La Y es un poco rara.) Así que incluso si nunca has visto una matriz en tu vida, Pauli las hace manejables. Sus puertas actúan sobre un, y sólo un, qubit a la vez. Esto se traduce en simples matrices de 2 x 2 con sólo 4 elementos por pieza.
La puerta X de Pauli
La puerta X de Pauli es un sueño hecho realidad para aquellos que temen las matemáticas matriciales. No hay números imaginarios. Sin signos menos. Y una operación sencilla: la negación. Esto es natural, porque la puerta X de Pauli corresponde a una puerta NOT clásica. Por esta razón, la compuerta X también se denomina a menudo puerta NOT cuántica.
En un entorno real, la compuerta X generalmente convierte el estado de espín hacia arriba |0> de un electrón en un estado de espín hacia abajo |1> y viceversa.
|0> --> |1> OR |1> --> |0>
La «X» mayúscula suele representar la puerta X de Pauli o la propia matriz. Así es como se ve la X:
/ 0 1 \
\ 1 0 /
En términos de notación adecuada, aplicar una puerta cuántica a un qubit es cuestión de multiplicar un vector ket por una matriz. En este caso, estamos multiplicando el vector ket de espín |0> por la puerta X de Pauli o matriz X. Esto es lo que parece X|0>:
/ 0 1 \ /1\
\ 1 0 / \0/
Nota que siempre colocas la matriz a la izquierda del ket. Como habrás oído, la multiplicación matricial, a diferencia de la multiplicación ordinaria, no conmuta, lo que va en contra de todo lo que nos enseñaron en la escuela. Es como si 2 x 4 no fuera siempre igual a 4 x 2. Pero así es como funciona la multiplicación matricial, y una vez que le cojas el tranquillo, verás por qué. Mientras tanto, teniendo en cuenta el importante orden de los elementos, la notación completa para aplicar la puerta NOT cuántica a nuestro qubit (en este caso el estado de spin-up de un electrón), se ve así:
X|0> = / 0 1 \\ = /0\ = |1>
\ 1 0 / \0/ \1/
Aplicado a un vector de spin-down, la notación completa se ve así:
X|1> = / 0 1 \\ = /1\ = |0>
\ 1 0 / \1/ \0/
A pesar de toda la notación extraña, en ambos casos lo que realmente está sucediendo aquí es que un qubit en forma de un solo electrón está pasando a través de una puerta cuántica y saliendo por el otro lado con su espín completamente invertido.
Las puertas Y y Z de Pauli
Te ahorraré las matemáticas con estas dos. Pero al menos deberías conocerlas de pasada.
De las tres puertas de Pauli, la puerta Y de Pauli es la más elegante. Se parece mucho a la puerta X, pero con una i (sí, la loca raíz cuadrada de -1) en lugar del 1 normal, y un signo negativo en la parte superior derecha. Esto es lo que parece Y:
/ 0 -i \
\ i 0 /
La puerta Z de Pauli es mucho más fácil de seguir. Es una especie de imagen especular de la puerta X, pero con un signo negativo en la mezcla. Esto es lo que parece Z:
/ 1 0 \
\ 0 -1 /
La puerta Y y la puerta Z también cambian el espín de nuestro electrón qubit. Pero probablemente tendría que ahondar en los misterios esotéricos de la esfera de Bloch para explicar realmente cómo, y tengo otra puerta que atravesar en este momento…
La puerta de Hadamard
Mientras que las puertas de Pauli se parecen mucho a las puertas lógicas clásicas en algunos aspectos, la puerta de Hadamard, o puerta H, es una bestia cuántica de buena fe. Aparece en todas partes en la computación cuántica, y por una buena razón. La puerta de Hadamard tiene la capacidad cuántica característica de transformar un estado cuántico definido, como el spin-up, en uno turbio, como una superposición de spin-up y spin-down al mismo tiempo.
Una vez que envíes un electrón con espín arriba o espín abajo a través de una compuerta H, se convertirá en una moneda de un centavo que se encuentra en su extremo, con una probabilidad exacta de 50/50 de que termine en cara (espín arriba) o en cruz (espín abajo) cuando se vuelque y se mida. Esta puerta H es extremadamente útil para realizar el primer cálculo de cualquier programa cuántico, ya que transforma los qubits preconfigurados, o inicializados, en su estado natural de fluidez para poder aprovechar todos sus poderes cuánticos.
Otras puertas cuánticas
Hay otras puertas cuánticas con las que seguramente te encontrarás. Muchas de ellas operan con varios qubits a la vez, dando lugar a matrices de 4×4 o incluso 8×8 con elementos de números complejos. Esto es bastante complicado si no se tiene un buen conocimiento de las matrices. Así que te ahorraré los detalles.
Las principales puertas con las que querrás estar familiarizado son las que cubrimos y que se muestran en el gráfico de abajo:
Deberías saber que existen otras puertas, así que aquí tienes una lista rápida de algunas de las otras puertas cuánticas más utilizadas, sólo para que te hagas una idea de la jerga:
- Puerta de ToffoliPuerta de Fredkin
- Puerta de Deutsch
- Puerta de intercambio (y raíz cuadrada de la puerta de intercambio)
- Raíz cuadrada de la puerta NOT
- Puerta NOT controlada (C-NOT) y otras puertas controladas
Hay muchas más. Pero no dejes que los números te engañen. Al igual que se puede realizar cualquier cálculo clásico con una combinación de puertas NOT + OR = NOR o puertas AND + NOT= NAND, se puede reducir la lista de puertas cuánticas a un simple conjunto de puertas cuánticas universales. Pero dejaremos esa hazaña para otro día.
Mirando al futuro a través de la puerta cuántica
Como señala un reciente artículo de la revista Quanta, los ordenadores cuánticos de 2018 no están del todo preparados para el prime time. Antes de que puedan enfrentarse a los ordenadores clásicos con miles de millones de puertas lógicas, tendrán que enfrentarse a algunos de sus propios demonios. El más mortífero es probablemente el demonio de la decoherencia. Ahora mismo, la decoherencia cuántica destruirá su computación cuántica en sólo «unos pocos microsegundos». Sin embargo, cuanto más rápido realicen sus operaciones las puertas cuánticas, más probabilidades tendrá su algoritmo cuántico de vencer al demonio de la decoherencia hasta la meta, y más durará la carrera. Además de la velocidad, otro factor importante es el número de operaciones realizadas por las puertas cuánticas para completar un cálculo. Esto se conoce como la profundidad de un cálculo. Así que otra de las búsquedas actuales es la de profundizar en el campo de juego cuántico. Según esta lógica, a medida que el ordenador cuántico, que evoluciona rápidamente, se hace más rápido, sus cálculos son más profundos y la cuenta atrás hasta la descoherencia es más larga, el ordenador clásico acabará enfrentándose a un formidable contrincante, si no sucesor, en un futuro (muy posiblemente) no muy lejano.
Si te ha gustado este artículo me haría mucha ilusión que le dieras al botón de aplaudir 🙂 o que lo compartieras con tus amigos curiosos. Tengo muchos más como este en mi blog personal (jasonroell.com) o puedes suscribirte a mi perfil en Medium y recibir todos mis artículos tan pronto como los escriba. (¡¿Qué increíble?!)
De todas formas, gracias de nuevo por leer y que tengas un buen día
.