el abecé de la computación cuántica - mat-web.upc.edu · 2. Í. ndice. preliminares...

63
El abecé de la computación cuántica UNIVERSIDAD DE VALLADOLID INSTITUTO DE INVESTIGACIÓN EN MATEMÁTICAS 24 de octubre de 2013 JUANJO R1 Y SEBASTIAN XAMBÓ 2 1 INSTITUT FÜR MATHEMATIK, FREIE UNIVERSITÄT BERLIN 2 FME Y FIB / MA2 UNIVERSITAT POLITÈCNICA DE CATALUNYA

Upload: duongquynh

Post on 28-Oct-2018

229 views

Category:

Documents


0 download

TRANSCRIPT

El abecé de la computación cuántica

RESUMEN

UNIVERSIDAD DE VALLADOLID

INSTITUTO DE INVESTIGACIÓN EN MATEMÁTICAS

24 de octubre de 2013

JUANJO RUÉ1 Y SEBASTIAN XAMBÓ2 1 INSTITUT FÜR MATHEMATIK, FREIE UNIVERSITÄT BERLIN

2 FME Y FIB / MA2 UNIVERSITAT POLITÈCNICA DE CATALUNYA

2

ÍNDICE

Preliminares Presentación axiomática de la física cuántica Computación cuántica en términos matemáticos q-computaciones, q-observaciones, q-procedimientos q-computadores y q-algoritmos

Computador cuántico Algunos q-algoritmos (QFT, Grover, Shor, …) Reflexiones finales Referencias Notas

3

PRELIMINARES

Computación clásica

Números binarios (Leibnitz, Boole, Shannon,…)

𝑩 = {0,1} (bits). 1 + 1 = 0

