Anda di halaman 1dari 17

Computacin Cuntica: una revolucin en el tratamiento de la

informacin
Quantum Computation: a revolution in handling information
Pedro J. Salas Peralta
Dpto. Tecnologas Especiales Aplicadas a la Telecomunicacin
ngel L. Sanz Senz
Dpto. Fsica Aplicada a las Tecnologas de la Informacin
Universidad Politcnica de Madrid
Ciudad Universitaria s/n, 28040 Madrid

Abstract
In this work we review the main contributions to a new interdisciplinary field
emerging around the border between Quantum Mechanics and Information Theory. The
marriage of these two fields is leading to a new, and astonishing, non-classical way of
handling information. The development of a new quantum technology will enable us to
have a quantum computer in the next future.
PACS: 03.67.Lx

1. Introduccin
El concepto de ordenador se pierde en la historia del ser humano. Los primeros
fueron construidos con propsitos muy concretos y eran poco verstiles. Un ejemplo son
los monumentos megalticos, como las estructuras de Stonehenge, en Inglaterra, que
servan para predecir eventos astronmicos. Evidentemente, si se hubiera deseado utilizar
tales construcciones para otros cometidos habra sido necesario cambiar las piedras de
sitio o incluso de tamao. El proceso de programacin sera realmente difcil.
A lo largo de la historia, las mquinas de clculo se fueron complicando a la vez
que se iban volviendo ms verstiles, pasando desde el baco hasta las mquinas
calculadoras de Pascal o Leibnitz. Sin embargo, la escasa utilidad de tales mquinas para
la vida diaria de la poca las releg al olvido durante cien aos.
A medida que el tamao de los ordenadores ha ido disminuyendo, ha aumentado
su velocidad de funcionamiento. La tecnologa de los ordenadores ha evolucionado
siguiendo un proceso de miniaturizacin que lleva desde los rels, vlvulas y transistores
hasta los circuitos integrados... Parece que el prximo nivel ser el molecular. Sin
embargo, llegados a este nivel no slo hay que contar con la Mecnica Cuntica (MC)
para conseguir un funcionamiento correcto de los dispositivos, sino que adems participa
activamente en el comportamiento global. En la actualidad se est aprendiendo a captar y
aprovechar las ventajas que se derivan de considerar a la informacin como un ente
cuntico, perspectiva sta que abre toda una serie de nuevas posibilidades capaces de
producir vrtigo al propio Bohr.

2. Computacin clsica
Cabe, quizs, situar el origen moderno de la teora de la computacin en la
respuesta a un problema propuesto por David Hilbert en 1900. Hilbert plante la
necesidad de preguntarse no sobre la veracidad de ciertas proposiciones matemticas,
sino acerca de la capacidad real que tienen las matemticas para responder a tales
cuestiones. El inters por las soluciones que aportan las matemticas a determinadas
sentencias se desplaz hacia un inters por demostrar la posibilidad de dar respuestas.
Turing se enfrent a este desafo y empez a pensar en una posible solucin
mecnica del problema. Introdujo el concepto de Mquina de Turing (MT), dispositivo
formado por un cabezal de lectura/escritura y una cinta ilimitada. Esta MT puede
adquirir un conjunto finito de estados internos Qi que le indican qu hacer a
continuacin. Cuando se alcanza un determinado estado final Qf, la MT se detiene y
escribe el resultado, habitualmente en forma de un s o un no. El funcionamiento es
simple: el cabezal comienza en un determinado estado interno inicial, lee un smbolo en la
primera casilla y, dependiendo del estado concreto y del smbolo ledo, ejecuta una
accin: modifica el smbolo o lo deja igual. A continuacin el cabezal se mueve a otra
casilla.
El inters de la MT es que permite estudiar la computacin desde dos puntos de
vista:
a) Posibilidad de computar ciertas funciones.
Las MT realizan clculos mecnicos que ejecutan un algoritmo o procedimiento
efectivo. Podemos preguntarnos si el concepto de mquina de Turing engloba a todas las
operaciones matemticas representadas por algoritmos. La respuesta es la tesis de
Church-Turing: cualquier funcin que sea computable, se puede computar mediante
una mquina de Turing constituida por un dispositivo fsico "razonable". Las MT no
aspiran llegar a ser realmente construidas, tan slo pretenden captar lo esencial del
comportamiento de un ordenador. Dado que una determinada MT puede ser descrita por
completo especificando los estados internos {Qi} y los datos de entrada X, es posible
considerar al conjunto {Qi, X} como los datos de otra MT que simulara a la primera.
Estas MT se denominan universales, ya que simulan el funcionamiento de cualquier otra.
Las MT no tienen que ser necesariamente deterministas (MTD), realizando la
computacin a travs de un camino concreto. Existe la posibilidad de que, partiendo de
una determinada configuracin de la MT, la siguiente configuracin pueda alcanzarse

C0
C01

t=0
t1
t2

C012
Figura 1: Mquina de Turing clsica
slo con una cierta probabilidad. Estamos ahora ante una Mquina de Turing
Probabilista (MTP). Su funcionamiento puede representarse mediante un esquema en
rbol (figura 1). La computacin sigue una nica ruta (que une las configuraciones C0,
C01 y C012, camino mostrado con flechas) que se produce con una cierta probabilidad

igual al producto de las probabilidades de los tramos involucrados. El resultado de estas


