Anda di halaman 1dari 15

Algoritmo de bsqueda de Grover

A. Garca Lpez U.P.M. Grupo de Computacin Cuntica TECHNICAL REPORT N 18 Junio 2003

A. Garca Lpez U.P.M.

Dep. Matemtica Aplicada. E.U. Informtica Ctra. de Valencia Km. 7, 28031 Madrid, Spain e_mail: garcial@eui.upm.es

Departamento de Matemtica Aplicada E.U. Informtica. U. Politcnica Madrid Ctra. de Valencia Km. 7 28031 Madrid, Espaa

Algoritmo de b usqueda de Grover


pez Alfonsa Garc a Lo Grupo de Computaci on cu antica Departamento de Matem atica Aplicada (E.U. Inform atica) Universidad Polit ecnica de Madrid

1. Introducci on
Muchos problemas, que se pueden denominar problemas de b usqueda, se pueden plantear de la siguiente forma: Hallar x en un conjunto de posibles soluciones tal que la sentencia P (x) sea cierta. Por ejemplo, el problema de buscar un factor para un n umero entero q se puede tratar con un algoritmo de b usqueda en un lista que contenga a todos los enteros entre 2 y q , buscando uno que verique la propiedad P (x) : q mod x = 0. Un problema de b usqueda no estructurada es aquel para cuya resoluci on no se puede usar ninguna hip otesis relativa a la estructura del espacio de soluciones o a la sentencia P . Por ejemplo, una b usqueda en una lista alfabetizada, como la b usqueda del n umero de un usuario en la gu a telef onica, es un problema de b usqueda estructurada, mientras que la b usqueda en la misma gu a del titular de un n umero concreto ser a una b usqueda no estructurada. En una b usqueda estructurada, se puede usar la estructura ordenada de la lista para construir algoritmos ecientes, pero en una b usqueda no estructurada lo habitual es testear aleatoriamente la veracidad de la sentencia. En el modelo de computaci on cl asico, para un espacio de b usqueda de tama no N , ser a necesario evaluar P un promedio de N/2 veces y N veces en el peor de los casos. Los algoritmos cl asicos de b usqueda no estructurada requieren O(N ) evaluaciones de P . Grover (ver [3]) prob o en 1996 que, con computaci on cu antica, un problema de b usqueda on u nica, se puede resolver, con probabilidad acotada, no estructurada, con soluci con O( N ) evaluaciones de P . Posteriormente, Boyer y otros (ver [1]) generalizaron el algoritmo para problemas con soluci on m ultiple (obviamente, el caso interesante es cuando el n umero de soluciones es peque no en relaci on al tama no de la lista). Tambi en estudiaron la posibilidad de que no se conozca a priori el n umero de soluciones. Por otra parte, en el mismo art culo, los autores obtuvieron una cota inferior para la eciencia de cualquier algoritmo cu antico de b usqueda, probando que el de Grover es asint oticamente o ptimo. Un art culo m as reciente de Zalka (ver [7]) mejora este resultado y prueba que para on u nica, con cualquier n umero de iteraciones un problema con soluci por debajo de N /4, el algoritmo de Grover da la m axima probabilidad de encontrar el elemento deseado.

2. Descripci on del algoritmo


Partimos de una lista de tama no N . Supondremos, incrementando la lista si es preciso, que N = 2n para alg un n. Trabajaremos con los ndices de los elementos de la lista, es n decir con x = 0 . . . 2 1 y queremos localizar aquellos x tales que f (x) = 1, para un cierta funci on booleana f . La computaci on cu antica permite evaluar f simult aneamente sobre todos los posibles N 1 1 X inputs, sin m as que construir el estado | i = |xi, que se obtiene, a partir de N x=0 |00 . . . 0i, con la transformaci on de Walsh-Hadamard. El problema es que no se puede leer el resultado obtenido sin destruir el estado. La idea que aplicaremos es la siguiente: Partiremos del estado | i y lo iremos modicando de modo que se vaya incrementando la amplitud de los x tales que f (x) = 1 y disminuyendo la de aquellos que no verican la propiedad. As conseguiremos, al medir el registro resultante, tener un acierto con probabilidad alta. Para conseguir este efecto, N 1 X en un estado cu antico aj |xj i, primero invertiremos la amplitud, es decir cambiaremos
j =0