33(10 = 100001(2 = 25 + 20

< Toda información se puede representar por una cadena de bits.

Textos ′𝐴′ → 65(10 = 1000001, … , ‘𝑧′ → 122(10 = 1111010, … (ascii-7) (otros códigos: ascii-8, Unicode, utf-8, utf-16, …)

Sonido

44100 valores de presión por segundo, expresados en 16 bits (p. ej.). 1s de música (sin comprimir) ≃ 88 Kb

Bach

4

Imagen

Figura 256 × 256 píxeles, 256 niveles de gris (8 bits). (matriz cuadrada 𝑋 de orden 256 con valores enteros entre 0 y 255, ≃ 65536 Kb). Por ejemplo:

𝑋(100:110,100:110) =

105 108 109 107 109 104 106 108 108 108 108 103 108 104 109 105 112 105 107 107 107 107 101 103 109 105 107 110 108 106 107 106 106 102 100 114 105 107 105 108 107 107 106 106 116 100 109 110 102 108 105 108 107 106 107 150 101 103 107 105 108 107 107 107 107 107 194 109 103 104 110 106 109 106 107 106 106 223 121 101 110 106 108 107 108 106 105 105 221 165 104 102 107 105 105 105 104 105 102 182 220 105 107 109 101 105 104 105 107 107 162 233 137 100 102 109 101 104 105 109 110

5

Una computación clásica es una aplicación 𝑓:𝑩𝑛 → 𝑩𝑚 (tipo 𝑛 → 𝑚).

El número de computaciones de tipo 𝑛 → 𝑚 es (2𝑚)2𝑛. Por ejemplo: #{8 → 8} = 256256 (617 cifras decimales).

+(𝑥, 𝑦) = 𝑥𝑦� ∨ �̅�𝑦 = 𝑥𝑦����� �̅�𝑦������������ , +�(𝑥, 𝑦) = 𝑥𝑦����� �̅�𝑦����

2 → 1 𝑥 𝑦 𝑓1 𝑓2 𝑓3 𝑓4 𝑓5 𝑓6 𝑓7 𝑓8 𝑓9 𝑓10 𝑓11 𝑓12 𝑓13 𝑓14 𝑓15 𝑓16 0 0 0 1 0 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 1 1 0 1 1 0 1 1 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 1 0 1 1 1 1 𝟎 �̅�𝑦� 𝑥𝑦� �̅�𝑦 𝑥𝑦 𝑦� �̅� +� + 𝑥 𝑦 𝑥𝑦��� �̅�𝑦���� 𝑥𝑦� ���� �̅�𝑦� ���� 𝟎� XOR NAND ∨ 𝟏

1 → 1 𝑥 𝑓1 𝑓2 𝑓3 𝑓4 0 0 1 0 1 1 0 0 1 1 0 �̅� 𝑥 1

Ley de Morgan

6

< Toda computación se puede resolver en una secuencia de operaciones booleanas.

Ejemplo. Consideremos la computación

𝑓:𝑩3 → 𝑩,

𝟏𝟏𝟏, 011, 101, 110 ↦ 1

𝟎𝟎𝟎, 100, 010, 001 ↦ 0

(descodificador del código [1,3] de repeti-ción). Entonces

𝑓(𝑥𝑦𝑧) = 𝑥𝑦𝑧 ∨ �̅�𝑦𝑧 ∨ 𝑥𝑦�𝑧 ∨ 𝑥𝑦𝑧̅

= 𝑦𝑧 ∨ 𝑥(𝑦�𝑧 ∨ 𝑦𝑧̅)

7

< Toda computación se puede resolver en una secuencia de puertas lógicas elementales:

NOT[𝑗](𝑏1, … ,𝑏𝑛) = 𝑏�𝑗

NAND[𝑗, 𝑘] (𝑏1, … , 𝑏𝑛) = 𝑏𝚥 · 𝑏𝑘�������� = 𝑏�𝑗 ∨ 𝑏�𝑘

< Toda computación se puede incrustar en una computación de tipo 𝑛 → 𝑛 reversible (biyectiva).

Ejemplo.

AND(𝑥, 𝑦, 𝑧) = (𝑥, 𝑦, 𝑥𝑦) if 𝑧 = 0, = (𝑥, 𝑦, 𝑧) if 𝑧 = 1.

𝒙 00 01 10 11 AND 0 0 0 1

𝒙 𝟎𝟎0 𝟎𝟏0 𝟏𝟎0 𝟏𝟏0 001 011 101 111 AND 00𝟎 01𝟎 10𝟎 11𝟏 001 011 101 111

8

Notaciones

ℝ, ℂ

Si 𝜉 = 𝑎 + 𝑏𝑖 ∈ ℂ , 𝜉̅ = 𝑎 − 𝑏𝑖 es el conjugado de 𝜉.

< 𝜉̅𝜉 = (𝑎 − 𝑏𝑖)(𝑎 + 𝑏𝑖) = 𝑎2 + 𝑏2 = |𝜉|2, siendo |𝜉| = √𝑎2 + 𝑏2 el módulo de 𝜉.

< Los números complejos de módulo 1 tienen la forma (Euler)

𝑒𝑖𝜑 = cos𝜑 + 𝑖 sin𝜑, 𝜑 ∈ ℝ (factores de fase, o fasores).

Forman un grupo con el producto (el grupo 𝑈(1) = 𝑆1):

𝑒𝑖𝜑 · 𝑒𝑖𝜑′ = 𝑒𝑖(𝜑+𝜑′).

< Si 𝜉 ∈ ℂ − {0}, existe un único 𝜑 ∈ [0,2𝜋), el argumento de 𝜉, tal que

𝜉 = |𝜉|𝑒𝑖𝜑 (forma polar de 𝜉).

9

Espacio Hermítico

Es un espacio vectorial complejo 𝐸 dotado de un producto escalar ⟨𝒙|𝒚⟩ tal que

1. ⟨𝒙|𝜉𝒚 + 𝜉′𝒚′⟩ = 𝜉⟨𝒙|𝒚⟩ + 𝜉′⟨𝒙|𝒚′⟩, 𝜉, 𝜉′ ∈ ℂ 2. ⟨𝒙|𝒚⟩ = ⟨𝒚|𝒙⟩�������

⇒ ⟨𝜉𝒙 + 𝜉′𝒙′|𝒚⟩ = 𝜉̅⟨𝒙|𝒚⟩ + 𝜉′�⟨𝒙′|𝒚⟩; ⟨𝒙|𝒙⟩ ∈ ℝ

3. ⟨𝒙|𝒙⟩ ≥ 0, con igualdad si y sólo si 𝒙 = 0.

La norma |𝒙| de un vector 𝒙 ∈ 𝐸 se define como �⟨𝒙|𝒙⟩. Así, pues,

|𝒙| > 0 si 𝒙 ≠ 0 y |𝟎| = 0.

< Si 𝜉 ∈ ℂ y 𝒙 ∈ 𝐸, entonces |𝜉𝒙| = |𝜉||𝒙|.

En efecto, |𝜉𝒙|2 = ⟨𝜉𝒙|𝜉𝒙⟩ = 𝜉̅𝜉⟨𝒙|𝒙⟩ = |𝜉|2|𝒙|2. □

Cuando |𝒙| = 1, decimos que 𝒙 es unitario.

< Si 𝒙 ∈ 𝐸 − {0}, y ponemos 𝒙� = 𝒙/|𝒙|, entonces 𝒙� es unitario. □

10

Ejemplo. ℂ𝑛, con el producto escalar

⟨𝝃|𝜼⟩ = 𝜉1̅𝜂1 + ⋯+ 𝜉�̅�𝜂𝑛 .

En este caso,

|𝝃|2 = 𝜉1̅𝜉1 + ⋯+ 𝜉�̅�𝜉𝑛 = |𝜉1|2 + ⋯+ |𝜉𝑛|2.

ℂ2 (espacio de espinores) tiene un papel destacado en lo que sigue.

El adjunto de un operador lineal 𝐴:𝐸 → 𝐸 es el operador 𝐴†:𝐸 → 𝐸 defi-nido por �𝒙�𝐴†𝒚� = ⟨𝐴𝒙|𝒚⟩. Si 𝐴† = 𝐴, decimos que es autoadjunto. Un operador lineal 𝑈:𝐸 → 𝐸 es unitario si ⟨𝑈𝒙|𝑈𝒚⟩ = ⟨𝒙|𝒚⟩ (⇔ 𝑈†𝑈 = 𝐼𝑑).

< Si 𝐹 ⊆ 𝐸 es un subespacio vectorial y 𝒙 ∈ 𝐸, existe un único vector 𝒙′ ∈ 𝐹 tal que 𝒙′′ = 𝒙 − 𝒙′ ∈ 𝐹⊥, es decir, ⟨𝒙′′|𝒚⟩ = 0 para todo 𝒚 ∈ 𝐹. El vector 𝒙′ (denotado 𝜋𝐹(𝒙)) se llama proyección ortogonal de 𝒙 en 𝐹.

< El operador 𝜋𝐹:𝐸 → 𝐸 es autoadjunto.

11

PRESENTACIÓN AXIOMÁTICA DE LA FÍSICA CUÁNTICA

Q1 (q-Estados). < Un sistema cuántico Σ queda caracterizado por un es-pacio vectorial hermítico 𝐸. Los vectores 𝒙 ∈ 𝐸 − {0} representan esta-dos (puros) de Σ. Dos vectores 𝒙,𝒚 ∈ 𝐸 − {0} representan el mismo es-tado si y sólo si existe 𝜉 ∈ ℂ tal que 𝒚 = 𝜉𝒙. □

Nota. Para los sistemas requeridos en este abecé de la computación cuántica, podemos suponer (y supondremos) que 𝐸 es de dimensión fini-ta.

En términos matemáticos, el espacio de estados de Σ es el espacio pro-yectivo asociado a 𝐸, 𝐏𝐸, y el estado (punto) correspondiente a 𝒙 se sue-le denotar [𝒙]. En física se suele denotar |𝒙⟩ (notación “ket” de Dirac).

< Si 𝒙 ∈ 𝐸 − {0}, |𝒙⟩ = |𝒙�⟩. Es decir, todo estado se puede representar por un vector unitario 𝒖 = 𝒙�.

< Dos vectores unitarios 𝒖 y 𝒖′ representan el mismo estado si y sólo si

12

𝒖′ = 𝑒𝑖𝜑𝒖 para algún 𝜑 ∈ ℝ.

Superposición cuántica

Si 𝒖,𝒖′ ∈ 𝐸 − {0}, el estado

|𝜉𝒖 + 𝜉′𝒖′⟩

se suele denotar (¡abuso de notación!)

𝜉|𝒖⟩ + 𝜉′|𝒖′⟩

y se dice que es superposición de |𝒖⟩ y |𝒖′⟩ (con coeficientes 𝜉 y 𝜉′).

Por ejemplo, si 𝒖𝑗 (𝑗 = 0, … ,𝑛 − 1) es la base estándar de ℂ𝑛, y 𝝃 ∈ ℂ𝑛, podemos poner

|𝝃⟩ = |𝜉0𝒖0 + ⋯+ 𝜉𝑛−1𝒖𝑛−1⟩

= 𝜉0|𝒖0⟩ + ⋯+ 𝜉𝑛−1|𝒖𝑛−1⟩

= 𝜉0|0⟩+ ⋯+ 𝜉𝑛−1|𝑛 − 1⟩

(usualmente se escribe |𝑗⟩ en lugar de |𝒖𝑗⟩).

13

Q2 (q-Observables)

< Un q-observable de Σ es un conjunto de pares

𝐴 = �𝑎𝑗 ,𝐸𝑗�, 𝑗 = 1, … , 𝑟, tales que:

Los 𝑎𝑗 son números reales distintos (valores del observable); y

Los 𝐸𝑗 son subespacios vectoriales de 𝐸, 2 a 2 ortogonales, con

𝐸 =⊕𝑗 𝐸𝑗 . □

Una observación o medida de 𝐴, cuando el estado de Σ es |𝒖⟩, consiste en

(i) seleccionar un valor 𝑎𝑗 con probabilidad 𝑝𝑗 = �𝜋𝐸𝑗𝒖�2

, y

(ii) cambiar el estado |𝒖⟩ de Σ al estado |𝜋𝐸𝑗𝒖⟩).

En particular, si 𝒖 ∈ 𝐸𝑗 , entonces la observación suministra 𝑎𝑗 con proba-bilidad 1 y Σ permanece en el estado |𝒖⟩.

Nota. ∑ 𝑝𝑗𝑗 = ∑ �𝜋𝐸𝑗𝒖�2

𝑗 = �∑ 𝜋𝐸𝑗𝒖𝑗 �2

= |𝒖|2 = 1.

14

< A cada observable 𝐴 se le pueden asignar el operador autoadjunto �̂� = ∑ 𝑎𝑗𝑃𝐸𝑗 𝑗 . Recíprocamente (teorema de representación espectral),

todo operador autoadjunto �̂� ∶ 𝐸 → 𝐸 da lugar a un observable formado con sus valores propios distintos 𝑎𝑗 y los correspondientes subespacios 𝐸𝑗 = 𝐸𝑎𝑗 de vectores propios. □

En lo que sigue no distinguiremos entre las dos representaciones.

15

Ejemplo (Eventualidades). Si 𝐹 es a subespacio de 𝐸, la proyección orto-gonal 𝑃𝐹:𝐸 → 𝐹 es un observable con valores 1 y 0: 𝐸1 = 𝐹, 𝐸0 = 𝐹⊥. Los observables de esta forma se denominan eventualidades. También son importantes los observables de la forma {{1,𝐹}, {−1,𝐹⊥}} , o 𝑃𝐹 − 𝑃𝐹⊥ .

Izquierda:Experimento de Stern-Gerlach (1922). Derecha, arriba: Polarización de la luz. Abajo: Espectro del He

16

Q3 (Dinámica unitaria)

<Si Σ está en un ambiente no-reactivo (i.e., el ambiente no es afectado por Σ) en el intervalo temporal [0, 𝑡], existe un operator unitario

𝑈𝑡 :𝐸 → 𝐸

tal que 𝒖𝑡 = 𝑈𝑡𝒖0 representa el estado de Σ en el instante 𝑡 si 𝒖0 ∈ 𝐸 representa el estado de Σ en el instante 𝑡 = 0. □

Si 𝑈𝑡 = 𝑒−𝑖𝐻𝑡 , siendo 𝐻 un observable, decimos que la evolución es ha-miltoniana, y que 𝐻 es el hamiltoniano del sistema.

Nota. 𝑈𝑡𝑈𝑡† = 𝑒−𝑖𝐻𝑡�𝑒−𝑖𝐻𝑡�

†= 𝑒−𝑖𝐻𝑡𝑒+𝑖𝐻†𝑡 = 𝐼𝑑.

17

Q4 (Entrelazamiento)

<Si Σ′ es un segundo sistema cuántico, y 𝐸′ es el espacio que lo caracte-riza, entonces 𝐸 ⊗ 𝐸′ es el espacio que caracteriza el sistema compuesto Σ ∗ Σ′. □

De los estados de la forma |𝒖⊗ 𝒖′⟩ = |𝒖⟩|𝒖′⟩ se dice que son estados compuestos. Los otros estados de Σ ∗ Σ′ son estados entrelazados (en-tangled). Por ejemplo, si |𝒖0⟩ y |𝒖1⟩ son estados ortogonales de Σ, y |𝒖0′ ⟩ y |𝒖1′ ⟩ estados ortogonales de Σ′, entonces

|𝒖0 ⊗ 𝒖0′ + 𝒖1 ⊗ 𝒖1′ ⟩ = |𝒖0⟩|𝒖0′ ⟩ + |𝒖1⟩|𝒖1′ ⟩

es un estado entrelazado.

18

q-bits (qubits)

Los estados de una partícula de espín ½ (sistema Σ(1)) se pueden pensar como los puntos de una esfera 𝑆2 de radio 1 (en unidades apropiadas).

<El espacio asociado a este sistema (Q1) es 𝑯(1) = ℂ2 (espinores).

Este hecho se puede argumentar como sigue.

𝑥

𝑦

𝑧

𝜉 = 𝑥 + 𝑖𝑦

𝑃𝜉

𝑁

19

Identifiquemos 𝜉 = 𝑥 + 𝑖𝑦 ∈ ℂ con el punto (𝑥, 𝑦, 0) ∈ ℝ3 y conside-remos el punto 𝑃 = 𝑃𝜉 de

𝑆2 = {(𝑥, 𝑦, 𝑧) ∈ ℝ3|𝑥2 + 𝑦2 + 𝑧2 = 1}

obtenido por proyección estereográfica desde 𝑁 = (0,0,1):

𝑃 = � 2𝑥𝑥2+𝑦2+1

, 2𝑦𝑥2+𝑦2+1

, 𝑥2+𝑦2−1

𝑥2+𝑦2+1�.

Poniendo 𝑃∞ = 𝑁, se tiene una biyección entre ℂ� = ℂ ∪ {∞} y 𝑆2.

La aplicación inversa viene dada por

(𝑥,𝑦, 𝑧) ↦ 𝑥1−𝑧

+ 𝑖 𝑦1−𝑧

.

Si ponemos 𝑥 + 𝑖𝑦 = �𝑥2 + 𝑦2𝑒𝑖𝜑 = √1− 𝑧2𝑒𝑖𝜑, entonces

𝑥1−𝑧

+ 𝑖 𝑦1−𝑧

= �1+𝑧1−𝑧

𝑒𝑖𝜑 = 𝑒𝑖𝜑 cot 𝜃2

(𝜃 = 𝑃𝑁� ).

20

Por otra parte también tenemos ℂ� ≃ 𝐏ℂ2 = 𝐏ℂ1 , pues cualquier (𝜉0, 𝜉1) ∈ ℂ2 es proporcional a un único vector de la forma (1, 𝜉) cuando 𝜉0 ≠ 0 (𝜉 = 𝜉1/𝜉0), y a (0,1) si 𝜉0 = 0, con lo cual tenemos una aplicación

ℂ� → 𝐏ℂ1 , 𝜉 ↦ |(1,𝜉)⟩ = |0⟩ + 𝜉|1⟩, ∞ ↦ |(0,1)⟩ = |1⟩.

La aplicación inversa es la aplicación dada por

|(𝜉0, 𝜉1)⟩ = 𝜉0|0⟩+ 𝜉1|1⟩ =↦ �𝜉1/𝜉0 si 𝜉0 ≠ 0∞ si 𝜉0 = 0

Finalmente, la identificación 𝑆2 ≃ ℂ� ≃ 𝐏ℂ1 queda descrita por las relacio-nes:

(𝑥,𝑦, 𝑧) ↦ |0⟩ + �𝑥

1− 𝑧 + 𝑖𝑦

1 − 𝑧�|1⟩ = |0⟩+ 𝑒𝑖𝜑 cot

𝜃2

|1⟩

= sin 𝜃2

|0⟩ + 𝑒𝑖𝜑 cos 𝜃2

|1⟩ , si 𝑧 ≠ 1;

𝑁 = (0,0,1) ↦ |1⟩.

21

Comentario. La esfera 𝑆2, con la estructura de 𝐏ℂ1, se conoce como la es-fera de Riemann. En la literatura sobre computación cuántica se suele llamar esfera de Bloch.

22

<En ℂ2, dos puntos antipodades de 𝑆2 son ortogonales.

Hemos visto que el punto 𝑃 = (𝑥, 𝑦, 𝑧) ∈ 𝑆2, considerado como un esta-do (punto de 𝐏ℂ1), es representado por el vector

𝒑 = (𝑠, 𝜉𝑐), 𝑠 = sin 𝜃/2, 𝑐 = cos𝜃/2, 𝜉 = 𝑒𝑖𝜑.

La misma regla nos da que el punto antípoda 𝑃∗ = (−𝑥,−𝑦,−𝑧) es re-presentado por el vector 𝒑⊥ = (𝑐,−𝜉𝑠), y ⟨𝒑| 𝒑⊥⟩ = 𝑠𝑐 − 𝑠𝑐 = 0. □

Comentario. El observable 𝜋𝒑 − 𝜋𝒑⊥ nos indica que la probabilidad de

hallar que el espín es |𝒑⟩, cuando el estado de Σ(1) es |𝒑′⟩, es

�𝜋𝒑(𝒑′)�2

= |⟨𝒑′|𝒑⟩|2 = cos2 𝛼2

siendo cos𝛼 = 𝑃 · 𝑃′ (es decir, cos2 𝛼2

= 1+cos𝛼2

= 1+𝑥𝑥′+𝑦𝑦′+𝑧𝑧′2

). Estas

afirmaciones se comprueban sin dificultad con simples cálculos.

23

q-Registros

Por el axioma Q4 el espacio 𝑯(𝑛) ≃ 𝑯(1) ⊗⋯⊗𝑯(1) ≃ ℂ2𝑛 es el espa-cio asociado al sistema Σ(𝑛) = Σ(1) ∗ ⋯∗ Σ(1) (𝑛 términos) compuesto de 𝑛 sistemas Σ(1). Diremos que Σ(𝑛) es un q-registro de orden 𝑛.

Por el axioma Q3, la evolución temporal de Σ(𝑛) viene dada por una ma-triz unitaria de orden 2𝑛.

Juan Ignacio Cirac. Físico español (Manresa, 1965) que trabaja en Alemania. Líder mundial en el campo de la información cuántica y sus apli-caciones. … http://www.arbolmat.com/juan-ignacio-cirac/

24

COMPUTACIÓN CUÁNTICA EN TÉRMINOS MATEMÁTICOS • 𝑛 número entero positivo (número de bits o q-bits) • 𝑗 número entero positivo en 0 ·· (2𝑛 − 1) • 𝑗1𝑗2 ⋯ 𝑗𝑛−1𝑗𝑛 expresión binaria de 𝑗

(𝑗 = 𝑗12𝑛−1 + ⋯+ 𝑗𝑛−12 + 𝑗𝑛) • 𝑯(𝑛) = ℂ2𝑛: espacio de 𝑞-vectores de orden 𝑛 .

Son vectores complejos 𝒂 = ∑ 𝑎𝑗𝒖𝑗𝑗 = ∑ 𝑎𝑗𝑗 |𝑗⟩ (notación de Dirac) de 2𝑛 componentes:

𝒂 ≡ �

𝑎0𝑎1⋮

𝑎2𝑛−1

�; 𝒖0 = �

10⋮0

� = |0⟩, 𝒖1 = �

01⋮0

� = |1⟩, 𝒖2𝑛−1 = �

00⋮1

� = |2𝑛 − 1⟩

• Si 𝒃 = ∑ 𝑏𝑗𝑗 |𝑗⟩ es otro 𝑞-vector, y 𝑐 ∈ ℂ, 𝒂 + 𝒃 = ∑ �𝑎𝑗 + 𝑏𝑗�𝑗 |𝑗⟩ , 𝑐𝒂 = ∑ 𝑐𝑎𝑗𝑗 |𝑗⟩, ⟨𝒂|𝒃⟩ = ∑ 𝑎�𝑗𝑏𝑗𝑗 .

⟨𝑗|𝑘⟩ = 𝛿𝑗𝑘 ( |0⟩, |1⟩, …, |2𝑛 − 1⟩ es una base ortonormal )

25

Ejemplo (𝑛 = 1)

𝒂 = 𝑎0|0⟩+ 𝑎1|1⟩ ≡ �𝑎0𝑎1� = 𝑎0 �

10� + 𝑎1 �

01�.

Ejemplo (𝑛 = 2) 𝒂 = 𝑎0|0⟩+ 𝑎1|1⟩+ 𝑎2|2⟩+ 𝑎3|3⟩ = 𝑎00|00⟩+ 𝑎01|01⟩+ 𝑎10|10⟩+ 𝑎11|11⟩

≡ �

𝑎0𝑎1𝑎2𝑎3

� = �

𝑎00𝑎01𝑎10𝑎11

� = 𝑎00 �

1000

�+ 𝑎01 �

0100

� + 𝑎10 �

0010

� + 𝑎11 �

0001

Proposición

|𝑗1𝑗2⟩ = |𝑗1⟩ ⊗ |𝑗2⟩ ≡ |𝑗1⟩|𝑗2⟩, donde �𝑎0𝑎1� ⊗ �𝑏0𝑏1

� = �

𝑎0𝑏0𝑎0𝑏1𝑎1𝑏0𝑎1𝑏1

�.

Corolario. 𝑯(2) ≃ 𝑯(1) ⊗𝑯(1).

26

Demostración

|0⟩ ⊗ |0⟩ = �10� ⊗ �10� = �

1000

� = |00⟩

|0⟩ ⊗ |1⟩ = �10� ⊗ �01� = �

0100

� = |01⟩

|1⟩ ⊗ |0⟩ = �01� ⊗ �10� = �

0010

� = |10⟩

|1⟩ ⊗ |1⟩ = �01� ⊗ �01� = �

0001

� = |11⟩

27

En general, 𝑯(𝑛) ⊗𝑯(𝑛′) = 𝑯(𝑛+𝑛′), con

�∑ 𝑎𝑗|𝑗⟩𝑗 � ⊗ �∑ 𝑎𝑗′|𝑗′⟩𝑗′ � = ∑ 𝑎𝑗𝑎𝑗′𝑗,𝑗′ �𝑗2𝑛′ + 𝑗′⟩

= ∑ 𝑎𝑗𝑎𝑗′𝑗,𝑗′ |𝑗𝑗′⟩ .

En particular se tiene

𝑯(𝑛) ≃ 𝑯(1) ⊗⋯⊗𝑯(1)

|𝑗1 ⋯ 𝑗𝑛−1𝑗𝑛⟩ = |𝑗1⟩ ⊗⋯⊗ |𝑗𝑛−1⟩ ⊗ |𝑗𝑛⟩

≡ |𝑗1⟩⋯ |𝑗𝑛−1⟩|𝑗𝑛⟩

Concatenación de las expresiones binarias de 𝑗 y 𝑗′.

28

q-Computaciones

Si 𝑈 = �𝑢𝑗𝑘� es una matriz, su traspuesta es 𝑈𝑇 = �𝑢𝑘𝑗� y su adjunta

𝑈† = �𝑢�𝑘𝑗� = 𝑈𝑇����.

Una 𝑞-computación de orden n es una matriz

𝑈 = �𝑢𝑗𝑘�0≤𝑗,𝑘<2𝑛 , 𝑢𝑗𝑘 ∈ ℂ, tal que 𝑈𝑈† = 𝐼2𝑛

(esto es, 𝑈 es una matriz unitaria de dimensión 2𝑛: 𝑈 ∈ 𝑼(2𝑛) = 𝑼(𝑛)).

• Si 𝑈,𝑉 ∈ 𝑼(𝑛), 𝑉𝑈 ∈ 𝑼(𝑛) y 𝑈−1 = 𝑈†. En otras palabras, Identidad. 𝐼2𝑛 ∈ 𝑼(𝑛). Composición. La composición de dos q-computaciones de orden 𝑛 es una q-computación de orden 𝑛; y Reversibilidad. La inversa de una q-computación de orden 𝑛 es una q-computación de orden 𝑛.

29

Un q-input para una q-computación 𝑈 es un vector 𝒂 ∈ 𝑯(𝑛) tal que ⟨𝒂|𝒂⟩ = 1 (vector unitario).

Ejemplo: 𝒉(𝑛) = (|0⟩ + |1⟩ + ⋯+ |2𝑛 − 1⟩)/√2𝑛

El q-output de una q-computación 𝑈 es el vector (unitario) 𝒃 = 𝑈𝒂.

Ejemplo. Si 𝑈 ∈ 𝑼(𝑛) y 𝑈′ ∈ 𝑼(𝑛′) entonces 𝑈⊗𝑈′:𝑼(𝑛+𝑛′), donde

(𝑈⊗𝑈′)(|𝑗⟩|𝑗′⟩) ↦ 𝑈|𝑗⟩ 𝑈′|𝑗′⟩ .

Similarmente, si 𝑈 ∈ 𝑼(1), entonces 𝑈⊗𝑛 ∈ 𝑼(𝑛), donde

𝑈⊗𝑛|𝑗⟩ = 𝑈|𝑗1⟩ 𝑈|𝑗2⟩⋯ 𝑈|𝑗𝑛⟩.

Ejemplo (q-computación asociada a una computación clásica). Dada una computación clásica de orden n, 𝑓:𝑩𝑛 → 𝑩𝑛 (𝑩 = {0,1}), podemos defi-nir una aplicación lineal 𝑈𝑓:𝑯(𝑛) → 𝑯(𝑛) por 𝑈𝑓|𝑗⟩ = |𝑓(𝑗)⟩. Si 𝑓 es re-versible, entonces 𝑈𝑓 es una q-computación. Diremos que 𝑈𝑓 es la 𝑞-computación correspondiente a la computación clásica reversible 𝑓.

30

Ejemplos (𝑛 = 1). Una q-computación de orden 1 es una matriz 𝑈 ∈ 𝑼(1), i.e., una matriz de la forma

𝑈 = 𝑒𝑖𝛼 � 𝑢0 𝑢1−𝑢�1 𝑢�0�, 𝛼 ∈ ℝ, 𝑢0,𝑢1 ∈ ℂ, 𝑢0𝑢�0 + 𝑢1𝑢�1 = 1.

𝑈 �𝑎0𝑏0� = 𝑒𝑖𝛼 �

𝑢0𝑎0 + 𝑢1𝑎1−𝑢�1𝑎0 + 𝑢�0𝑎1

Nota. Es fácil comprobar que 𝑒𝑖𝛼 � 𝑢0 𝑢1−𝑢�1 𝑢�0� es unitaria y no es difícil ver

toda matriz unitaria de orden 2 tiene esta forma.

Comentario. Las únicas computaciones clásicas reversibles 1 → 1 son la identidad (𝑏 ↦ 𝑏) y la negación (𝑏 ↦ 1 + 𝑏).

31

Casos especiales: a) Matrices Pauli

𝐼2 = �1 00 1�, 𝑋 = 𝜎𝑥 = �0 1

1 0�, 𝑌 = 𝜎𝑦 = �0 −𝑖𝑖 0�, 𝑍 = 𝜎𝑧 = �−1 0

0 1�

⇛ 𝑋|0⟩ = |1⟩, 𝑋|1⟩ = |0⟩ 𝑋 = 𝑁𝑂𝑇 = 𝑁

Nota. Las matrices de Pauli son auto-adjuntas y 𝑋2 = 𝑌2 = 𝑍2 = 𝐼2.

b) Matriz de Hadamard

𝐻 = 1√2�1 11 −1� �

|0⟩ ↦ (|0⟩ + |1⟩)/√2 |1⟩ ↦ (|0⟩ − |1⟩)/√2

Pondremos HADAMARD[𝑛] ≡ 𝐻⊗𝑛: |𝑗1 ··· 𝑗𝑛⟩ ↦ 𝐻|𝑗1⟩ ··· 𝐻|𝑗𝑛⟩

c) Matrices de desplazamiento de fase (phase shift)