MTP puede no ser correcto, slo lo es con cierta probabilidad, aunque el procedimiento
podra llegar a ser ms efectivo que en el caso determinista. Adems, se puede demostrar
que todo lo que es computable mediante una MTP tambin lo es mediante una MTD.
Desgraciadamente, a la pregunta planteada por Hilbert: existe un mtodo
general que permita averiguar si una proposicin es verdadera o falsa?, las MT dan una
respuesta bien clara: no, no existe tal mtodo. Es imposible predecir si una determinada
MT se detendr o no; en otras palabras, si podr o no encontrar una solucin al
problema planteado (Problema de la Parada).
b) Eficiencia
El segundo aspecto interesante de las MT es que permiten estudiar la eficiencia
de los algoritmos. La eficiencia se establece clasificando los algoritmos en determinadas
Clases de Complejidad (clsica) en funcin de cmo escalan los recursos de un clculo
con el tamao de los datos. La medida de los recursos puede hacerse usando el nmero
de pasos temporales, la cantidad de memoria o algn otro parmetro. Por ejemplo, si el
tamao de los datos se mide a travs de los bits necesarios para su representacin (L),
los algoritmos se pueden clasificar en polinmicos (o de clase P), si el nmero de pasos
temporales (p) escala como O(polinomio de L), y en no polinmicos (o de clase NP), si
escalan como p O(exponencial de L). Esta forma de clasificacin no depende de la
velocidad real de los ordenadores actuales (siempre cambiante). Durante mucho tiempo
se pens que este tipo de clasificacin no tena ninguna relacin con el tratamiento fsico
de la informacin. De ah se deduce su importancia, si bien la situacin habra de
cambiar con la computacin cuntica.
Por dar un ejemplo, existen algoritmos como la multiplicacin que escala como p
2
O(L ) (clase P), mientras que la factorizacin (clsica) pertenece a la clase NP. El
mejor algoritmo clsico para factorizar es el de criba cuadrada, y escala como p
exp(2L1/3(logL)2/3). Los cdigos criptogrficos actuales se basan precisamente en este
tipo de funciones de un solo sentido (fcil multiplicacin y difcil factorizacin).
El modelo de la mquina de Turing es una forma de describir un ordenador en
abstracto. Otra forma de hacerlo es construir un circuito mediante elementos (puertas)
que realicen operaciones lgicas sobre un conjunto de variables booleanas. Ambas
aproximaciones son polinmicamente equivalentes. Adems, de la misma forma que
existe una MT Universal (que permite simular cualquier otra), existe un conjunto de
puertas clsicas que son universales. Por ejemplo, la puerta NAND por s sola es
universal. Utilizando esta puerta se puede reproducir el comportamiento de cualquier
MT, con recursos polinmicos.
3. Lgica clsica reversible.
Hacia el inicio de la dcada de los 60, Rolf Landauer (Bennett y Landauer 1985)
comenz a preguntarse si las leyes fsicas impondran limitaciones al proceso de
cmputo. En concreto se interes sobre el origen del calor disipado por los ordenadores,
y si este calor era algo inherente a las leyes de la fsica o se deba a la falta de eficiencia
de la tecnologa disponible. La cuestin parece realmente interesante si recordamos que
uno de los problemas de los ordenadores de alta velocidad es la eliminacin del calor
producido durante su funcionamiento. Estas reflexiones iban a ser el germen de muchas
de las actuales ideas sobre ordenadores cunticos.
La pregunta concreta era: se puede idear una puerta que funcione de forma
reversible y, por tanto, que no disipe energa? La respuesta no estaba nada clara, pues la

lgica clsica se basa en puertas no reversibles, aquellas que no permiten obtener los bits
de partida despus de realizada la operacin. Esto es lo que sucede, por ejemplo con la
puerta NAND.
La idea de computacin clsica reversible la introdujo matemticamente Yves
Lecerf en 1963. Bennett la desarroll en 1973 demostrando que, desde un punto de
vista terico, es posible la existencia de una mquina de Turing reversible. En la
representacin de circuitos se plantearon algunas puertas clsicas reversibles, como es la
puerta CNOT (control-not). Esta puerta acta sobre pares de bits: realiza una operacin
NOT sobre el segundo bit slo si el primero es 1. Se puede obtener una nica puerta
universal reversible anloga a la NAND para la lgica irreversible: se trata de la puerta
de Toffoli (toma el nombre de su creador); no es mas que una "control-control-NOT"
(CCNOT). Esta puerta no es la nica; as por ejemplo Fredkin ide otra, la que lleva su
nombre. Acta sobre tres bits, de forma que intercambia el segundo con el tercero si el
primero es 1; es un control-swap".
La existencia de mquinas de Turing reversibles nos indica que para efectuar un
cmputo concreto no existe una cantidad mnima de energa que necesariamente deba
ponerse en juego.
La teora clsica de la computacin habitualmente no haca referencia alguna a la
fsica del dispositivo, al suponer que los fundamentos de la teora son independientes de
la realizacin fsica. Hubieron de pasar 20 aos hasta que Deutsch, Feynman y otros
pusieran de manifiesto que esta idea es falsa, mostrando que existe una conexin entre
las leyes de la fsica y la informacin, en concreto la computacin. A partir de este
momento iba a desarrollarse una ms de tantas uniones entre distintas ideas que aparecen
en la historia de la fsica: computacin y MC. De esta unin nace la Computacin
Cuntica.
De forma general podemos decir que la computacin es la creacin de conjuntos
de smbolos (resultados) a partir de ciertos conjuntos de smbolos iniciales (o datos). Si
interpretamos los smbolos como objetos fsicos, la computacin corresponde a la
evolucin de los estados de los sistemas. Si la evolucin es cuntica, tenemos la
Computacin Cuntica (Williams y Clearwater 1997).
4. Computacin cuntica
Ya que el sentido comn deja de ser correcto cuando descendemos a los reductos
cunticos, bien podra suceder que el paradigma de la MT no fuera todo lo independiente
de la fsica que desebamos. La pregunta surgi con cierta timidez: seran las MT
basadas en la MC equivalentes a las clsicas? Dado que la MC permita nuevas formas de
evolucin a travs de superposiciones coherentes de estados, la respuesta se adivinaba
negativa.
La posibilidad de que una mquina de Turing cuntica pudiera hacer algo
genuinamente cuntico fue planteada por Richard Feynman en 1982 (Feynman 1982,
Hey y Allen 1996) al demostrar que ninguna mquina de Turing clsica (probabilista o
no) podra simular algunos comportamientos cunticos sin incurrir en una ralentizacin
exponencial; en cambio una mquina de Turing cuntica s podra hacerlo. Esta diferencia
de comportamiento surge de que la dimensin del espacio de Hilbert accesible al sistema
aumenta de forma exponencial (2n) con el nmero de amplitudes (n) a manejar y guardar.
Feynman describi un simulador cuntico universal que simulaba el comportamiento de
cualquier sistema fsico finito. Desafortunadamente, Feynman no dise este simulador y
su idea tuvo poco impacto

El siguiente paso se dio en 1985, cuando David Deutsch describi la primera