donde A es el promedio de los aj .

aj por aj para los xj tales que f (xj ) = 1 y despu es llevaremos a cabo la operaci on N 1 N 1 X X denominada inversi on sobre el promedio, que transforma aj |xj i en (2A aj )|xj i,
j =0 j =0

N otese que si los aj son n umeros reales, despu es de realizar estas operaciones se tendr a un estado cuyas amplitudes sean tambi en n umeros reales. Veamos c omo llevar a cabo cada una de estas operaciones: 1. Cambio de signo de la amplitud. Se trata de implementar la transformaci on U : |xi (1)f (x) |xi que no modica los |xi tales que f (x) = 0 y pone un coeciente 1 a los que verican f (x) = 1. Sabemos que la puerta cu antica Uf implementa la evaluaci on de la funci on booleana f del siguiente modo: Uf : |x, bi |x, b f (x)i donde es la suma m odulo 2. Cuando s olo se quiere evaluar f sobre un estado |xi se 1 aplica Uf con b = 0, pero nosotros vamos a considerar el estado |bi = (|0i |1i). 2 N otese que si f (x) = 0, entonces |b f (x)i = b, mientras que si f (x) = 1 es |b f (x)i = 1 (|1i |0i) = |bi. Luego: 2 Uf (|x, bi) = (1)f (x) |x, bi 2

Con esta transformaci on se realiza simult aneamente la evaluaci on de f y la inversi on de las amplitudes de los |xj i que satisfacen la propiedad. Vamos a detallar la actuaci on de Uf sobre un estado cualquiera = Sean X0 = {x : f (x) = 0} y X1 = {x : f (x) = 1}. Entonces: X X Uf (|, bi) = Uf aj |xj , bi + aj |xj , bi =
xj X0 N 1 X j =0

aj |xj i.

xj X0

aj |xj , bi

xj X1

Por tanto el efecto de Uf es el cambio de signo de las amplitudes, tal como quer amos. N otese que en la salida de Uf no se modica el estado b, por tanto podemos omitirlo al escribir y en lo que sigue nos referiremos a esta transformaci on, que en la literatura especializada se suele denominar el or aculo, como U : |xi (1)f (x) |xi. 2. Inversi on sobre el promedio. 1 X |xi, es f acil ver que la transformaci on G = 2| ih | I cuya Dado |i = N x=0 matriz asociada es 2 2 2 N 1 N N 2 2 2 N 1 N N G= . . . . . . . . . 2 2 2 N 1 N N transforma
N X j =0 N X aj |xj i en (2A aj )|xj i, donde A es el promedio de los aj . j =0 N 1

aj |xj , bi =

xj X1

xj X0

aj |xj i

xj X1

aj |xj i |bi