𝑆𝛼 = �1 00 𝑒𝑖𝛼� = 𝑒𝑖𝛼/2 �𝑒

−𝑖𝛼/2 00 𝑒𝑖𝛼/2�

En particular, 𝑆 = 𝑆𝜋/2 = �1 00 𝑖 � y 𝑇 = 𝑆𝜋/4 = �1 0

0 𝑒𝑖𝜋/4�

32

Ejemplos (𝑛 = 2)

Sea 𝑈 ∈ 𝑼(1). Definimos 𝐶12(𝑈) ∈ 𝑼(2) como sigue:

𝐶12(𝑈)|0𝑗2⟩ =|0𝑗2⟩, 𝐶12(𝑈)|1𝑗2⟩ =|1⟩𝑈|𝑗2⟩. Si = �𝑢00 𝑢01𝑢10 𝑢11� , entonces

𝐶12(𝑈) = �

1 0 0 00 1 0 0

0 0 𝑢00 𝑢01 0 0 𝑢10 𝑢11

En particular ponemos 𝐶12 = 𝐶12(𝑁):

𝐶12|0𝑗2⟩ =|0𝑗2⟩, 𝐶12|1𝑗2⟩ =|1⟩|1 + 𝑗2⟩ :

𝐶01 = �

1 0 0 00 1 0 00 0 0 10 0 1 0