mquina de Turing cuntica (MTC) (Deutsch 1985). Esta MTC poda realizar tareas que
una clsica no poda. Los procesos totales del ordenador cuntico deben ser unitarios y
por tanto no disipativos y usa una lgica reversible. Las MTC dieron lugar a una
modificacin de la hiptesis de Church-Turing, en el siguiente sentido: existe (o puede
construirse) un ordenador universal que puede programarse para simular cualquier
sistema fsico finito operando con unos recursos limitados.
Existen dos caractersticas cunticas que proporcionan su potencia a la
computacin cuntica:
1.- Paralelismo:
Esta propiedad surge de la propia representacin de la informacin cuntica. El
fragmento de informacin clsico fundamental es el bit, entendindose como tal un
sistema material que puede adoptar uno de los dos posibles estados distintos que
representan dos valores lgicos (0 y 1 o s y no, verdadero y falso, etc.). Si la
codificacin de la informacin es cuntica, y se hace a travs de dos estados de un
sistema microscpico, ahora tambin es posible un estado del sistema que sea la
superposicin coherente de estos 0 y 1. Ello implica que, por ejemplo, un tomo descrito
por este estado estara en ambos a la vez y no sera ni un 0 ni un 1 clsicos. El nuevo
ordenador cuntico tiene que poder generarlos y trabajar tales estados (figura 2). En este
sentido los ordenadores cunticos sern algo distintos a los clsicos. A un sistema
cuntico |Q> con dos estados lo llamaremos bit cuntico o simplemente qubit
(Shumacher 1995), y vendr representado por el estado general:
Q = a 0 +b1

donde 0> y 1> son los dos estados en los que puede encontrarse el sistema. Los
coeficientes a y b son nmeros complejos; si el qubit est normalizado se cumplir
|a|2+|b|2=1. Notemos que, al no existir restricciones a los posibles valores de los
coeficientes (salvo quizs la condicin de normalizacin del vector de estado), en un solo

+
0 |0>

1 |1>

|Q>=a|0> +b|1>

Figura 2: Bit Cuntico obtenido como superposicin coherente de dos bits


clsicos "0" y "1"

qubit se podra codificar cualquier cantidad de informacin. Ello no plantea problema


conceptual alguno, pues para extraerla necesitaramos medir sobre el estado, lo cual
implicara su colapso (Postulado de Proyeccin) en uno de los dos bits clsicos |0> |1>
haciendo imposible extraer toda la informacin del qubit. Con esta medida slo
podramos extraer un bit clsico de informacin. De la consideracin anterior se deriva

una complicacin adicional a la hora de plantearnos cmo extraer la informacin en los


algoritmos tpicamente cunticos.
La primera potencia de los ordenadores cunticos radica, precisamente, en la
posibilidad de usar este tipo de superposiciones coherentes de qubits para realizar los
clculos. Consideremos que queremos calcular una funcin de la variable x definida por:
f: x {0,1,....2m-1} {0,.1,..., 2n-1}
Un ordenador clsico hara 2m clculos, obteniendo f(0), f(1)...f(2m-1). En un ordenador
cuntico el clculo es ligeramente distinto. Para realizarlo debemos usar dos registros
cunticos: uno para los datos de entrada x |x> Hm (espacio de Hilbert de dimensin
2m) y otro para el resultado f(x) |f(x)>Hn, y la evolucin debe hacerse mediante un
operador unitario Uf que acte sobre el registro cuntico total:
Uf{|x>|0>} = |x>|f(x)>
Inicialmente necesitamos un registro en el estado cero, |0>, donde se va a
colocar el resultado despus de la operacin.
En realidad, podemos hacer algo ms que el clculo uno a uno de los valores de f.
Ya que estamos usando un ordenador cuntico, podemos preparar una superposicin de
todos los registros clsicos en un solo estado |>
=

1
2

[0

+ 1 ] L

1
2

[0

+ 1 ]=

2 m 1

1
2m / 2

x
x =0

(este estado se podra conseguir preparando un estado |0,...,0> de longitud m y aplicando


una puerta de Hadamard (H) a cada qubit, tal como definiremos ms adelante) y realizar
una sola operacin sobre este ket para generar todos los resultados en un solo paso:

1
f = Uf { 0 } = Uf m / 2
2

2 m 1

x =0

1
x 0 = m/2
2

2 m 1

f (x)

x=0

(hemos usado la notacin de x formada por la representacin decimal de las cadenas de


m bits).
Ahora nos encontramos con el problema de cmo extraer la informacin
codificada en el ket |f>. Si medimos sobre este ket obtendremos cualquiera de los
resultados posibles con la misma probabilidad (1/2m), colapsando el estado y obteniendo
un solo resultado de todos los 2m valores. Sin embargo existen otras formas ms sutiles
de obtener informacin acerca de f(x): por ejemplo a travs de alguna propiedad global
como es su periodicidad (se indicar ms adelante).
2.- Interferencia.
El proceso de computacin cuntica podra representarse mediante un diagrama
de rbol donde todas sus ramas (a diferencia del caso clsico) se produciran a la vez y
estaran caracterizadas por nmeros complejos (amplitudes de probabilidad) cuyos
cuadrados nos dan la probabilidad de que, al medir sobre el estado final de la MTC,
obtengamos un cierto estado concreto al final de una rama.
La posibilidad de usar superposiciones coherentes para la representacin de la
informacin permitira que, si una determinada configuracin final de una MTC puede

alcanzarse a travs de dos caminos con amplitudes de probabilidad y -, la