Grover propuso una implementaci on eciente de esta transformaci on con O(log(N )) puertas elementales. Para ello basta probar que G = Wn RWn , donde Wn es la transformaci on de Walsh-Hadamard (Wn = H . . .(n H ) y R = (rij ) es una matriz diagonal tal que r11 = 1 y rii = 1 para i = 2 . . . N .

La matriz R se puede escribir como R = R0 I donde R0 = 2|0ih0| es una matriz con todos sus elementos iguales a 0 menos el de la primera la y primera columna que es 0 r11 = 2. Entonces Wn RWn = Wn (2|0ih0| I )Wn = Wn 2|0ih0|Wn I y como Wn |0i = | i, se concluye que Wn RWn = 2| ih| I = G 3

La transformaci on R se puede implementar con n = log(N ) puertas de Tooly y el coste de Wn tambi en es log(N ). El algoritmo de Grover consiste en aplicar sucesiva y reiteradamente las transformaciones U y G. Debemos determinar cu antas veces hacerlo para maximizar la probabilidad de acierto. Ejemplo Supongamos que se tiene una lista de 64 elementos de los que s olo uno, que denominamos x0 , verica la propiedad. 1X En primer lugar se construye el estado | i = |xi. Inicialmente todos los coe8 x=0 cientes son iguales a 1/8. Cambiamos el signo de la amplitud de x0 y hacemos el promedio, 1 que ser a A = (63 1 on de inversi on en el prome8 8 )/64 0.12109. Hacemos la operaci dio y la nueva amplitud para x0 es 0.367817, mientras que para el resto es 0.117187. Si repetimos el proceso, despu es de 6 iteraciones, el coeciente de |x0 i es 0.998291, mientras que el resto de los coecientes son iguales a 0.00736174. Si en este momento medimos el estado, tendremos una probabilidad de acierto de 0.9982912 , pero si seguimos iterando las cosas empiezan a cambiar. Por ejemplo despu es de 10 iteraciones la amplitud de x0 es aproximadamente 0.487922. Por esto es importante determinar el n umero adecuado de veces que hay que aplicar el algoritmo.
63

3. Visi on geom etrica del algoritmo


Partimos de una lista de N = 2n elementos de los cuales s verican la propiedad en cuesti on. N 1 1 X Construimos el estado | i = |xi y consideramos los estados N x=0 X 1 |i = |xi, N s xX
0

1 X | i = |xi s
xX1

con X0 y X1 denidos como en la secci on anterior. Evidentemente |i y | i son ortonormales y podemos considerar el subespacio de Hilbert real LI R}, R (|i, | i) = {a|i + b| i, a, b I que tiene como base {|i, | i}. En este espacio podemos escribir r | i =

N s |i + N

s | i. N

y las transformaciones U y G verican que U (LI R (|i, | i)) = LI R (|i, | i), 4 G(LI R (|i, | i)) = LI R (|i, | i)

Trabajando con este plano eucl deo, la transformaci on U es una simetr a respecto a |i ya que transforma el vector a|i + b| i en a|i b| i, mientras que G = 2| ih | I es una simetr a respecto de | i, pues su matriz asociada es p r N s r (N s)s 2s r ! 2 1 N N s s N N p r G = 2 I = N N s (N s)s 2s 2 1 N N N que es la matriz de una simetr a respecto a |i. La composici on de dos simetr as es un giro de angulo doble del que forman los dos vectores. Por lo tanto, trabajando en el plano LI R (|i, | i) el algoritmo de Grover consiste en hacer un giro de angulo donde [0, ] y cos( 2 2 ) es el producto escalar de los vectores unitarios |i y | i: r N s cos = h| i = 2 N r s Obviamente sin = . 2 N Sea = /2. En la base {|i, | i}, el estado inicial es | i = cos( )|i + sin( )| i. La aplicaci on del algoritmo supone un giro de a ngulo = 2 y el estado se transforma en: cos(3 )|i + sin(3 )| i. El n umero optimo de iteraciones ser a el n umero de veces que hace falta hacer un giro 1 = . de a ngulo para llevar | i a | i y cabe esperar que sea pr oximo a 2 2 4 2 Despu es de k iteraciones tendremos: cos((2k + 1) )|i + sin((2k + 1) )| i. La expresi on de este estado en el espacio N -dimensional es: X 1 X 1 |xi + sin((2k + 1) ) |xi cos((2k + 1) ) s N s xX xX
0 1

4. C alculo del n umero optimo de iteraciones


Partimos de una lista de N = 2n elementos de los cuales s verican la propiedad. N 1 1 X Construimos el estado | i = |xi y aplicamos reiteradamente el algoritmo de N x=0 5

Grover. Despu es de k iteraciones, los elementos que verican la propiedad tendr an todos la misma amplitud, que denominamos bk , y los que no la verican tendr an una amplitud, que denominamos mk . Podemos escribir el estado en la forma: X X mk |xi + bk |xi
xX0 xX1

En cada iteraci on del algoritmo, las amplitudes bk cambian de signo (es el efecto de la aplicaci on U ) y despu es se aplica G, cuyo efecto es la inversi on en el promedio de las amplitudes, luego se verican la siguientes ecuaciones recursivas: 1 m 0 = b0 = N mk+1 = 2Ak mk donde Ak = Es decir mk+1 bk+1 bk+1 = 2Ak + bk

(N s)mk s bk N
N 2s N 2N 2s N s 2 N

N 2s N

mk bk

Se puede demostrar por inducci on que la soluci on de este sistema de ecuaciones en diferencias es precisamente el resultado obtenido geom etricamente. Es decir: 1 mk = cos((2k + 1) ) N s donde cos( ) = r N s N 1 bk = sin((2k + 1) ) s r s . N

sin( ) =

Para conseguir la m axima probabilidad de acierto, habr a que minimizar |mk |. 1 Se tendr a mk = 0 si (2k + 1) = /2. Es decir si k = , como hab amos visto 4 2 en la secci on anterior. Pero esto no es posible porque el n umero de iteraciones debe ser entero. = b /(4 )c y as | 1/2, con lo que Vamos a tomar k |k k + 1) + 1) | = |2 (k k )| (2k = |(2k + 1) (2k 2

iteraciones la probabilidad de fallo es: Despu es de k 2 2 2 + 1) sin2 ( ) = s (N s)(mk (2k ) = cos ((2k + 1) ) = sin 2 N En consecuencia, la probabilidad de fallo despu es de b /(4 )c iteraciones es menor que s/N . 6

5. Algoritmo de Grover cuando se conoce el n umero de soluciones


Se dispone de una lista de N = 2n elementos de los cuales se sabe que hay s que verican la propiedad. Se numeran los elementos de la lista y se trabaja con los ndices correspondientes. El siguiente algoritmo proporciona soluci on con probabilidad de fallo menor que s/N : Paso 1. Estado inicial: |0 . . . 0i.
N 1 1 X Paso 2. Aplicar la transformaci on de Hadamard con la que se obtiene | i = |xi. N x=0

Paso 3. Aplicar U : |xi (1)f (x) |xi. Paso 4. Aplicar G = 2| ih | I . Paso 6. Leer el resultado.

Paso 5. Repetir b /(4 )c veces los pasos 3 y 4.

Nota: Este algoritmo es apropiado cuando s es peque no en relaci on a N . El n umero de iteraciones es O( N ) ya que: r N = p = 4 4 sin( ) 4 s 4 s/N

Si tenemos en cuenta que el coste de la transformaci on G es O(log(N )), la complejidad total es O( N log(N )). Casos particulares interesantes: 1. s = 1. En este caso, sin( ) = y entonces p p 1/N . Si N es grande sin( ) es peque no y sin( ) = 1/N 4 N. 4

Con b a acotada por 1/N . 4 N c iteraciones, la probabilidad de fallo est 2. s = N/4. En este caso sin( ) = es p s/N = 1/2, luego = /6 y el n umero optimo de iteraciones 3 = = 1. 4 2

Con una sola iteraci on del algoritmo se consigue una soluci on. 3. s = N/2. En este caso sin( ) = 1/ 2, luego = /4. El n umero optimo de iteraciones tambi en es 1. Pero en este caso la aplicaci on del algoritmo no mejora la probabilidad de acierto que sigue siendo 1/2. 7

4. s > N/2. El angulo de giro es = 2 y sin( ) = 2 sin( ) cos( ) = 2p s(N s). N

La expresi on s(N s) tiene su valor m aximo en s = N/2. Despu es, seg un se va haciendo s m as grande, sin( ) es m as peque no y el n umero de iteraciones necesarias es m as grande. Ejemplo de aplicaci on del algoritmo Supongamos que partimos de una lista de 8 elementos [0, 1, . . . , 7] y buscamos un x que verique la propiedad de ser m ultiplo de 5 distinto de 0, sabiendo que existe una u nica soluci on. En este caso la funci on f podr a ser f (x) = 1 (x + 1) mod 5, de modo que si P (x) = 1, entonces x + 1 es la soluci on. La transformaci on unitaria U correspondiente a esta propiedad tiene como matriz: 1 0 0 0 U = 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1

Pero esta matriz no es conocida, si no se conoce la soluci on del problema. La transformaci on U act ua como caja negra (or aculo). La matriz de la aplicaci on G s olo depende del tama no de la lista y en este ejemplo es: 3 1 1 1 1 G= 4 1 1 1 1 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 3 1 1 1 1 3 1 1 1 1 3

A continuaci on aplicamos el algoritmo: Paso 1: Partimos del estado |00 . . . 0i.


7 1 X |xi. Paso 2: Transformaci on de Walsh-Hadamard y resulta 8 x=0

Pasos 3 a 5:

El n umero de iteraciones es b N /4c = 2. 8

Tras la primera aplicaci on de U y G las amplitudes resultantes son: 1 [1, 1, 1, 1, 5, 1, 1, 1] 4 2 (N otese que este resultado es desconocido, ya que si medimos el estado se destruye.) Despu es de la segunda iteraci on resulta: 1 [1, 1, 1, 1, 11, 1, 1, 1] 8 2 Paso 6: Leer el resultado. La probabilidad real de exito es 121/128 0.9453125. El m etodo garantiza una probabilidad de exito mayor o igual que 7/8 0.875.

6. Qu e ocurre si no se conoce a priori el n umero de soluciones?


Si no se conoce a priori el n umero de soluciones se puede meter la pata notablemente. Supongamos, por ejemplo, que N = 220 . Si iteramos b N /4c = 804 veces y la soluci on es u nica, tendr amos una probabilidad de fallo de 1/220 . Es decir tenemos casi garant a de exito. Pero supongamos que mantenemos este n umero de iteraciones y que hay 2 1 cuatro soluciones. Entonces la probabilidad de acierto ser a 4b2 k = 4 4 sin (1609 ), donde = arcsin(1/28 ). Esta probabilidad es menor que 0.4 105 . Hay que buscar una alternativa. Si nos basta con encontrar alguna soluci on y tenemos alguna pista sobre el n umero de N estas (por ejemplo, sabemos que 1 s 34 , aunque esta restricci on no es imprescindible) podemos usar la siguiente generalizaci on del algoritmo de Grover dada por Boyer y otros en [1]. Denotamos por Gf a la matriz correspondiente a cada iteraci on del algoritmo de Grover, es decir Gf = GU = (2| ih| I )U . Paso 1. Inicializar m = 1 y tomar = 6/5. Paso 2. Elegir aleatoriamente j entre los enteros no negativos menores que m, de acuerdo con una distribuci on uniforme. N 1 1 X j |xi. Paso 3. Aplicar (Gf ) al estado |i = N x=0 Paso 4. Leer el resultado. (Sea x la salida.) Paso 5. Si f (x) = 1, FIN. Paso 6. En otro caso tomar m = min(m, N ) y volver al paso 2.

Nota: La idea es ir explorando las distintas posibilidades en cuanto al n umero de soluciones. Por eso el n umero j de iteraciones del algoritmo se va eligiendo aleatoriamente 9

entre 0 y m. Veremos que, a partir de un momento, para cada vuelta del bucle tendremos una probabilidad mayor que 1/4 de encontrar la soluci on. Teorema 6.1. El n umero medio de iteraciones p del algoritmo de Grover necesarias para encontrar una soluci on con este m etodo es O( N/s).

Demostraci on. En primer lugar vemos que la probabilidad de obtener una soluci on despues de j iteraciones del algoritmo es:
2 s b2 j = sin ((2j + 1) )

(N otese que es desconocido, puesto que lo es s.) Como para cada m elegimos j aleatoriamente entre 0 y m 1, la esperanza matem atica de exito es: Pm =
m 1 X j =0 m1 m1 1 1 X 1 cos((2j + 1)2 ) 1 1 X 2 cos((2j + 1)2 ) sin ((2j + 1) ) = = m m j =0 2 2 2m j =0

sin(4m ) Se puede probar por inducci on sobre m que la suma de los cosenos es , con lo 2 sin(2 ) que 1 sin(4m ) Pm = 2 4m sin(2 ) Por tanto, si m 1 , entonces Pm sin(2 ) Vamos ahora a estimar el n umero de Grover: 1 . 4 veces que es necesario aplicar el algoritmo de

Cuando En la segunda vuelta m = m = 1, j debe ser 0 y no se aplica el algoritmo. es de t vueltas ser a m = t1 . Como j se elige aleatoriamente, min(m, N ) = y despu el n umero esperado de veces que se aplique el algoritmo en cada vuelta ser a t1 /2. Diremos que el proceso alcanza el estado cr tico si se repite el bucle principal m as de 1 log m0 , con m0 = . sin(2 ) El n umero esperado de iteraciones hasta alcanzar el estado cr tico es 1 2
dlog m0 e

X
t=1

t1 =

1 dlog m0 e 1 1 m0 < = 3m0 2 1 21

Por tanto, el n umero esperado de iteraciones antes de alcanzar el estado cr tico est a acotado por 3m0 . Despu es de superado el estado cr tico, cada vez que apliquemos Gf , tendremos una 1 probabilidad de exito de al menos 1/4, pues ser am . sin(2 ) 10

As , el n umero esperado de iteraciones para tener exito tras el estado cr tico es menor o igual que: 1 X 3n n+dlog m0 e 3 1 1 dlog m0 e m0 = < = m0 . 3 n +1 2 n=0 4 24 1 4 8 6 2 En resumen, el n umero total de iteraciones est a acotado por 3m0 + 3 2 m0 . Es decir es p O(m0 ) = O( N/s) (c.q.d.)

7. Contar el n umero de soluciones


La forma general del algoritmo de Grover, cuando no se conoce el n umero de soluciones, tiene el inconveniente de tener que realizar muchas mediciones intermedias. Una alternativa, cuando no se conoce el n umero de soluciones, es usar una aplicaci on de la transformada cu antica de Fourier para determinar dicho n umero y despu es encontrar una soluci on con el algoritmo de Grover b asico. No vamos a detallar completamente el proceso, simplemente comentaremos algunas ideas clave. Seg un hemos visto, el plano LI R (|i, | i), el algoritmo de Grover es un giro de enp s angulo , tal que sin 2 = N . Los autovalores de este giro son ei y e2i() . Calcular el n umero de soluciones equivale a determinar el angulo , y se puede reducir a conocer el periodo de la funci on que lleva cada entero k en la amplitud bk . Vamos a describir el algoritmo de conteo propuesto por Brassard, Hoyer y Tapp [2]. Este m etodo se basa en la estimaci on de fase, con el algoritmo de transformada cu antica y su objetivo es determinar el a ngulo , y en consecuencia una aproximaci on al n umero s de soluciones, que es el cardinal del conjunto X1 = f 1 (1). El algoritmo de conteo recibir a como par ametros de entrada la funci on f y un entero P , que suponemos potencia de 2, P = 2p , y que va a marcar la precisi on con la que aproximaremos s, determinando tambi en el n umero de iteraciones de Gf (que recordemos es Gf = GU ). Introducimos alguna notaci on: Denotamos por Cf a la transformaci on: y por FP a la transformada cu antica de Fourier denida por:
P 1 1 X 2ikx/P FP : |ki e |xi P x=0

Como N s es el cardinal de f 1 (0), podemos suponer que s N/2.

Cf : |mi | i |mi (Gf )m | i

En la secci on 4 hemos visto que tras aplicar (Gf ) obtiene X cm |xi + 11 X

N 1 1 X al estado | i = |xi se N x=0

xX0

xX1

bm |xi

donde X1 = f 1 (1) y X0 = f 1 (0), cm = Descripci on del algoritmo:

1 N s

cos((2k + 1) ) y bm =

1 s

sin((2k + 1) ).

Partimos del estado |0i |0i. (El primer registro es un p-qubit, y el segundo un n-qubit.) Paso 1. Hacer |0 i = Wp (|0i) Wn (|0i).

P 1 N 1 1 X X Es decir |0 i = |mi|xi P N m=0 x=0

Paso 2. Hacer |1 i = Cf (|0 i) Es decir


P 1 1 X |mi |1 i = P m=0

xX0

cm |xi +

xX1

bm |xi

Paso 3. Medir el segundo registro de |1 i. Sea |2 i el resultado de la medida. (Este paso puede omitirse y enseguida veremos por qu e.) Paso 4. Hacer |3 i = (FP I )(|2 i). Paso 5. Medir |3 i. Sea |yi el resultado de la medida. Si y > P/2, cambiamos y por P y .
Salida: t = N sin2 ( y P )

Teorema 7.1. La salida t del algoritmo de conteo es una aproximaci on al n umero de soluciones s tal que 2 2 |t s| < sN + 2 N P P con probabilidad mayor o igual que 8/ 2 . Comentarios Vemos en primer lugar que la medici on que se realiza en el paso 3 no es necesaria. Supongamos que al medir el segundo registro se obtiene un |xi que verica la propiedad. Entonces tras la medici on el estado resultante es de la forma
P 1 P 1 X 1 X |2 i = bm | m i = r sin(2m + 1) |mi |xi P m=0 m=0

donde r es un factor de normalizaci on que depende de . Si nos hubiera salido en la medici on un |xi que no verica la propiedad, tendr amos un estado del mismo tipo pero con cos en lugar de sin. En cualquier caso el periodo es el mismo. 12

Si / divide a P , es decir si h = P / es un n umero entero, al aplicar la transformada cu antica de Fourier el estado resultante s olo tendr a amplitudes no nulas en h y P h. El caso general es m as complicado, pero al medir el estado nos saldr a algo aproximado a P / o a P P / . Nos quedaremos con y P / . Por tanto y /P .

8. Fuentes bibliogracas
[1] BOYER, M.; BRASSARD G.; HOYER, P.; TAPP, A. (1996): Thight bounds on quantum searching. Workshop of Phys. Comp. 96, pg. 3643. arXiv:quant-ph/ 9605034v1. [2] BRASSARD, G.; HOYER, P.; TAPP, A. (1998): Quantum counting. arXiv:quantph/9805082v1. [3] GROVER, L. (1996): A fast quantum mechanical algorithm for database search. Proceedings of the 28th ACM Symposium on the Theory of Computing, pg. 212219. [4] LOMONACO, S.J. (2000): Grovers Quantum Search Algorithm. Proceedings of the Symposia of Applied Mathematics. American Mathematical Society. [5] NIELSEN, M.A.; CHUANG, L.I. (2000): Quantum Computation and Quantum Information. Cambridge University Press. [6] RIEFFEL E.; POLAK, W. (2000): An Introduction to Quantum Computation for non Physicists. Los Alamos Physics Preprint Archive. [7] ZALKA, C. (2001): Grovers quantum searching algorithm is optimal. arXiv:quantph/9711070v2.

13

TRABAJOS PUBLICADOS
N
1 (I) 2 (I) 3 (I) 4 (I) 5 (I) 6 (D) 7 (I) 8 (I) 9 (D)

AUTOR(ES)
F. Gmez; S. Ramaswami; G. Toussaint P. Bose; F. Gmez; P. Ramos; G. Toussaint J. Garca J. Garca; P.A. Ramos F. Gmez; F. Hurtado, G. Toussaint O.F. Soto; E. Osejo M. Villn; J. Villn F. Garca A. Garca

TITULO
On Removing Non-degeneracy Assumptions in Computational Geometry Drawing Nice Projections of Objects in Space A Counter-Example to a Theorem of Sendov Circularity of a set of points Proyecciones de Calidad y Reconstruccin de Conjuntos Una numeracin biyectiva de los racionales RESTART: An efficient and general method for fast simulation of rare events. Convergence Theorems for Topological Group Valued Measures on Effect Algebras. Informtica y Matemticas (Historia de un matrimonio de conveniencia). Algoritmos eficientes de enumeracin I. Some Problems on Approximation of Set of Points by Polygonal Curves. Maple and the z-transform. Some unexpected results using Computer Algebra Systems. Learning Calculus of several variables with new technologies. Demostracin en Lgica Proposicional Analizador lxico del lenguaje Ahmes Analysis of RESTART Simulation: Theoretical Basis and Sensitivity Study Algoritmo de bsqueda de Grover

FECHA
Abril 1996 Abril 1996 Abril 1996 Abril 1996 Octubre 1996 Octubre 1996 Julio 1997 Septiembre 1997 Diciembre 1997 Junio 1998 Abril 1999 Noviembre 1999 Julio 2000

10 (D) J. Garca 11 (I) 12 (I) J.M. Daz-Bez; F. Gmez; F. Hurtado A. Garca

13 (D) F. Alonso; A. Garca; F. Garca; S. Hoya; G. Rodrguez; A. de la Villa 14 (D) A. Franco; P. Franco; A. Garca; F. Garca; F.J. Gonzlez; S. Hoya; G. Rodrguez; A. de la Villa 15 (I) J. Garca

Julio 2000

Marzo 2001 Junio 2001 Noviembre 2001 Junio 2003

16 (D) J. Garca 17 (I) M. Villn; J. Villn

18 (D) A. Garca Lpez

Anda mungkin juga menyukai