No cambia el segundo bit o lo niega según que el primer bit sea 0 o 1. Es una negación conditional (CONTROLLED-NOT=CNOT)

33

𝐶21(𝑈) se define de manera análoga. Por ejemplo,

𝐶21 = 𝐶21(𝑁) = �

0 1 0 01 0 0 00 0 1 00 0 0 1

𝐶21(𝛼) = 𝐶21(𝑆𝛼) = �

1 0 0 00 𝑒𝑖𝛼 0 00 0 1 00 0 0 1

Ejemplo (Teorema de no-clonación). No existe ninguna q-computación U de orden 2 que satisfaga 𝑈(|𝑏⟩|0⟩) = |𝑏⟩|𝑏⟩ para cualquier |𝑏⟩ ∈ 𝑯(1).

En efecto, consideremos |ℎ⟩ = 𝜌(|𝑏⟩ + |𝑏′⟩), 𝑏′ = 1 + 𝑏, 𝜌 = 1/√2; el cálculo siguiente indica que la existencia de 𝑈 lleva a una contradicción:

𝑈(|ℎ⟩|0⟩) = �|ℎ⟩|ℎ⟩ = 𝜌2(|𝑏⟩|𝑏⟩+ |𝑏⟩|𝑏′⟩ + |𝑏′⟩|𝑏⟩ + |𝑏′⟩|𝑏′⟩)𝜌𝑈(|𝑏⟩|0⟩ + |𝑏′⟩|0⟩) = 𝜌(|𝑏⟩|𝑏⟩+ |𝑏′⟩|𝑏′⟩).