probabilidad final de alcanzar dicha configuracin sea |-|2=0. Es decir, que el resultado
de la computacin cuntica puede surgir de una adecuada interferencia entre los
distintos caminos posibles. De esta forma se pueden codificar varios datos de un
problema, tratarlos de forma simultnea y, provocando su interferencia, hacer que
algunos de ellos tengan una probabilidad grande, mientras que otros desaparezcan.
5. Puertas y circuitos cunticos.
Anlogamente a los ordenadores clsicos, podemos representar la evolucin de
los cunticos mediante circuitos formados por puertas cunticas que realizan operaciones
sobre los qubits. En 1989 Deutsch describi los circuitos cunticos como formados por
puertas cunticas conectadas por hilos, demostrando que exista una puerta cuntica
universal (Deutsch 1989) y reversible anloga a la de Toffoli clsica. Una forma de
obtener puertas cunticas es la cuantizacin de las puertas clsicas, que pasa por
reinterpretar los bits como qubits. El propsito de los hilos es transmitir estados
cunticos de una a otra puerta y su forma depender de las realizaciones tecnolgicas
concretas de los qubits.
Podra pensarse que el funcionamiento de un ordenador cuntico es anlogo a
uno clsico que funcionara con procesadores en paralelo. En este caso, el ordenador
cuntico no tendra ventajas apreciables. No es as, ya que las puertas cunticas realizan
tareas que las clsicas no pueden.
Las puertas cunticas se representan mediante operadores unitarios que actan
sobre los vectores que representan los qubits. Es fcil plantear una puerta NOT cuntica,
que cambiara |0> |1>. Una puerta completamente cuntica es la raz cuadrada de
NOT, que cumple la propiedad de que su cuadrado es una puerta NOT cuntica. La
representacin matricial es:

NOT

1 1 + i 1 i

2 1 i 1 + i

Esta puerta transforma los qubits |0> y |1> en superposiciones coherentes.


Otra puerta tpicamente cuntica es la descrita por la matriz unitaria:
UH

1 1 1

2 1 1

Es la puerta de Hadamard, que aplicada a un qubit genera una rotacin o cambio


de base. Una puerta de gran importancia (en realidad la de mayor importancia) en los
ordenadores cunticos es la versin cuntica de la CNOT clsica. Su representacin
matricial es:

U CNOT

0
=
0

0
1
0
0

0
0
0
1

0
1

qubit de control = |Qc>

|Qc>

qubit imagen = |Qi>

|QiQc>

Figura 3: Representacin esquemtica de la accin de una


puerta CNOT cuntica.

expresada en la base de computacin {|00>,|01>, |10>, |11>}. El qubit |QiQc> es el


resultado de sumar mdulo 2, ambos bits (figura 3). Esta puerta, junto con otras puertas
que afectan a un slo qubit, forman un conjunto universal. De ah su importancia. Con su
ayuda se puede construir un programa cuntico, a travs de un circuito cuntico, junto
con algn tipo de puertas de medida, todos ellos unidos mediante cables. Podemos
ahora decir que la potencia de la computacin cuntica no reside en la rapidez de
aplicacin de las puertas cunticas, sino ms bien en que para realizar la misma tarea
debe usarse un nmero exponencialmente menor de puertas que las necesarias en el caso
clsico.
6. Software cuntico.
De momento no se ha demostrado que un ordenador cuntico pueda hacer cosas
que uno clsico no pudiera hacer con recursos suficientemente grandes. El problema
clsico est encerrado en la frase con recursos suficientemente grandes, que puede ser
la causa de que el proceso de clculo resulte totalmente inviable. El problema consiste en
construir algoritmos que aprovechen las caractersticas cunticas para cambiar la clase
de complejidad de un problema tratado clsicamente. A pesar del esfuerzo dedicado a
obtener algoritmos que aprovechen el comportamiento cuntico, en la actualidad su
nmero es bastante reducido. Para programar con ordenadores cunticos se requieren
tcnicas nuevas. Dos de las ms bsicas son: la extraccin de una propiedad global de
una funcin y los mtodos de amplificacin de las amplitudes para aumentar la
probabilidad de sucesos deseables.
Ya mencionamos antes que, si bien mediante apropiadas combinaciones lineales
es posible manejar un nmero exponencial de estados, ello no supone que esta
informacin est disponible. Como para acceder a esa informacin debemos medir sobre
el estado colapsndolo, la informacin se pierde casi en su totalidad. Para aprovechar los
aspectos cunticos debemos combinar la posibilidad del paralelismo cuntico con la
interferencia: podemos aprovechar la interferencia destructiva para cancelar los trminos
no deseables y la interferencia constructiva para aumentar los trminos deseables. De
esta forma al medir obtendremos resultados deseables con mayor probabilidad.
A continuacin indicamos algunos de los algoritmos cunticos existentes:.

Generacin de nmeros aleatorios.


La necesidad de disponer de secuencias de nmeros aleatorios est ampliamente
extendida en campos como criptografa, algoritmos aleatorios (Monte Carlo),

simulaciones de evolucin fsica de sistemas, etc.. Los ordenadores clsicos slo pueden
calcular funciones, y por tanto cualquier secuencia de nmeros resultante no es
completamente aleatoria.
La MC, sin embargo, est fundamentada en leyes indeterministas. Esta
indeterminacin es de carcter bsico, a diferencia de la imposibilidad de prediccin
clsica que se desprende de una especificacin incompleta de las condiciones iniciales del
problema (caos determinista). Por ejemplo, partiendo de un qubit |0> y aplicando una
puerta de Hadamard, obtenemos el qubit {|0>+|1>}/21/2. Si realizamos una medida,
colapsamos el vector de estado del qubit en los estados |0> o |1> con un 50% de
probabilidad cada uno. Este mtodo podra ser ampliado (por lo menos en principio) a la
generacin de nmeros aleatorios entre 0 y 2N-1, sin mas que preparar una superposicin
de todos los estados de un sistema de N qubits. La medida del vector de estado causara
su colapso aleatorio en uno de sus trminos. Trasladando la notacin binaria a decimal
del qubit, tendramos el nmero aleatorio requerido.
Algoritmo de Deutsch.
El problema de Deutsch-Jozsa (1992) fue el primer ejemplo de problema que
poda resolverse exponencialmente ms rpido en un ordenador cuntico que en una MT
clsica. Consideremos un conjunto de funciones booleanas del tipo f: {0,1} {0,1}; en
concreto hay cuatro de ellas: dos constantes f(0)=f(1)=0 y f(0)=f(1)=1 y otras dos
balanceadas, f(0)=0, f(1)=1 y f(0)=1, f(1)=0. Es el problema que surge si deseamos
averiguar si una moneda es falsa (con dos caras o dos cruces) o autntica (con una cara y
una cruz). No estamos interesados en saber los valores concretos de las funciones, sino
nicamente en una caracterstica global de la funcin: averiguar si la funcin f es
constante o balanceada. Desde un punto de vista clsico tenemos que hacer, al menos,
dos clculos de la funcin para averiguarlo. Sin embargo, la informacin obtenida de si la
funcin es constante o balanceada corresponde a un solo bit, luego deberamos ser
capaces de obtener el resultado en un slo clculo. Mediante un algoritmo cuntico
podemos conseguirlo.
El mtodo sera el siguiente. Preparamos dos estados |0> y |1>, los rotamos con
una transformacin de Hadamard, realizamos el clculo de la funcin mediante una
puerta habitual Uf (dado que f:{0,1}{0,1}, se trata de una control-f):
U f x , y = x, y f (x )

