n artículo como éste quizás debe empezar diciendo que los ordenadores cuánticos no son sólo ciencia ficción; ya se han construido algunos prototipos experimentales y funcionan, aunque de momento su capacidad es minúscula comparada con la de un ordenador convencional.
Hoy en día tendemos a identificar los ordenadores con chips de silicio, una tecnología que tiene unas ventajas indiscutibles. Pero a lo largo de la historia se han hecho cálculos usando ingenios muy diferentes que funcionaban con mecanismos electromecánicos, luz, o moléculas de ADN, por no citar una larga lista de dispositivos intencionadamente raros. Un ordenador cuántico es un aparato que hace cálculos de tal forma que son importantes los estados cuánticos de sus registros (o sus memorias, para entendernos).
La ventaja de los ordenadores cuánticos es que pueden usar un único dispositivo, un único "circuito", para efectuar simultáneamente un número astronómico de operaciones. Este número es ilimitado en teoría, pero en la práctica las cosas son más complicadas.
Para entender cómo funciona todo esto tenemos que saber un poquito de física cuántica. Afortunadamente, si no queremos entrar en detalles, nos bastará con recordar un único experimento famoso.
El gato de Schrödinger
Todos hemos oído decir que la física cuántica es muy rara, y lo aceptamos en abstracto. Pero si nos dicen que un átomo puede girar a la vez a la derecha y a la izquierda nos quedamos un poco fríos; la reacción típica es pensar "bueno, ¿y qué?" En 1935, Erwin Schrödinger decidió echarle un poco de dramatismo al asunto para llamarle la atención a la gente, y sugirió el siguiente experimento mental involucrando un gato. Después este experimento se ha podido llevar a cabo, pero usando átomos en vez de gatos, claro.
Para realizar el experimento, primero tendríamos que construir una jaula para un gato que lo aislase completamente del exterior. Esto es imposible; por ejemplo, si al gato le diese por ponerse a saltar, la jaula debería absorber todas las vibraciones y todo el ruido hasta el punto de que fuesen indetectables desde el exterior. Una de las razones por la que el experimento se ha podido llevar a cabo con átomos es porque su comportamiento es mucho más predecible que el de un gato.
Dentro de la jaula instalamos un curioso dispositivo. Estará funcionando durante una hora, y si durante este tiempo se produce una desintegración en una muestra de materia radiactiva, este dispositivo lo detectará y romperá un frasco de gas venenoso que matará al gato. La muestra radiactiva está escogida de forma que la probabilidad de que esto ocurra es el 50%. Lo importante aquí es que es imposible predecir si se producirá o no una desintegración (por la desigualdad de Bell); dado que la jaula está perfectamente aislada del exterior, todas las "causas primeras" que rigen el sistema están encerradas en la jaula y no se pueden conocer desde fuera. En cierto sentido, el interior de la caja es un "universo aislado".
Bien, metemos al gato en la jaula, la cerramos, activamos el dispositivo, y esperamos esa hora. Entonces nos preguntamos si el gato está vivo o muerto.
La sorprendente respuesta que nos da la física cuántica es que el gato no estará ni vivo ni muerto hasta que abramos la caja y le observemos; mientras tanto, está en un estado que es realmente diferente a "vivo" y realmente diferente a "muerto".
El problema no es que no sepamos si está vivo o muerto; es que literalmente ni está vivo ni está muerto. Está en una situación diferente. A veces se dice que está vivo y muerto a la vez. Quizás sea más correcto decir que la función de onda del gato es la superposición de dos estados distintos: en uno de estos estados se ha producido una desintegración y el gato está muerto, y en el otro estado no se producido ninguna desintegración y el gato está vivo.
Al abrir la caja, la probabilidad de encontrar al gato vivo es del 50%. Una vez que se ha observado el gato, entonces está o bien definitivamente vivo o bien definitivamente muerto; toda la rareza ha desaparecido de repente.
Esto es muy raro, porque ¿cómo "sabe" el gato que ha sido observado? Hay muchas formas de interpretar esto, pero nosotros no entraremos en esos detalles. Digamos tan sólo que el experimento se ha hecho varias veces y este aparente absurdo ocurre. Uno de los últimos experimentos, realizado en junio de 2000 por Friedman, consistió en aplicar un flujo magnético a un anillo superconductor (un cable, vaya). En este caso la superposición de estados se demostró porque se formó una corriente eléctrica que circulaba en ambos sentidos dentro del anillo, algo que es normalmente imposible. Esto se explica porque en realidad el estado del anillo era la superposición de dos estados; en uno de ellos la corriente giraba en un sentido, y en el otro giraba en sentido contrario. A partir del momento en que se midió (observó) la corriente, el squid volvió a comportarse como siempre, con la corriente circulando en un único sentido que parecía escogido aleatoriamente. Lo más novedoso de este experimento es que el anillo es más pequeño que un gato, pero no es microscópico; la corriente estuvo formada por unos mil millones de electrones, y el anillo estaba formado por trillones de átomos. Se pueden encontrar más detalles
haciendo click aquí o aquí.
Lo importante, insistimos, es que el anillo se estaba comportando de una forma diferente a como se comportaría si tuviese la corriente girando en un sentido pero nosotros no supiésemos cuál. Estaba literalmente en una situación diferente a tener una corriente girando a la derecha y diferente a tener una corriente girando a la izquierda.
Cómo funciona un ordenador cuántico
En un ordenador tradicional la información se guarda y procesa en bits, que pueden valer 1 o 0. Lo importante es que un bit o bien vale 1 o bien vale 0, estas son todas las posibilidades. En un ordenador cuántico la información se guarda y se procesa en qubits (del inglés quantum bits). Un qubit es un bit que se encuentra en una superposición de estados, de forma que, entre comillas, "puede valer 1 y 0 a la vez". Dicho con otras palabras, un bit es a un gato lo que un qubit es al gato de Schrödinger antes de abrir la caja.
En un ordenador tradicional los bits se representan con voltajes; por ejemplo, un chip puede estar diseñado para que todo voltaje entre 0 y 2 voltios represente un 0, y entre 4 y 6 voltios represente un 1. Los bits se guardan en memorias formadas por circuitos diseñados para mantener estables dos voltajes, digamos 1 y 5 voltios, de forma que puedan "recordar" ceros y unos. Los bits se copian "mandando voltajes" por cables. Se opera con los bits en unos circuitos llamados puertas lógicas. Los detalles de exactamente cómo funcionan todas estas cosas no son demasiado importantes; en los años 40 se usaban válvulas de vacío, luego vinieron los transistores, los circuitos integrados y los microchips, y sin embargo los ordenadores no cambiaron esencialmente.
Los ordenadores cuánticos tienen sus propias formas de representar, guardar, copiar y operar qubits. Igual que ocurre con los bits, la forma exacta en que hagan estas cosas no es demasiado importante, y sería absurdo intentar adivinar ahora qué tecnologías se usarán en el futuro. Pero para concretar ideas puede ser útil comentar algo sobre cómo se ha hecho esto en los ordenadores cuánticos construidos hasta hoy. En algunos casos se han usado iones atrapados en campos eléctricos dentro de cámaras de vacío a temperaturas bajísimas; estos iones se pueden manipular con láseres. En otros casos, cada qubit se ha representado con el spin de un electrón atrapado en un pozo cuántico, de forma que si "giraba" en un sentido representaba un 1 y si giraba en el sentido contrario representaba un 0. En estos casos el valor el qubit se puede manipular con campos magnéticos. Se opera con los qubits en las puertas cuánticas, cuyo funcionamiento tiende a ser muy complicado de explicar.
En cualquier caso, notamos que los qubits se guardan en elementos muy pequeños (átomos o electrones) y para manipularlos hace falta una maquinaria muy grande que está controlada por ordenadores tradicionales.
Quizás convenga aclarar que un nanoordenador es (o será, mejor dicho) un ordenador construido con piezas extremadamente pequeñas, del tamaño de una molécula. Es de esperar que en los nanoordenadores serán importantes los efectos cuánticos, pero en principio ni los ordenadores cuánticos tienen que ser nanoordenadores, ni los nanoordenadores tienen que ser cuánticos.
Hay dos diferencias importantes entre un ordenador cuántico y uno clásico. La primera está en que al operar con qubits se pueden hacer muchas operaciones a la vez. Por ejemplo, supongamos que en un ordenador cuántico tenemos dos registros de 8 qubits; el primero vale 3 y 5 y el segundo vale 100 y 200 (en rigor tendríamos que decir que cada registro está en una superposición de dos estados en vez de tener ambos valores, pero vayamos abreviando). Bueno, pues podríamos sumar estos dos registros, de la misma forma en que los ordenadores han hecho sumas toda la vida, pero el resultado sería una superposición de cuatro estados con valores 103, 105, 203 y 205. Con un único "circuito" y con una única operación podemos hacer simultáneamente cantidades enormes de sumas.
La segunda diferencia es que un ordenador cuántico tiene una operación nueva: observar un registro. Aquí "observar" es lo mismo que se hace al abrir la caja del gato de Schrödinger y ver si está vivo o muerto. En el caso de la operación anterior, si observásemos la suma, veríamos que su valor es alguno de los indicados, escogido al azar con las probabilidades imaginables; por ejemplo, la probabilidad de que al observar la suma viésemos 103 sería la probabilidad de que al observar el primer sumando viésemos 3 multiplicada por la probabilidad de que al observar el segundo sumando viésemos 100.
Una aplicación: factorización de números enteros
Los ordenadores cuánticos no sólo son máquinas raras, sino que también se programan de forma rara. Un ejemplo concreto a veces dice más que muchas abstraciones, así que describiremos muy vagamente, sin entrar en detalles matemáticos, el algoritmo de Shor para factorizar números enteros, un problema del que ya hablamos en el número 1 de Babab.
Aquellos que no quieran saber nada de números, pueden saltarse un par de páginas hasta la sección "otras aplicaciones".
Recordemos que el problema de factorizar un número consiste en escribirlo como producto de números primos; por ejemplo, factorizar 35 consiste en "descubrir" que 35=5x7.
Para factorizar un número en un ordenador cuántico necesitaremos dos registros (dos números, para entendernos) con un número suficientemente grande de qubits. Cuantos más qubits tenga un registro, más grandes los números que se pueden guardar en él, y nosotros queremos factorizar números grandes, así que nuestros registros necesitan muchos qubits, digamos 1.000. En realidad ya la hemos fastidiado, porque hoy en día no existe ningún ordenador cuántico que tenga ni siquiera diez qubits, pero sigamos.
Empezamos situando el primer registro en un estado tal que si lo observásemos podríamos ver cualquier número que quepa en él. Esto es fácil; basta poner todos sus qubits a 1 con probabilidad 50% y a 0 con probabilidad 50%. En estos momentos el primer registro podría valer si lo observásemos 0, 1, 2, 3, 4, ... hasta un número muy grande.
En otras palabras, el estado del primer registro es la superposición de un número enorme de estados; uno de estos estados consiste en que el primer registro valga 1, otro consiste en que valga 2, ...
Entonces hacemos cierta operación (no entramos a discutir cuál) con este primer registro y guardamos el resultado en el segundo registro. A cada valor del primer registro le va a corresponder un valor del segundo registro; como el primer registro puede tener un montón de valores, también el segundo tendrá montones de posibles valores. Aquí es donde radica la fuerza bruta del ordenador cuántico: si el primer registro tuviese mil qubits de longitud, entonces al hacer esta operación habríamos hecho el equivalente a 2 elevado a la potencia mil operaciones individuales simultáneamente, un número más grande que el de partículas en el universo.
Imaginemos que tras hacer esto el segundo registro puede valer 2, 6, 7, 13, 17, ...
Ahora observamos el segundo registro; es decir, lo mandamos fuera de la "caja" donde están "encerrados" los qubits para que interaccione con el mundo exterior. Por decir algo, mandamos este registro a una impresora y entonces tenemos un número escrito en un trozo de papel, digamos 7. De esta forma el segundo registro pasa a tener un valor concreto de entre todos sus posibles valores. Es lo mismo que pasaba con el gato de Schrödinger, antes de abrir la caja está en una superposición de estados vivo y muerto, pero una vez que se le observa pasa a estar o bien vivo o bien muerto. En el caso del registro, pues igual: adopta uno y sólo uno de los posibles valores que podría adoptar.
Bien, pues resulta que el primer registro también ha cambiado sin que nosotros hayamos hecho nada con él, simplemente porque hemos mandado fuera el segundo.
Volvamos a pensar en el gato de Schrödinger. Antes de abrir la caja, no sólo el gato está en una superposición de estados, sino también la muestra radiactiva: podría haber sufrido una desintegración, o varias, o ninguna. Su estado es la superposición de muchos estados: que no haya habido ninguna desintegración, que se haya desintegrado este átomo, que se haya desintegrado ese otro átomo, que se hayan desintegrado aquellos dos átomos de allá... Cuando abrimos la caja y observamos al gato (efecto), también hacemos una observación indirecta y parcial sobre la muestra radiactiva (causa): si el gato está muerto, entonces se ha desintegrado por lo menos un átomo, pero ojo, no sabemos qué átomo o átomos se desintegraron. Para averiguarlo todo y saber también qué átomos se han desintegrado, tendríamos que observar la muestra radiactiva. Si lo que hacemos es observar al gato (efecto), pero no observamos la muestra radiactiva (causa), entonces sólo condicionamos un poquito la muestra; concretamente, si el gato está muerto, entonces los posibles estados de la muestra quedan restringidos a aquellos en los que ha habido por lo menos una desintegración.
Con el método de Shor estamos haciendo algo parecido; observamos el segundo registro (el efecto), pero no el primero (la causa), de forma que restringimos de una forma muy peculiar los valores que podrá adoptar el primer registro cuando sea observado.
El resto del método de Shor es demasiado matemático y no nos interesa; digamos simplemente que se resuelve el problema a partir de esos valores tan peculiares que son posibles para el primer registro. Los interesados en los detalles matemáticos pueden consultar esta página.
Todo esto suena muy raro, es cierto. Pero en 2001 ya se consiguió factorizar 15=3x5 usando una variación de este método en un ordenador cuántico de 5 qubits. Se estima que un ordenador actual tardaría varios miles de millones de años en factorizar un número de 1.000 cifras, mientras que un ordenador cuántico con 10.000 qubits lo haría en ¡20 minutos!
Otras aplicaciones
Los ordenadores cuánticos no servirían sólo para echar cuentas.
Por ejemplo, servirán para hacer transmisiones absolutamente seguras. Esto ya se ha comprobado y que posiblemente estará pronto en la calle. Aclaremos que "transmisión absolutamente segura" no implica seguridad absoluta; el que una transmisión no se pueda interceptar no quiere decir que el ordenador donde se guarde el mensaje ya recibido no pueda ser robado, por decir algo.
Los ordenadores cuánticos también se podrán usar para hacer una cosa llamada teleportación. No, no pensemos en Star Trek; esto consistiría tan sólo en leer el estado cuántico de un átomo y copiarlo en otro átomo situado a una distancia grande.
A título de curiosidad, los ordenadores cuánticos podrían parecer mágicos en algunos sentidos. Por ejemplo, se les podría poner a buscar demostraciones de algunos teoremas matemáticos, y posiblemente las encontrarían, solo que serían tan largas que nadie podría comprobarlas. Es posible que para imprimirlas hiciesen falta volúmenes de papel más grandes que el universo. Entonces, uno de estos ordenadores podría decirnos que tal o cual teorema es cierto, y nosotros nos lo tendríamos que creer sin ver la prueba.
Mencionemos de pasada que también se podrían usar otros efectos cuánticos, como la superconductividad, para acelerar el funcionamiento de ordenadores, ya sean cuánticos o no. Esto es otra historia que no tiene mucho que ver con lo que estamos hablando. De hecho, todos los ordenadores actuales funcionan usando en sus transistores el efecto túnel, que es un fenómeno cuántico, y esto no convierte a nuestros ordenadores en cuánticos.
Un poco de escepticismo
Como hemos visto, los ordenadores cuánticos funcionan y en principio son una cosa estupenda. ¿Pero cuáles son sus límites? Es pronto para saberlo, pero hay quienes creen que los ordenadores cuánticos no llegarán a ser mucho más potentes que los ordenadores convencionales.
La mayor limitación hoy por hoy parece ser el número de qubits que puede tener un ordenador cuántico. En teoría no hay nada que limite esto, pero en la práctica está resultando muy difícil llegar a tener una memoria tan pequeña como diez qubits. La razón es que todos los qubits han de estar "encerrados" en la misma "jaula", para estar aislados del exterior pero poder relacionarse entre sí. Pero en las jaulas de las que disponemos hoy en día no se pueden meter muchas cosas sin que empiecen a interferirse mutuamente.
Pensemos por un momento en lo que podríamos hacer con un ordenador clásico con diez bits de memoria: podríamos usarlo para guardar un número de tres cifras, solo que no podríamos hacer ninguna operación con él porque no tendríamos dónde guardar el resultado. Sería ridículo. Con los ordenadores cuánticos de hoy día pasa lo mismo, no sirven más que para hacer experimentos y aprender a hacer otros más grandes.
Para que un ordenador cuántico llegase a tener la capacidad de un mainframe ordinario, necesitaría tener unos 1.000 qubits. Harían falta bastantes más antes de que le resultase interesante a la CIA para descifrar códigos.
Otro problema serio es que hemos dado por supuesto que los qubits se pueden copiar y manipular, y hemos dicho que los detalles no son importantes, pero es que esto no está tan claro. Imaginemos que tenemos un qubit tal que si lo observásemos valdría 0 con probabilidad 50% y 1 con probabilidad 50%. Al copiar este qubit para, por ejemplo, multiplicarlo por otro en una puerta cuántica, es posible introducir un pequeño error de forma que el qubit copiado tenga probabilidades 49 y 51. Si los errores se van acumulando, llegará un momento en que los resultados no serán fiables. Se han propuesto mecanismos para corregir esto, pero siguen habiendo reservas.
Esto no es un problema con los bits clásicos, porque sólo pueden valer o 0 o 1. Si una puerta lógica se encuentra en una de sus entradas con 4.9 voltios en vez de 5.0, sabe perfectamente cuál debe ser el resultado, y al producir 5 voltios en su salida ha corregido automáticamente el error anterior. Esto no es posible con qubits porque en principio cualquier probabilidad es posible.
Recordemos también que hace falta que el ordenador cuántico esté completamente aislado del exterior. Pero esto no es posible, vivimos en un mundo lleno de interferencias incontrolables, como los rayos cósmicos, que pueden alterar los estados de los qubits. Esto podría llegar a ser un problema al hacer cálculos largos.
Finalmente, otra razón para desconfiar de todo esto es recordar lo que ha pasado con otras formas de computación que parecía que se iban a comer al silicio. Hace unos años daba la impresión de que los ordenadores ópticos iban a destronar a los electrónicos, y sin embargo todo avance en fotónica se ha visto eclipsado por los correspondientes en electrónica. Esto no quiere decir ni mucho menos que la investigación sobre ordenadores ópticos haya sido inútil; ahí tenemos los DVD y los CDROM reescribibles. Pero cada día parece más difícil que los ordenadores del futuro estén basados prioritariamente en la luz. Otra desaparición exótica: de la computación con ADN no se ha vuelto a hablar.
Otro detalle es que los ordenadores cuánticos no serán más rápidos que los convencionales en todas las tareas. Su ventaja es que pueden usar un único dispositivo para efectuar simultáneamente un número astronómico de operaciones. Esto es muy útil para algunos tipos de problemas, pero no para otros; un ordenador cuántico será más rápido que no de silicio a la hora de hacer búsquedas en bases de datos o de jugar al ajedrez, por ejemplo, pero no para hacer cálculos secuenciales o como servidor en la web.
Y sin embargo no deberíamos ser demasiado pesimistas; la mayor parte de los expertos espera que los primeros ordenadores cuánticos realmente prácticos aparezcan dentro de unos veinte años. Quién sabe; viendo el ritmo al que mejoran los ordenadores de silicio, ¿quién se atrevería a decir que esto es imposible? Fijémonos en la velocidad a la que se ha desarrollado la historia de la computación cuántica. En 1982 Feyman observó que a los ordenadores convencionales les costaba demasiado tiempo hacer cierto tipo de simulaciones de sistemas cuánticos, pero que esos mismos cálculos se podrían hacer muy rápidamente con un simulador que manipulase directamente estados cuánticos. Después Leggett propuso unas circunstancias en las que un objeto macroscópico podía tener un comportamiento cuántico si se encontraba convenientemente aislado de su entorno. Deutsch describió por primera vez un ordenador cuántico en 1985. En 1994 Shor publicó su famoso método de factorización de enteros, y con ello demostró que existía al menos un problema realmente interesante que sólo se podía resolver rápidamente con un ordenador cuántico. De repente hubo gente con dinero interesada, y empezó la carrera. Tan sólo cuatro años más tarde, en 1998, IBM construía un ordenador cuántico con 3 qubits.
De momento, la computación cuántica es un nuevo campo de la ciencia que tiene profundas implicaciones sobre nuestra forma de ver el mundo en que vivimos, y que está revolucionando otras áreas como la teoría de la información y la criptografía. Dentro de poco los estudiantes de informática tendrán que estudiar física cuántica, los filósofos empezarán a darle vueltas al hecho de que la naturaleza del universo es computacional, y antes de que nos demos cuenta todo esto nos sonará a viejo y volveremos a pensar que ya se ha inventado todo.