34

q-Observaciones (o medidas)

𝒂 ∈ 𝑯(𝑛) un vector unitario (q-estado actual).

𝐿 = {𝑙1, … , 𝑙𝑟 } ⊆ {1, … , 𝑛}.

Si 𝑀 = 𝑚1𝑚2⋯𝑚𝑟 es un vector binario de orden 𝑟, sea 𝐸𝑀 ⊆ 𝑯(𝑛) el subespacio generado por los |𝑗⟩ tales que 𝑗𝐿 = 𝑀, 𝑗𝐿 = 𝑗𝑙1𝑗𝑙2 ⋯ 𝑗𝑙𝑟. En-tonces el conjunto de pares {𝑀,𝐸𝑀}, 𝑀 ∈ 𝑩𝑟, es un observable 𝐴𝐿.

Una q-observación de los q-bits de las posiciones 𝐿 es una q-observación de 𝐴𝐿, que denotaremos 𝑀𝐿(𝒂). Dado que 𝒂𝐿𝑀: = ∑ 𝑎𝑗|𝑗⟩𝑗𝐿=𝑀 = 𝜋𝐸𝑀𝒂, 𝑀𝐿(𝒂) queda definida por dos efectos: (i) Selección de un 𝑀 ∈ 𝑩𝑟 con

probabilidad 𝑝𝑀 = �𝒂𝐿𝑀�2 y, (ii) si 𝑀 es el resultado obtenido, el q-estado

𝒂 se cambia por el q-estado |𝒂𝐿𝑀�.

Los vectores 𝒂𝐿𝑀 serán denominados colapsos de 𝑀𝐿(𝒂).N1

35

Ejemplos. Consideremos el caso 𝑛 = 3. En la observación del q-bit 3, 𝑀3(𝒂), hay dos valores posibles, 0 y 1, sus colapsos son

𝒂30 = ∑ 𝑎𝑗1𝑗20|𝑗1𝑗20⟩𝑗1𝑗2 y 𝒂31 = ∑ 𝑎𝑗1𝑗21|𝑗1𝑗21⟩𝑗1𝑗2 (𝒂 = 𝒂30 + 𝒂31)

y sus probabilidades 𝑝0 = �𝒂30�2

y 𝑝1 = �𝒂31�2

.

Similarmente, para 𝑀13(𝒂) se tienen cuatro resultados posibles y los co-rrespondientes colapsos son

𝒂13𝑟𝑠 = 𝑎𝑟0𝑠|𝑟0𝑠⟩ + 𝑎𝑟1𝑠|𝑟1𝑠⟩ (𝑟, 𝑠 ∈ 𝑩),

con probabilidades

𝑝𝑟𝑠 = |𝒂13𝑟𝑠 |2.

Nótese que 𝒂 = 𝒂1300 + 𝒂1310 + 𝒂1301 + 𝒂1311 = ∑ 𝒂13𝑟𝑠𝑟,𝑠 .

Ejemplo. En el caso de medir todos los q-bits, 𝑀{1,…,𝑛}(𝒂), los valores po-sibles son los 2𝑛 números 𝑚 ∈ 𝑩𝑛, los colapsos son los vectores 𝑎𝑚|𝑚⟩ y la probabilidad del resultado 𝑚 es 𝑝𝑚 = |𝑎𝑚|2.

36

q-Procedimientos

Un q-procedimiento es una secuencia de acciones, cada una de las cuales es o una q-computación o una q-observación, que se aplican sucesiva-mente al q-estado, inicialmente |0 … 0⟩.

Puesto que los q-procedimientos se diseñan para producir resultados, usualmente la última acción es una q-observación.

Comentarios. Siendo las q-observaciones procesos aleatorios, en general los q-procedimientos son probabilísticos. Esto conlleva que se ha de comprobar si el resultado suministrado satisface las condiciones requeri-das y repetir el q-procedimiento mientras no las cumpla.

En algunos casos puede ser exacto, en el sentido que la probabilidad del resultado es 1.

37

q-Procedimientos elementales

0. q-Memoria Para el q-estado 𝒂. Input: 𝐼(𝒂). Por defecto, |0 … 0⟩.

1. Rotaciones de un q-bit, 𝑅𝑙(𝑈), 𝑈 ∈ 𝑼(1) (puertas 𝑈) 𝑅2(𝑈)|011⟩ = |0⟩ 𝑈|1⟩ |1⟩.

2. Negaciones controladas 𝑁𝑟,𝑠 (puertas CNOT) |⋯1𝑟 ⋯0𝑠 ⋯⟩ ↦ |⋯1𝑟 ⋯1𝑠 ⋯⟩

|⋯1𝑟 ⋯1𝑠 ⋯⟩ ↦ |⋯1𝑟 ⋯0𝑠 ⋯⟩

3. 𝑀𝐿(𝒂)

Suministra un 𝑀 ∈ 𝐵𝑟 con probabilidad 𝑝𝑀 = |𝒂𝐿𝑀|2 y pone la q-memoria en el q-estado 𝒖(𝒂𝐿𝑀).

38

q-Algoritmos

Un q-algoritmo es un q-procedimiento formado únicamente con q-procedimientos elementales. La complejidad de un q-algoritmo es el nú-mero de q-procedimientos (elementales) que lo componen. De un q-algoritmo se dice que es interno si no contiene q-observaciones.

Un q-algoritmo es exacto si la probabilidad de su output es 1, y probabi-lista en otro caso.

Ejemplo (Trasposición de 2 q-bits)

SWAP[𝑗,𝑘]

𝐶𝑗,𝑘 ,𝐶𝑘,𝑗 ,𝐶𝑗,𝑘 .

Comentario. SWAP es interno y su complejidad es 3.

39

Teorema (Universalidad de las q-puertas 𝑈 y CNOT)

Toda q-computación se puede realizar mediante un q-algoritmo interno.

Diremos que un q-algoritmo es restringido si las operaciones 𝑅𝑙(𝑈) que aparecen sólo usan 𝑈 ∈ {𝐻, 𝑆,𝑇}, siendo

𝐻 = 1√2�1 11 −1� , 𝑆 = 𝑆𝜋/2 = �1 0

0 𝑖 � , 𝑇 = 𝑆𝜋/4 = �1 00 𝑒𝑖𝜋/4� .

Teorema (Universalidad aproximada de las q-puertas 𝐻, 𝑆,𝑇 y CNOT)

Toda q-computación se puede realizar, con tanta aproximación como deseemos, mediante un q-algoritmo interno restringido.

La idea básica de la demostración es que toda 𝑈 ∈ 𝑼(1) se puede aproxi-mar, con cualquier precisión que deseemos, por un producto cuyos facto-res son matrices de {𝐻,𝑆,𝑇}.

Comentario. Todo algoritmo clásico se puede traducir de manera sencilla en un q-algoritmo con la misma complejidad.

40

COMPUTADORES CUÁNTICOS

De las observaciones precedentes se sigue que para ejecutar q-programas de orden 𝑛 en un soporte físico basta disponer de un registro cuántico Σ(𝑛) e “implementaciones” de las operaciones

𝑀𝐿(𝒂)

𝐶𝑙(𝑈) [con 𝑈 = 𝐻 , 𝑆 = 𝑆𝜋/2, 𝑇 = 𝑆𝜋/4 en el caso restringido]

𝐶𝑗,𝑘

Un computador cuántico (de orden 𝑛) es un registro cuántico Σ(𝑛) dotado de capacidad para efectuar tales operaciones. Un computador de esta naturaleza permite realizar (o aproximar tanto como queramos) cualquier q-computación.

41

ALGUNOS EJEMPLOS DE Q-ALGORITMOS

QFT La transformada de Fourier discreta de 𝑯(𝑛) es el operador lineal

𝐹:𝑯(𝑛) → 𝑯(𝑛) , 𝐹|𝑗⟩ = 1√2𝑛

∑ 𝜉𝑗𝑘|𝑘⟩𝑘 ,

siendo 𝜉 = 𝜉𝑛 = 𝑒2𝜋𝑖/2𝑛 = 𝑒𝜋𝑖/2𝑛−1. En forma matricial,

𝐹 = 𝜌𝑛 �

11⋮1

1𝜉⋮𝜉𝑚

⋯⋯⋮⋯

1𝜉𝑚⋮

𝜉𝑚2

� , 𝜌 = 1/√2, 𝑚 = 2𝑛 − 1.

Proposición. 𝐹 ∈ 𝑼(𝑛).

Demostración:

⟨ 𝐹|𝑗⟩ | 𝐹|𝑗′⟩ ⟩ = 12𝑛∑ 𝜉(𝑗′−𝑗)𝑘𝑘 = �1 Si 𝑗′ = 𝑗

0 Si 𝑗′ ≠ 𝑗 ,

ya que, si 𝑙 ≠ 0, ∑ 𝜉𝑙𝑘2𝑛−1𝑘=0 = (�𝜉𝑙�

2𝑛− 1)/(𝜉𝑙 − 1) = 0.