(|0>+|1>)(|0>-|1>) |00>+|10>-|01>-|11> Uf
|0,0 f(0)>+|1,0 f(1)>-|0,1 f(0)>-|1,1 f(1)>
y volvemos a rotar el primer qubit:
|0>{|f(0)>+|f(1)>-|1 f(0)> -|1 f(1)>}+ |1>{|f(0)>-|f(1)>-|1 f(0)>+|1 f(1)>}
Despus de esto, medimos el primer qubit, y si obtenemos |0>, la funcin es constante, y
si obtenemos |1> la funcin es balanceada. El circuito cuntico aparece en la figura 4.
Por tanto con una sola medida hemos conseguido el objetivo. Fue el primer
algoritmo que mostr este comportamiento.

|0>

|1>

|0>, f es constante
|1>, f es balanceada

(|0>-|1>)

Uf

(|0>+|1>)(|0>-|0>)

Figura 4: Circuito cuntico que implementa en algoritmo de


Deutsch.

Periodicidad de una funcin.


Si medimos sobre una superposicin de valores como los indicados anteriormente
en |f>, colapsamos el estado y perdemos el resto de la informacin. Pero, lo mismo que
sucede en un experimento de interferencia, el estado final tiene informacin de todos sus
componentes. Este tipo de superposicin alberga cierta informacin acerca de las
propiedades globales del estado, como es la periodicidad de la funcin. El clculo del
periodo de una funcin es complejo, e involucra a cierta transformacin que se ha
convertido en una herramienta fundamental: la Transformada Discreta de Fourier
Cuntica. Esta TDFC se define como la operacin unitaria y reversible UTDFC en q (0
x<q) dimensiones:
U TDFC x =

1
q

1/ 2

q 1

i 2 kx / q

k =0

Aplicando esta TDFC en un determinado momento del desarrollo del algoritmo, se


consigue un proceso de interferencia por el cual ciertos trminos indeseables de la
superposicin coherente desaparecen, mientras que otros deseables se potencian
(Galindo 2000).
Algoritmo de Shor.
Sabemos que mientras el algoritmo de multiplicacin es muy rpido, el mejor
algoritmo inverso, es decir la factorizacin, es muy lento. Clsicamente este ltimo
pertenece a la clase de complejidad NP de algoritmos no polinmicos. En Agosto de
1999 se consigui factorizar un nmero de 155 cifras y para hallar sus factores fue
necesario el clculo de casi 300 ordenadores y estaciones de trabajo durante unos 7
meses. El crecimiento de los recursos necesarios para la factorizacin es exponencial,
pero sin embargo la cantidad de trminos que podemos mantener en una superposicin
cuntica es tambin exponencial. Esta es la razn de que algunos algoritmos cunticos

puedan transformar problemas de tipo NP (como la factorizacin clsica) en P, es decir,


polinmicos.
Peter Shor (Shor 1994) puso a punto el primer algoritmo de inters prctico
cuando logr plantear un algoritmo eficaz para la factorizacin utilizando los recursos de
un ordenador cuntico. La importancia de esta posibilidad radica en que la dificultad de
la factorizacin es la base de los cdigos criptogrficos (mediante un ordenador
cuntico, romper la clave RSA 2048 sera cuestin de algo ms de media hora) usados
ampliamente en transacciones bancarias o en secretos militares. Romper estos cdigos
significara acceder a una gran cantidad de informacin, al mismo tiempo que destrozara
las claves.
El algoritmo se basa en encontrar el periodo de cierto tipo de funciones
relacionadas con el nmero a factorizar. Desgraciadamente, desde un punto de vista
clsico no hay un algoritmo que lo calcule de forma eficiente. Para calcular el periodo se
usa el algoritmo cuntico indicado anteriormente. El algoritmo de Shor es un hbrido
entre el clculo cuntico del periodo de una funcin y el uso de algoritmos clsicos (en
concreto para calcular el m.c.d.) eficientes. Este algoritmo usa O(L3) (siendo L el
nmero de bits necesarios para representar el nmero) pasos (Beckman et al 1996), lo
que demuestra cmo este algoritmo cuntico es capaz de cambiar la clase de
complejidad clsica de la factorizacin de NP a P.
Hughes ha analizado las previsiones de factorizacin de nmeros, comparando
los resultados de un conjunto de 1000 estaciones de trabajo (con una velocidad mnima
de 100 GHz) con los de un ordenador cuntico. Las previsiones se realizan usando las
leyes de Moore y aparecen en la siguiente tabla:
Nmero de bits

1024

2048

4096

ao 2006

105 aos

5 1015 aos

3 1029 aos

ao 2024

38 aos

1012 aos

7 1025 aos

ao 2042

3 das

3 108 aos

2 1022 aos

En un ordenador cuntico
nmero de qubits

5124

10244

20484

nmero de

3 109

2 1011

2 1012

4.5 minutos

36 minutos

4.8 horas

puertas
tiempo

Este anlisis evidencia la potencia de clculo de un ordenador cuntico.


Algoritmos de bsqueda.

Un tipo interesante de problemas son los de bsqueda. El algoritmo de Grover