42

QFT N2

FOR 𝑙 ∈ {1, … ,𝑛}

𝑅𝑙(𝐻)

FOR 𝑠 ∈ {1, … , 𝑛 − 𝑙}

𝐶𝑙+𝑠,𝑙(𝑆𝜋/2𝑠)

FOR 𝑙 ∈ {1, … , ⌊𝑛 2⁄ ⌋}

SWAP[𝑙,𝑛 − 𝑙 + 1]. Teorema. QFT computa 𝐹.N3 Su complejidad es 𝑂(𝑛2). Nota. La clásica transformada de Fourier rápida, para vectores de dimen-sión 2𝑛, tiene complejidad 𝑂(𝑛2𝑛).

43

Ejemplos. a) 𝑛 = 1. En este caso 𝜉 = 𝑒𝜋𝑖 = −1, 𝐹 = 𝜌 �1 11 −1� = 𝐻 ,

que coincide con el valor suministrado por QFT.

b) 𝑛 = 2. Tenemos 𝜉 = 𝑒𝜋𝑖/2 = 𝑖 y por tanto

𝐹|𝑗1𝑗2⟩ = 𝜌2 ∑ 𝑖(𝑗12+𝑗2)(𝑘12+𝑘2)𝑘1,𝑘2 |𝑘1⟩|𝑘2⟩

= 𝜌2 ∑ 𝑖2𝑗1𝑘2+2𝑗2𝑘1+𝑗2𝑘2|𝑘1⟩|𝑘2⟩𝑘1,𝑘2

= 𝜌2 ∑ (−1)𝑗1𝑘2(−1)𝑗2𝑘1𝑖𝑗2𝑘2|𝑘1⟩|𝑘2⟩𝑘1,𝑘2

= 𝜌2�∑ (−1)𝑗2𝑘1|𝑘1⟩𝑘1 ��∑ (−1)𝑗1𝑘2𝑖𝑗2𝑘2|𝑘2⟩𝑘2 �

= 𝜌2�|0⟩ + (−1)𝑗2|1⟩��|0⟩ + (−1)𝑗1𝑖𝑗2|1⟩�.

Por otra parte, QFT equivale a la secuencia

𝑅1(𝐻),𝑅1,2 ,𝑅2(𝐻), SWAP[1,2],

la cual transforma |𝑗1𝑗2⟩ = |𝑗1⟩|𝑗2⟩ como sigue:

44

|𝑗1⟩|𝑗2⟩ ↦ 𝜌�|0⟩+ (−1)𝑗1|1⟩�|𝑗2⟩ ↦ 𝜌�|0⟩+ (−1)𝑗1𝑖𝑗2|1⟩�|𝑗2⟩

↦ 𝜌��0⟩+ (−1)𝑗1𝑖𝑗2�1⟩� 𝜌�|0⟩+ (−1)𝑗2|1⟩�

↦ 𝜌2�|0⟩ + (−1)𝑗2|1⟩���0⟩ + (−1)𝑗1𝑖𝑗2�1⟩�.

El siguiente diagrama es una representación gráfica de la QFT de orden 4:

45

Generador aleatorio de números en el intervalo 0 ·· (2𝑛 − 1) con distribución uniforme

RANDOM

𝐼�𝒉(𝑛)� = 𝐻⊗𝑛|0 … 0⟩

𝑀�𝒉(𝑛)� N4

Nótese que �𝑗�𝒉(𝑛)�2 = 1/2𝑛.

Comentario. 𝐻⊗𝑛|0 … 0⟩ = 𝐻|0⟩ ··· 𝐻|0⟩ = 1√2𝑛

∏ (|0⟩+ |1⟩)𝑛1

= 1√2𝑛

∑ |𝑗1⟩ ··· |𝑗𝑛⟩𝑗1,…,𝑗𝑛

= 1√2𝑛

∑ |𝑗⟩𝑗 = 𝒉(𝑛).

46

q-algoritmo de Deutsch

Sea 𝑓:𝑩𝑛 → 𝑩 una aplicación, y supongamos que sabemos que es o bien constante o bien equilibrada (esto significa que los conjuntos 𝑓−1(0) y 𝑓−1(1) tienen el mismo cardinal). El Problema de Deutsch consiste en decidir cuál de las dos posibilidades es la que realmente se da.

Comentario. En el procedimiento clásico pueden ser necesarios hasta 2𝑛−1 + 1 pasos para la decisión (complejidad exponencial).

El q-algoritmo de Deutsch es exacto y su complejidad es lineal:

DEUTSCH[𝑓] N5 |𝒂⟩ = 𝑁𝑛+1|0 … 0⟩|0⟩ |𝒂⟩ =HADAMARD|𝒂⟩ |𝒂⟩ = 𝑈𝑓|𝒂⟩

|𝒂⟩ =HADAMARD[𝑛] |𝒂⟩ 𝑀 = 𝑀{1,…,𝑛}|𝒂⟩ IF 𝑀 = 0 THEN Constante ELSE Equilibrada.

𝑈𝑓:𝑯(𝑛) × 𝑯(1) → 𝑯(𝑛) ×𝑯(1) por |𝑗⟩|𝑏⟩ ↦ |𝑗⟩|𝑏 + 𝑓(𝑗)⟩.

47

q-algoritmo de Grover

Supongamos que 𝑓:𝑩𝑛 → 𝑩 es una aplicación, y que 𝑓(𝑗) = 0 para todo 𝑗 excepto para un valor desconocido 𝑗 = 𝑡. Con un algoritmo clásico, la complejidad de hallar 𝑡 es 𝑂(2𝑛). El 𝑞-algoritmo de Grover halla 𝑡 con una complejidad 𝑂(√2𝑛).

Si 𝑈𝑓 es la 𝑞-computación definida en el q-algoritmo de Deutsch y pone-

mos 𝐺0|𝑗⟩ = � |0⟩ Si 𝑗 = 0−|𝑗⟩ Si 𝑗 ≠ 0 y 𝐷 = 𝐻⊗𝑛𝐺0𝐻⊗𝑛, entonces

GROVER[𝑓] N6 |𝒂⟩ = 𝐻⊗(𝑛+1)𝑁𝑛+1(|0 … 0⟩|0⟩) // |𝒂⟩ = 𝜌𝑛+1�∑ |𝑗⟩𝑗 �(|0⟩ − |1⟩)

REPEAT �𝜋4 √2𝑛�

|𝒂⟩ = 𝐷 𝑈𝑓 |𝒂⟩ 𝑀{1,…,𝑛}|𝒂⟩

48

q-algoritmo KITAEV (Estimación de fase)

Dado un operador unitario 𝑈 y un vector propio |𝒖⟩ de 𝑈 , este q-algoritmo halla una buena aproximación 𝜑� de la fase 𝜑 del correspon-diente valor propio 𝑒2𝜋𝑖𝜑.

KITAEV[𝑈,𝒖] N7

0. → |𝟎𝑚⟩|𝒖⟩ 1. HADAMARD[𝑚] → �𝒉(𝑚)⟩|𝒖⟩ 2. for 𝑙 ∈ 1. .𝑚 do

𝐶𝑚−𝑙+1(𝑈2𝑙−1) 3. QFT†[𝑚] 4. 𝑀{1,…,𝑚} → |𝜑�⟩|𝒖⟩

49

q-algoritmo SHOR-FACTOR[𝑁] (1994)

Se basa en una idea clásica (recuadro) que se puede ilustrar con un ejem-plo. Sea 𝑁 = 86896487673559693.

Buscamos un número al azar en 1. .𝑁:

𝑥 =random(N)→ 69813111236634346

y calculamos (si 𝑑 = mcd(𝑥,𝑁) > 1, 𝑑|𝑁)

𝑟 = ord𝑁(𝑥)→ 14482747786857258

(𝑟 es el menor número entero positivo 𝑟

tal que 𝑎𝑟 ≡ 1 mod 𝑁; si 𝑟 es impar,

repetir el proceso). Ahora hallamos

𝑋 = 𝑥𝑟/2 − 1 mod 𝑁 → 43106655282912388 y

𝑑 = mcd(𝑋,𝑁)→102205879

es un divisor. De hecho es un divisor primo y 𝑁 𝑑⁄ = 850210267 también lo es: la factorización de 𝑁 es 102205879 ∗ 850210267.

Como 𝑥𝑟 ≡ 1 mod 𝑁, 𝑥𝑟 − 1 es divisible por 𝑁. Siendo 𝑥𝑟 − 1 = (𝑥𝑟 2⁄ − 1)(𝑥𝑟 2⁄ + 1) o 𝑑 = mcd�𝑥𝑟 2⁄ − 1,𝑁� > 1 o 𝑑 = mcd�𝑥𝑟 2⁄ + 1,𝑁� > 1. Si 𝑑 < 𝑁, 𝑑 es un divisor de 𝑁. En caso 𝑑 = 𝑁, se repite el proceso.

50

En el 𝑞-algoritmo SHOR-FACTOR[𝑁] todo funciona como en el algoritmo an-terior, excepto que ord𝑁(𝑥), que es exponencial en el número 𝑛 de bits de 𝑁 (𝑛 = ⌈log2 𝑁⌉), se calcula con el q-algoritmo SHOR-ORDER (polinómi-co en 𝑛). A su vez, el elemento esencial de este algoritmo es el q-algoritmo de estimación de fase. N8

Peter W. Shor (1959).

Nevanlinna Prize (1998)

Gödel Prize (1999)

Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer

SIAM Journal of Computing 26 (1997), 1484-1509.

51

Ejemplo (Estados EPR). Un estado posible de un 𝑞-registro de orden 2 es

|𝒂⟩ = 1√2

(|00⟩+ |11⟩).

Tales estados son entrelazados y se llaman estados EPR. (Einstein, Podo-lsky, Rolfsen, 1935).

Supongamos que el primer 𝑞-bit está en 𝐴 y el otro en 𝐵. Si 𝐴 y 𝐵 miden sucesivamente su 𝑞-bit, resulta que obtienen el mismo resultado:

En efecto, el estado |𝒂⟩ colapsa en |00⟩ o en |11⟩ según que 𝐴 mida 0 o 1, respectivamente (i.e., la proyección ortogonal normalizada de |𝒂⟩ en el espacio {|0𝑏⟩} es |00⟩, y en el espa-cio {|1𝑏⟩} es |11⟩).

Comentario. Esta situación desconcertó a sus descubridores, Einstein, Podolski y Rolfsen (y a cualquier desde entonces) por aparecer como ‘ac-ción fantasmal a distancia’ (‘spooky action at a distance’).

𝐴 𝒂1𝐴 𝐵 0 |00⟩ 0 1 |11⟩ 1

52

Teleportación

Las técnicas de computación cuántica permiten transferir el estado de un q-bit en 𝐴 al mismo estado de un 𝑞-bit en 𝐵 (el estado desaparece en 𝐴 y aparece en 𝐵). He aquí un esbozo de del procedimiento.

Sea |𝒖⟩ = 𝛼|0⟩ + 𝛽|1⟩ el estado (desconocido) de un 𝑞-bit en 𝐴 que deseamos teleportar a 𝐵.

Sea |𝒂⟩ = 1√2

(|00⟩+ |11⟩) un estado EPR compartido por 𝐴 y 𝐵.

𝐴 aplica 𝐶12 al estado

|𝒖⟩|𝒂⟩ = 1√2

[ 𝛼|0⟩ (|00⟩+ |11⟩) + 𝛽|1⟩ (|00⟩+ |11⟩)], obteniendo

1√2

[ 𝛼|0⟩ (|00⟩+ |11⟩) + 𝛽|1⟩ (|10⟩+ |01⟩)].

Seguidamente 𝐴 aplica 𝐻 al primer bit y obtiene 12

[ 𝛼(|0⟩ + |1⟩) (|00⟩ + |11⟩) + 𝛽(|0⟩ − |1⟩)(|10⟩+ |01⟩)],

que se puede escribir en la forma,

53

12�|00⟩ (𝛼|0⟩+ 𝛽|1⟩) + |01⟩ (𝛼|1⟩+ 𝛽|0⟩) +

|10⟩ (𝛼|0⟩ − 𝛽|1⟩) + |11⟩ (𝛼|1⟩ − 𝛽|0⟩) �

Ahora 𝐴 mide los q-bits 1 y 2. La tabla que sigue muestra, para cada uno de los resultados posibles, el estado del 𝑞-bit en 𝐵:

Resultado 00 01 10 11 Estado 𝐵 𝛼|0⟩+ 𝛽|1⟩ 𝛼|1⟩+ 𝛽|0⟩ 𝛼|0⟩ − 𝛽|1⟩ 𝛼|1⟩ − 𝛽|0⟩ Acción en 𝐵 𝐼 𝑋 𝑍 𝑋𝑍

Finalmente 𝐵 puede reproducir el estado |𝒖⟩ en su 𝑞-bit si conoce el resultado de la medición efectuada por 𝐴 (00, 01, 10 o 11) sin más que aplicar las acciones 𝐼, 𝑋, 𝑍 o 𝑋𝑍, respectivamente.N9

54

COMENTARIOS FINALES

Paralelismo cuántico

Esta característica es la posibilidad de inicializar una 𝑞-computación en estados tales como 𝒉(𝑛) = (|0⟩+ |1⟩+ ⋯+ |2𝑛 − 1⟩)/√2𝑛:

Este estado contiene (de hecho es una suma normalizada de) todos los números de 𝑛 bits.

Por tanto, cualquier operación del computador cuántico actúa sobre todos los números simultáneamente. Esto “explica” por qué un computador cuántico puede ser mucho más rápido que un compu-tador clásico.

En general, el éxito de los q-algoritmos (como el de factorización de Shor, por ejemplo) se basa en que, tras su ejecución, las amplitudes de los “números útiles” son grandes, al tiempo que las de los demás son pequeñas.

55

El problema de la decoherencia Esta dificultad tiene su raíz en el hecho que las interacciones con el en-torno pueden “perturbar” rápidamente los estados de Σ(𝑛) (“entrelaza-miento” incontrolado entre los estados del entorno y de Σ(𝑛)). Tales dificultades en la ruta hacia la construcción de computadores cuán-ticos son de naturaleza física y tecnológica. La investigación de muchos laboratorios de todo el mundo está enfocada a estos problemas, con progresos continuos en muchas direcciones:

http://en.wikipedia.org/wiki/Timeline_of_quantum_computing (se puede percibir una explosión de actividades en los últimos años, y muy especialmente desde 2006). Véase también http://en.wikipedia.org/wiki/Quantum_computer para una descripción de más de una docena de líneas de investigación dirigi-das a la realización de computadores cuánticos.

56

REFERENCIAS

KAYE, Phillip − LAFLAMME, Raymond − MOSCA, Michele: An introduction to quantum com-puting. Oxford University Press, 2007. NIELSEN, M. A. − CHUANG, I. L.: Quantum computation and quantum information Cambridge University Press, 2000.

BENATTI, Fabio − FANNES, Mark − FLOREANINI, Roberto – PETRITIS, Dimitri (editors): Quan-tum information, computation and cryptography: An introductory survey of theory, technology and experiments. Lecture Notes in Physics 808. Springer, 2010. ix+350p.

*** EINSTEIN, A. − PODOLSKY, B. − ROLFSEN, N.: Can a quantum-mechanical description of physi-cal reality be considered complete? Phys. Rev., 47 (1935). FEYNMAN, Richard P.: Simulating physics with computers. International Journal de Theo-retical Physics, 21(6/7):467-488, 1982. SUDBERY, Anthony: Quantum mechanics and the particles of nature. An outline for math-ematicians. Cambridge University Press, 1986 (1st), 1988 (reprinted with corrections). PITTENGER, Arthur O.: An Introduction to Quantum Computing Algorithms. Progress in Computer Science and Applied Logic, Birkhäuser, 2000.

57

ALBER, Gernot − BETH, Thomas − HORODECKI, Michal − HORODECKI, Pawel − HORODECKI, Ryszard – RÖTTELER, Martin − WEINFURTER, Harald – WERNER, Reinhard – ZEILINGER, Anton: Quantum information. An introduction to basic theory, concepts and experiments. Tracts in Math Physics, 173. Springer-Verlag, 2001. xi+216p. KITAEV, A. Yu. − SHEN, A. H. − VYALYI, M. N.: Classical and quantum computation. Gradu-ate Studies in Mathematics, 47. American Mathematical Society, 2002. xiii+257. SHOR, Peter W.: Polynomial-time algorithms for prime factorization and discrete loga-rithms on a quantum computer. SIAM Journal on Computing, 26(5):1484-1509, 2005. PARTHASARATHY, K. R.: Lecture notes on quantum computation, quantum error correcting codes and information theory. Tata Institute de Fundamental Research, Narosa Publish-ing House, 2006 (distributed by the AMS). MERMIN, N. David: Quantum Computer Science: an introduction. Cambridge University Press, 2007. [“known for the clarity and wit of his scientific writings”] JAEGER, Gregg: Quantum Information―An overview. Springer, 2007.

BENENTI, Giuliano – CASATI, Giulio – STRINI, Giuliano: Principles de quantum computación y information. Volume I: Basic concepts. World Scientific, 2004. Volume II: Basic tools and special topics. World Scientific, 2007.

STOLZE, Joachim – SUTER, Dieter: Quantum Computing: a Short Course from Theory to Ex-periment. Second, updated y enlarged edition (paperback). Wiley-VCH, 2008.

58

JORDAN, Stephen P.: Quantum Computation Beyond the Circuit Model. Tesis MIT, 2008.

OLMSCHENK, S. − MATSUKEVICH, D. N. − MAUNZ, P. − HAYES, D. – DUAN, L.-M. – MONROE, C.: Quantum teleportation between distant matter Qbits. Science, 323 (23 Jan 2009).