trata este problema. Para ello usa un algoritmo cuntico que aprovecha la posibilidad de
superposicin coherente (Grover 1998). Por ejemplo, consideremos que tenemos una
lista con N datos (que puede ser una lista de 106 nombres de un listn telefnico,
ordenados por orden alfabtico) y nos planteamos encontrar un elemento concreto (es
decir, dado un telfono, encontrar su dueo). Clsicamente para encontrar un dato
concreto con una probabilidad 1/2, deberamos buscar, en promedio, unos N/2 (5.105
bsquedas) elementos hasta dar con el buscado, as que el algoritmo escala como N=2L
(L=log2N). El algoritmo de Grover (Grover 1996) demuestra que para una bsqueda en
una base de datos sin estructura, se necesitan slo O(N1/2) pasos temporales (con una
probabilidad acotada), con lo que no se cambia la clase de complejidad, si bien aumenta
su eficiencia, lo que es importante cuando se trata una gran cantidad de datos. En el caso
del listn se necesitaran slo 1000! bsquedas.
Ciertos problemas se pueden plantear como problemas de bsqueda, por ejemplo
el problema de ordenar un conjunto de nmeros por orden creciente, la bsqueda de
extremos, etc. Brassard ha apuntado una posible aplicacin en criptografa, donde se
usan claves de 56 bits. La bsqueda de la clave correcta entre las 256 (~7 1016) posibles
tardara ms de 2000 aos si se realizara clsicamente (a una velocidad de106 bsquedas
por segundo), mientras que mediante el algoritmo de Grover se tardara menos de cinco
minutos.
7. Procesos de control de errores.
Quizs uno de mayores problemas a la hora de construir un ordenador cuntico
es el control de los posibles errores. Estos errores provienen de la inexorable interaccin
del ordenador con el entorno, proceso denominado decoherencia (Zurek 1991). Desde
un punto de vista clsico, los errores se corrigen mediante tcnicas que implican cierta
disipacin, siendo estos mtodos inviables en el caso cuntico, ya que la disipacin
implicara una prdida irremediable de informacin y de coherencia. Este hecho, unido a
que adems de los errores de bit clsicos, aparecen nuevos errores, tpicamente
cunticos, como los relacionados con la variacin de las fases relativas en las
superposiciones coherentes, y la imposibilidad de clonacin (Wootters y Zurek 1982) de
qubits desconocidos, hizo que durante algn tiempo se pensara que no podan existir
mtodos para controlar los errores cunticos.
Afortunadamente, dos recientes contribuciones (ahora ya clsicas) debidas a Shor
(Shor 1995) y a Steane (Steane 1996), han cambiado este panorama. Estos autores han
mostrado cmo es posible contener los errores mediante el uso de los llamados Cdigos
Cunticos Correctores de Errores. El primer paso fue darse cuenta de que los errores
cunticos, que son analgicos (es decir continuos), pueden digitalizarse simplemente
usando una apropiada base para describir los estados del entorno. Ahora los errores son
discretos: de bit, del tipo clsico |0> |1>; errores de fase del tipo |0> |0> y |1> |1> y ambos a la vez, |0> |1> y |1> -|0>.
En el estado actual de los procesos de control de los errores se plantean varias
estrategias:

a) Cdigos cunticos que previenen errores (Vaidman et al, 1996).


Son mtodos que usan el efecto Zenn cuntico para prevenir la aparicin de
errores. Cuando el ordenador est sometido a pequeos errores de memoria o errores de
hardware, se proyecta el estado del sistema o incluso del ordenador entero de forma lo

suficientemente frecuente como para congelar su evolucin. Estos cdigos no implican


deteccin ni correccin de los posibles errores, sino nicamente su prevencin.
b) Cdigos cunticos que evitan errores.
Estos cdigos usan determinados subespacios libres de decoherencia para
codificar los qubits. Son tiles dentro de algunos tipos concretos de interaccin sistemaentorno.
c) Cdigos cunticos correctores de errores (Knill y Laflamme 1997)
Algunos de estos mtodos son una adaptacin de los cdigos clsicos lineales,
que involucran la medida de un sndrome del error, que permita aplicar la transformacin
inversa para eliminarlo. Este proceso de medida debe tener en cuenta el mantenimiento
de la coherencia de los registros (cadenas de qubits) iniciales si la hubiere. Para ello se
usa un conjunto de qubits adicionales (llamados ancilla), a los cuales se traslada el
sndrome, mediante un conjunto de puertas CNOT cunticas. Este proceso no es una
clonacin ya que no se trasfiere ninguna informacin acerca de los valores de los
coeficientes de un qubit general. Midiendo, posteriormente, la ancilla, se puede
identificar el error sin perder coherencia.
Estos cdigos permiten detectar, reconocer y corregir los errores, y son
verdaderos mtodos activos de correccin anlogos a los clsicos. Es posible plantear
una descripcin basada en teora de grupos que englobe a todos los cdigos correctores
de errores, dando lugar a los Cdigos Estabilizadores (Gottesman 1997). La
caracterizacin de los errores se realiza mediante la medida de un conjunto de
observables que conmutan, cuyos autovalores corresponden al sndrome. Esta
generalizacin ha permitido obtener nuevos cdigos.
Ya que el circuito de correccin de errores es tambin cuntico, adems de la
posibilidad de detectar y/o corregir los errores, es necesario que el propio circuito no
introduzca ms errores de los que elimina. Esta condicin es la llamada Tolerancia a
Fallos (Preskill 1997). Transformar los circuitos cunticos en circuitos tolerantes a fallos
implica ciertas complicaciones que involucran un nmero creciente de qubits y de
puertas.
8. Hardware cuntico
Debido al problema de la creacin, control y correccin de errores en las
superposiciones coherentes de estados cunticos, la tecnologa actual que implementa las
puertas y circuitos cunticos est todava en su infancia. Para construir un ordenador
cuntico se necesita solventar los siguientes problemas:

1.- Eleccin de los qubits, es decir de los posibles sistemas fsicos, con dos niveles
cunticos.
2.- Control del espacio de Hilbert del ordenador. Es preciso poder manejar los qubits,
sus superposiciones coherentes, borrado de registros, etc.
3.- Control de transformaciones unitarias. Una vez elegido el sistema cuntico con el
que representamos el qubit, se debe poder efectuar operaciones mediante puertas
cunticas. Eligiendo un conjunto universal de ellas, por ejemplo {rotaciones de un
qubit, CNOT}, se podrn realizar cualquier tipo de computaciones.
4.- Control de errores cunticos. Este aspecto es fundamental, y es el actual cuello de
botella de estos procesos. Se necesitan: (a) mtodos pasivos de correccin, es decir
un buen aislamiento del ordenador de su entorno, (b) mtodos de deteccin y