KOLLMITZER, Christian – PIVK, Mario (eds.): Applied Quantum Cryptography. Lecture Notes on Physics 797. Springer 2010. WEINBERG, Steven: Lectures on quantum mechanics. Cambridge University Press, 2013.

59

NOTAS

N1 (p. 35) Observemos que: 1) Los 𝑀 ∈ 𝑩𝑟 son los valores propios del operador (diagonal) 𝐴𝐿 definido por 𝐴𝐿|𝑗⟩ = 𝑗𝐿|𝑗⟩;

2) El espacio de vectores propios correspondiente a 𝑀 es

𝑯𝐿,𝑀(𝑛) = espacio generado por {|𝑗⟩ | 𝑗𝐿 = 𝑀};

3) 𝒂𝐿𝑀 es la proyección ortogonal de 𝒂 sobre 𝑯𝐿,𝑀(𝑛) .

Por tanto, una q-observación es un caso particular de la noción general de q-medida de un q-observable.

N2 (p. 42) La complejidad de QFT es 𝑂(𝑛2). Si ponemos

𝑅𝑙,𝑚 = 𝐶𝑚,𝑙(𝑆𝜋/2𝑚−𝑙), 𝑚 = 𝑙 + 1, … ,𝑛,

entonces QFT equivale a la siguiente sucesión de acciones:

𝑅1(𝐻),𝑅1,2, … ,𝑅1,𝑛,

𝑅2(𝐻), 𝑅2,3, … ,𝑅2,𝑛,

60

··· ,

𝑅𝑛−1(𝐻),𝑅𝑛−1,𝑛,

𝑅𝑛(𝐻),

SWAP[1, 𝑛], SWAP[2,𝑛 − 1], … , SWAP[𝜈, 𝜈′],

donde 𝜈 = ⌊𝑛 2⁄ ⌋ y 𝜈′ = ⌈𝑛/2⌉+ 1.

Las trasposiciones finales invierten el orden de los q-bits:

|𝑖1 ⋯ 𝑖𝑛⟩ ↦ |𝑖𝑛 ⋯ 𝑖1⟩.

N3 (p. 42) La demostración es un cálculo:

𝐹|𝑗⟩ = 𝜌𝑛 ∑ 𝑒2𝜋𝑖𝑗𝑘2𝑛2𝑛−1

𝑘=0 |𝑘⟩

= 𝜌𝑛 ∑ 𝑒2𝜋𝑖𝑗�𝑘121+𝑘222+⋯+𝑘𝑛2𝑛�𝑘1,…,𝑘𝑛∈𝐵 |𝑘1 ⋯𝑘𝑛⟩

= 𝜌𝑛 ∑ ⨂ 𝑒2𝜋𝑖𝑗𝑘𝑙2𝑙𝑛

𝑙=1 |𝑘𝑙⟩𝑘1,…,𝑘𝑛∈𝐵

= 𝜌𝑛⨂ (|0⟩ + 𝑒2𝜋𝑖𝑗2𝑙 |1⟩𝑛

𝑙=1 ) .

61

Pero 𝑗2𝑙

= 𝑗𝑛2𝑙

+ 𝑗𝑛−12𝑙−1

+⋯+𝑗𝑛−(𝑙−1)

2+ número entero, con lo cual el 𝑙-ésimo factor del

producto tensorial en la expresión es igual a

|0⟩ + 𝑒𝑖𝜋(𝑗𝑛/2𝑙−1)⋯𝑒𝑖𝜋𝑗𝑛−(𝑙−1)|1⟩

En consecuencia

𝐹|𝑗⟩ = 𝜌𝑛�|0⟩ + 𝑒𝜋𝑖𝑗𝑛|1⟩��|0⟩+ 𝑒𝜋𝑖𝑗𝑛/2𝑒𝜋𝑖𝑗𝑛−1|1⟩�⋯

= �|0⟩ + 𝑒𝜋𝑖𝑗𝑛/2𝑛−1 ⋯𝑒𝜋𝑖𝑗2/2𝑒𝜋𝑖𝑗1�.

Si escribimos este producto en orden inverso, con un 𝜌 para cada factor, obtenemos

𝜌�|0⟩ + 𝑒𝜋𝑖𝑗𝑛/2𝑛−1 ⋯𝑒𝜋𝑖𝑗2/2𝑒𝜋𝑖𝑗1� 𝜌�|0⟩ + 𝑒𝜋𝑖𝑗𝑛/2𝑛−2 ⋯𝑒𝜋𝑖𝑗2�⋯

𝜌�|0⟩ + 𝑒𝜋𝑖𝑗𝑛/2𝑒𝜋𝑖𝑗𝑛−1|1⟩� 𝜌�|0⟩ + 𝑒𝜋𝑖𝑗𝑛|1⟩�,

con lo cual el factor 𝑙-ésimo es igual a

𝜌 �|0⟩ + 𝑒𝜋𝑖𝑗𝑛/2𝑛−𝑙 ⋯𝑒𝜋𝑖𝑗𝑙+1/2𝑒𝜋𝑖𝑗𝑙|1⟩� = 𝑅𝑛−𝑙 ⋯𝑅1𝐻|𝑗𝑙⟩

donde 𝑅𝑠 significa, para el 𝑙-ésimo q-bit, 𝐶𝑙+𝑠,𝑙(𝑆𝜋 2𝑠⁄ ).

62

N4 (p. 45) La relación entre física cuántica y aleatoriedad es también objeto de trabajos teóricos y experimentales. Una muestra reciente:

S. Pironio, A. Acín, S. Massar, A. Boyer de la Giroday, D. N. Matsukevich, P. Maunz, S. Olmschenk, D. Hayes, L. Luo, T. A. Manning , C. Monroe: Random numbers certified by Bell’s theorem. Nature 464, 15 April 2010.

N5 (p. 46) Veámoslo con más detenimiento. Consideremos un q-computador de orden 𝑛 + 1 y consideremos las acciones siguientes:

1. |𝒂⟩ = 𝑁𝑛+1(|0⟩⋯ |0⟩|0⟩) = |0⟩ ⋯ |0⟩|1⟩ .

2. |𝒙⟩ = 𝐻⊗(𝑛+1)|𝒂⟩ = 𝜌𝑛+1 ∑ |𝑗⟩(|0⟩ − |1⟩)2𝑛−1𝑗=0 .

3. Definimos 𝑈�̃�:𝑯(𝑛) × 𝑯(1) → 𝑯(𝑛) × 𝑯(1) por |𝑗⟩|𝑏⟩ ↦ |𝑗⟩|𝑏 + 𝑓(𝑗)⟩, esto es, el q-

procedimiento correspondiente a 𝑓(𝑗, 𝑏) = �𝑗,𝑏 + 𝑓(𝑗)�.

Sea |𝒚⟩ = 𝑈�̃�|𝒙⟩ = 𝜌𝑛+1 ∑ |𝑗⟩(|𝑓(𝑗)⟩ − |1 + 𝑓(𝑗)⟩)2𝑛−1𝑗=0

= 𝜌𝑛+1�∑ (−1)𝑓(𝑗)|𝑗⟩2𝑛−1𝑗=0 �(|0⟩ − |1⟩).

4. |𝒛⟩ = �𝐻⊗𝑛 ⊗ 𝐼2�|𝒚⟩ . Después de algunos cálculos obtenemos que |𝒛⟩ =𝜌2𝑛+1�∑ (−1)𝑗·𝑘+𝑓(𝑗)|𝑘⟩𝑗,𝑘 �(|0⟩ − |1⟩).

63

Sea 𝑎𝑘 = 𝜌2𝑛+1 ∑ (−1)𝑗·𝑘+𝑓(𝑗)𝑗 , el coeficiente de |𝑘⟩(|0⟩ − |1⟩). Si 𝑓 es constante,

𝑎𝑘 = 0 para 𝑘 ≠ 0 y 𝑎0 = (−1)𝑓(0)𝜌. Si 𝑓 es equilibrada, entonces 𝑎0 = 0. En conse-cuencia

|𝒛⟩ = �𝑎0|0⟩(|0⟩ − |1⟩) Si 𝑓 es constante

∑ 𝑎𝑘|𝑘⟩(|0⟩ − |1⟩) Si 𝑓 es equilibrada 𝑘≠0

5. Observemos los 𝑛 q-bits. Si 𝑓 es constante, el resultado es 0 con probabilidad 1, y si 𝑓 es equilibrada, entonces obtenemos un número ≠ 0.

N6 (p. 47) Para la fundamentación de este algoritmo, que es bastante extensa, el lector puede consultar el artículo online

J. Rué, S. Xambó Mathematical essentials of quantum computing Para otras presentaciones, consúltese la Bibliografía.

N7 (p. 48) V. referencia N6.

N8 (p. 50) V. referencia N6.

N9 (p. 53) Recently this possibility has been demostrated with Yb atoms at a distance de 1m (Olmschenk et al. 2009). This opens great potential for quantum networks.