correccin de errores, y (c) mtodos tolerantes a fallos, que impidan su dispersin


cuando estos se produzcan. De forma general, la probabilidad de que un registro
formado por N qubits,
sometido a decoherencia,
sea correcto despus de un
tiempo t, disminuye de
forma exponencial exp(Nt/dec), donde dec es el
llamado
tiempo
de
decoherencia,
y
caracteriza a la interaccin
del ordenador con su
entorno. El dec indica el
tiempo que es posible
mantener
las
Figura 5: Trampa de Paul. Los iones se
superposiciones
atrapan en su centro mediante
coherentes. Luego dec >>
una diferencia de potencial
tiempo necesario para
variable establecido entre los
efectuar una operacin
casquetes y el electrodo central
elemental > tiempo total
del algoritmo cuntico.
5.- Posibilidad de escalar el ordenador. Dado que los distintos algoritmos necesitan
usar un nmero distinto de qubits, se requiere que los sistemas elegidos permitan la
posibilidad de ser escalados sin que la probabilidad de error aumente tanto como
para hacer imposible su utilizacin.

Con estos requerimientos, se estn estudiando diferentes sistemas fsicos (Cirac


2000), que clasificamos dependiendo del tipo de qubit usado o de su interaccin.
1.- Varias propuestas estn basadas en el uso de sistemas de dipolos acoplados, tanto
elctricos como magnticos. Todos ellos comparten las mismas formas de control,
lectura o escritura de informacin (evidentemente con sus particularidades). Estos
procesos se llevan a cabo mediante pulsos de haces lser de duracin determinada.
Los pulsos producen una inversin por absorcin o emisin inducida, y otros, como
los pulsos /2 producen superposiciones coherentes. Los procesos de lectura de
resultados se realizan usando la tcnica de saltos cunticos, es decir, excitando los
posibles estados finales, y observando la posterior fluorescencia.
Inicialmente se propuso utilizar sistemas como los heteropolmeros, formados por
varios tipos de tomos, cada uno de los cuales se puede considerar como un sistema
de dos niveles. Puesto que los distintos tomos interaccionan entre s, todos los
tomos que tienen el mismo entorno tendrn en mismo sistema de niveles. La idea era
interesante aunque se planteaba el problema de la eleccin del material concreto.
Parecen ms prometedores otros sistemas, como los sistemas de iones ultra fros
atrapados en trampas de Paul. En la figura 5 se muestra el esquema de una trampa de
Paul, formada por electrodos hiperblicos que producen un potencial cuadrupolar
dependiente del tiempo. El promedio temporal del potencial hace que un ion situado
en el centro de la trampa no pueda escapar. Mediante esta tcnica se ha construido la
primera puerta CNOT cuntica en el National Institute of Standards and Technology
(Colorado). En los experimentos se usan dos niveles hiperfinos del estado

fundamental del ion Be+ como qubit imagen, mientras que los dos primeros modos de
vibracin (fonones) simulan el qubit de control. De esta forma, ambos qubits de la
puerta CNOT estn en distintos grados de libertad del mismo sistema. Monroe et al
(1995) obtienen un funcionamiento correcto de la puerta en un 90%, as como una
decoherencia del orden de dec 1 ms (valor demasiado grande), mientras que el
tiempo necesario para realizar una operacin elemental es del orden de tp 10-5 s. El
principal problema que presenta el sistema es su dificultad para ser escalado.
Siguiendo el mismo esquema, es posible usar conjuntos de iones atrapados en trampas
de Paul lineales (Cirac y Zoller 1995), lo cual eliminara el problema de escala. Hasta
el momento y a pesar del gran esfuerzo dedicado, no se ha implementado ninguna
puerta CNOT mediante estos sistemas. Se han construido trampas para controlar
conjuntos de iones Ca+, en los que se usan niveles S1/2 y D5/2 (con vida media de 1s)
para representar al qubit (Ngerl et al 1998).
Dentro de los sistemas con espines acoplados, las tcnicas de RMN han permitido
importantes progresos. El mtodo presenta varias ventajas: los aspectos
experimentales se conocen desde hace mucho tiempo y son usados de forma habitual
en los laboratorios de espectroscopia; trabajan a temperatura ambiente y tienen
tiempos de decoherencia muy largos, del orden de cientos o miles de segundos. Su

|11>
|10>

|01>
|00>

2+

1+

1-
2-

Figura 6: Esquema de niveles de dos espines en ausencia o


presencia de interaccin entre ellos.
mayor problema es la obtencin de la informacin. En realidad cada molcula
constituye un ordenador entero, as que la computacin se realiza con un gran
paralelismo. La extraccin de resultados debe hacerse con tcnicas basadas en la
deteccin de pequeas desviaciones respecto al comportamiento magntico promedio
de la muestra (Cory et al 1998). En la figura 6 aparece el conjunto de niveles de dos
espines cuando son independientes y cuando estn acoplados. En este ltimo caso es
fcil implementar una puerta de un qubit sin mas que aplicar un pulso con la
frecuencia apropiada. Una puerta CNOT se consigue con ayuda de un pulso de
frecuencia 2+ (donde depende del acoplamiento entre los espines).
Sin embargo, no tienen buenas propiedades de escala, de forma que se prev que
no ser posible usar ms de unos 60 qubits por molcula. A pesar de todo, con esta
tecnologa se han logrado los mayores progresos desde el punto de vista experimental.
Se ha implementado el algoritmo de Deutsch (Jones y Mosca 1998) y un algoritmo de

bsqueda (Chuang et al 1998). Cory et al (1998), han podido implementar un mtodo


para corregir errores de fase debidos a fluctuaciones de un campo magntico externo,
usando sistemas de tres qubits: la alanina (tres 13C) y el tricloroetileno (un H y dos
13
C).
2.- Otro tipo de implementaciones fsicas involucran el uso de los estados de polarizacin
de los fotones, o bien algn tipo de proceso que permita introducir fases globales.
Existen dos mtodos principales: el mtodo de los "qubits voladores" del grupo de
Kimble en Caltech (Turchette et al 1995), y el montaje de Haroche (Domokos et al
1995) de la cole Normale Suprieure de Pars. El mtodo de Kimble se basa en usar
un qubit de control formado por un haz de baja intensidad (un fotn en promedio en
la cavidad) de fotones polarizados circularmente. El qubit imagen es un fotn
polarizado linealmente (que puede considerarse como formado por dos componentes
circulares de igual peso). Ambos fotones interaccionan en una cavidad resonante a
travs de la presencia de un tomo de Cs. El sistema cavidad-tomo de Cs, acta
como un medio birrefringente circular, de forma que gira el plano de polarizacin del
fotn imagen si el fotn de control tiene polarizacin circular a derechas. Mediante
este cambio de fase es posible construir una puerta CNOT.
El montaje de Haroche es anlogo, usando como qubit de control un fotn en una
cavidad no resonante con una transicin atmica de un tomo que se usa como qubit
imagen. Dependiendo de la presencia o ausencia de un fotn dentro de la cavidad (a la
que se enva tambin un tomo), el estado del sistema tomo+fotn adquiere una fase
global. De forma anloga, esta puerta de control-fase permite obtener una puerta
CNOT.
3.- Sistemas en fase slida.
Los anteriores sistemas requieren un gran montaje experimental como para que
sean tiles al construir un ordenador cuntico. Por ello parece que la solucin podra
estar (de nuevo) en la fsica de estado slido. Dentro de este contexto se han
propuesto diversos sistemas como los puntos cunticos (Loss y DiVincenzo 1998) o
los sistemas de superconductores. En el primer caso, los qubits se implementaran
usando los estados de un electrn dentro del punto, o bien sus estados de polarizacin
cuando se les aplica un campo elctrico externo. Sera posible construir una puerta
CNOT mediante dos puntos cercanos y acoplados, sin embargo surge el problema de
que parece difcil implementar puertas CNOT que involucren qubits lejanos en el
espacio.
El segundo sistema usa las caractersticas de coherencia macroscpica de los
pares de Cooper a travs de una heterounin Josephson para implementar una lgica
cuntica.
Sin embargo, aunque se han construido puertas experimentales CNOT que
involucran dos qubits, y se han usado algunas tcnicas simples de correccin de errores,
no se espera que antes de unos 30 aos existan ordenadores cunticos que hagan tareas
de cierta importancia.
9. Conclusin
Estamos ante otra de esas revoluciones interdisciplinares que producen gran
cantidad de nuevas relaciones entre campos inicialmente con escasa conexin. La teora
cuntica est alcanzando tambin a la informacin, no slo en sus mtodos de procesado,
sino en su propia concepcin. La posibilidad de construir ordenadores cunticos

permitir estudiar novedosas formas de tratar la informacin hasta ahora insospechadas,


adems de poner de manifiesto ciertos comportamientos cunticos fundamentales, de
momento slo plasmados como experimentos mentales en los libros de texto.
Referencias
Beckman, D, Chari A, Devabhaktuni, S y Preskill, J, 1996, Phys. Rev. A 54 1034.
Bennett, C H y Landauer, R; 1985, Scientific American, Julio p38.
Cirac, J I, 2000, Revista Espaola de Fsica 14 (1), 48.
Cirac, J I y Zoller, P, 1995, Phys. Rev. Lett. 74 4091.
Cory, D G, Price, M D y Havel, T F, 1998, Physica D 120 82.
Cory, D G, Price, M D, Maas, W, Knill, E, Laflamme, R, Zurek W H, Havel, TF y
Somaroo S S, 1998, Phys. Rev. Lett. 81 2152.
Chuang, I L, Gershenfeld, N y Kubinec, M, 1998, Phys. Rev. Lett. 80 3408.
Deutsch, D; 1985, Proc. R. Soc. London, A400 97.
Deutsch, D, 1989, Proc. R. Soc. London A 425, 73.
Deutsch, D y Jozsa, R, 1992, Proc. of the Roc. Soc., A439 553 (1992).
Domokos, P, Raimond, J M, Brune, M y Haroche, S, 1995, Phys. Rev.A 52 3554.
Feynman, R; 1982, Int. J. of Theor. Phys. 21 467
Galindo, A, 2000, Revista Espaola de Fsica 14 (1), 30. Una discusin muy completa
sobre el impacto de la Mecnica Cuntica en la Teora de la Informacin.
Gottesman, D, 1997, quant-ph/9705052
Grover, L K, 1996, Proceedings of the 28th Annual ACM Symposium on Theory of
Computing , p212, Philadelphia.
Grover, L K, 1998, Science 280 228, abril.
Hey, A J G y Allen, R W (Ed), 1996, The Feynman Lectures on Computation, Reading,
MA Addison-Wesley.
Jones, J A y Mosca, M, 1998, J. Chem. Phys. 109 1648
Knill, E y Laflamme, R, 1997, Phys. Rev. A 55 900.
Loss, D y DiVincenzo, D P, 1998, Phys. Rev. A 57 120.
Monroe, C, Meekhof; D M, King, B E; Itano, W M y Wineland, D J, 1995, Phys. Rev.
Lett. 75 4714
Ngerl, H C; Bechter,W, Eschner, J, Schmidt-Kaler, F y Blatt, R, 1998, Applied. Phys B,
Lasers and Optics 66 603.
Preskill, J; 1997, quant-ph/9712048
Shor, P W, 1994, Proceedings of the 35th Annual Symposium on Foundations of
Computer Science (IEEE Computer Society, Los Alamitos CA p124.
Shor, P W, 1995, Phys. Rev. A 52 2493.
Schumacher, B; 1995, Phys. Rev. A 51 2738
Steane, A M, 1996, Proc. Roy. Soc. Lond. A 452 2551.
Turchette, Q A; Hood, C J; Lange, W; Mabuchi, H y Kimble, H J, 1995, Phys. Rev. Lett.
75 4710.
Vaidman, l; Goldenberg, L y Wiesner S, 1996, Phys. Rev. A 54 R1745.
Williams, C P. y Clearwater, S H; Explorations in quantum computing, Springer_Verlag
1997. Uno de los primeros libros sobre este tema.
Wootters, W K y Zurek, W H, 1982, Nature 299 802.
Zurek, W.H., 1991, Physics Today, p36 Octubre

Anda mungkin juga menyukai