diseño y simulación de un procesador cuántico pfc... · diseño y simulación de un procesador...

43
Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto Informático Dirigido por José Luis Guisado Lizar 3 de Julio de 2013

Upload: trandung

Post on 25-Sep-2018

241 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Diseño y simulación de un procesador cuántico

Jaime Mª Coello de Portugal Vázquez

Ingeniería Informática

1

Proyecto Informático

Dirigido por José Luis Guisado Lizar

3 de Julio de 2013

Page 2: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

1 Información cuántica

2

Page 3: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Información cuántica

Física clásica

Física cuántica

Min

iaturizació

n

El ¿límite? en la miniaturización

Partículas bien definidas

Sistemas fácilmente observables

Estados robustos

¿Partícula u onda? Estados extremadamente frágiles

Observar un sistema lo modifica

Posición y velocidad

Probabilidad

3

Page 4: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Información cuántica

Energía

Física clásica Física cuántica

Partícula

Es imposible que la partícula supere la barrera

Partícula

La partícula tiene una cierta probabilidad de superar la barrera

El efecto túnel

Efecto túnel

4

Page 5: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Richard Feynman

Información cuántica Inicios

Los computadores son incapaces de imitar a la física cuántica eficientemente

Si fabricamos un ordenador que utilice la física cuántica podrá imitarla con facilidad

Los computadores cuánticos serán superiores

5

Page 6: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Computación

Criptografía Teleportación

Cuánticas

Información cuántica Ramas

Computaciones más rápidas

Envío rápido de información Mensajes totalmente seguros

Superposición de estados cuánticos

Entrelazamiento cuántico

Colapso de la función de onda

6

Page 7: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Información cuántica El procesador clásico-cuántico

Computador clásico

Computador cuántico

Muy general

Muy lento en algunos casos

Fácil de construir y manejar

Muy específico

Muy rápido en algunos casos

Difícil de construir y manejar

Computador clásico-cuántico

7

Page 8: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

2 Computación cuántica

8

|𝟎

|𝟏

Page 9: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Computación cuántica El qubit

Quantum bit o qubit

Dos dimensiones complejas

El más simple de los espacios de estados

| 0

| 1 Base 𝛼|0 + β|1

Estados 𝛼𝛽 Base

computacional

1

2|0 +

1

2|1

Es un estado válido

Paralelismo cuántico

9

Page 10: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Las puertas cuánticas

Puerta clásica: inversor lógico Puerta cuántica: X

0 1

1 0

𝑋|0 = |1

𝑋|1 = |0

|Ψ(𝑡1) |Ψ(𝑡2) 𝑈(𝑡1, 𝑡2)

Sistema cuántico cerrado

𝑈†𝑈 = 𝑈𝑈† = 𝐼

Computación cuántica

10

Page 11: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Las puertas cuánticas

𝑋|0 = |1

𝑋|1 = |0

𝑌|0 = 𝑖|1

𝑌|1 = −𝑖|0

𝑍|0 = |0

𝑍|1 = −|1

Puertas de Pauli Cambio de fase

𝑃(𝛼)|0 = |0

𝑃(𝛼)|1 = 𝑒𝑖𝛼|1

Puerta de Hadamard

𝐻|0 =1

2|0 +

1

2|1

𝐻|1 =1

2|0 −

1

2|1

𝑋 𝐻|1 = 𝑋1

2|0 −

1

2|1 =

1

2𝑋|0 −

1

2𝑋|1

Paralelismo cuántico

Computación cuántica

11

Page 12: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Los postulados de la mecánica cuántica Las medidas

El sistema deja de ser cerrado

1

2|0 −

3

2|1

|0

|1

Medida

|0

|1

|0

|1

Medida

𝑐𝑜𝑛 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 1

2

2

=1

4

𝑐𝑜𝑛 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑 −3

2

2

=3

4

La función de onda colapsa

12

Page 13: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Los sistemas multiqubit

Combinados |Ψ ⨂|Φ , o simplemente |ΨΦ

Dos qubits 𝛼 00 + β 01 + 𝛾 10 + 𝛿 11

Tres qubits 𝛼 000 + β 001 + 𝛾 010 + 𝛿 011 +…

𝟐𝒏ú𝒎𝒆𝒓𝒐 𝒅𝒆 𝒒𝒖𝒃𝒊𝒕𝒔 Grados de libertad

Computación cuántica

13

Page 14: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Los circuitos cuánticos

Qubit

Puerta cuántica X H Y

Medida

|𝑐

|𝑡

Puertas controladas

= |𝑐

|𝑡 X X

|0

|0

|0

|1

X |1

|1

Tiempo 𝐶𝑁𝑂𝑇 |𝑐𝑡 = 𝑠𝑖(|𝑐 = 1) → 𝑋|𝑡

Computación cuántica

14

Page 15: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

3 Simulación

15

Page 16: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Simulación de estados cuánticos Simulación de

hardware

Simulación de circuitos cuánticos

Simulación del procesador clásico-cuántico

Qubit101 qMIPS

Simulación Los simuladores

16

Page 17: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Simulación Motor de simulación de estados cuánticos

𝛼 00 + β 01 + 𝛾 10 + 𝛿 11

00 → 𝛼 , 01 → 𝛽 , 10 → 𝛾 , 11 → 𝛿

1

2|000 +

1

2|101 000 →

1

2, 101 →

1

2

17

Page 18: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Simulación Motor de simulación de estados cuánticos

Puerta P sobre qubit q del estado |Ψ

𝑋 0, 000 → 1 → 100 → 1

Subrutina P(q, Ψ)

𝑋 2, 100 → 1 → 101 → 1

18

Page 19: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Simulación Motor de simulación de circuitos

H

H

H

Array{ Etapa 0 Etapa 1 Etapa 2 Etapa 3 } Circuito =

Etapa =

H

H

Puerta 0

Puerta 1

Array

{ }

|𝑒𝑛𝑡𝑟𝑎𝑑𝑎 |𝑠𝑎𝑙𝑖𝑑𝑎

19

Page 20: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Simulación Motor de simulación de hardware

Respuesta Device Estímulo

Reloj

D1

D2

D3

D4

D5

D6

1º (Síncronos) 2º 3º

20

Page 21: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

4 Arquitectura qMIPS

21

Page 22: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS La arquitectura MIPS

22

Arquitectura RISC estricta: Reduced Instruction Set Computing

Ejecución en cinco fases:

• IF: Instruction Fetch • ID: Instruction Decode • EXE: Execution • MEM: Memory • WB: Write Back

Arquitectura sencilla y didáctica

Page 23: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS Arquitectura simulada

23

Page 24: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS La unidad de control

Quantum functional unit

IF ID

MAC EXE BC

JC

IMM

MAR MAW

MRC

REW RC

JALJRF

JRC

MFHI

QT QEX QMEA

24

Page 25: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS La unidad funcional cuántica

25

Page 26: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS Las instrucciones clásicas Instrucción Resumen

add Rd, Rs, Rt Rd <- Rs + Rt (con desbordamiento)

addu Rd, Rs, Rt Rd <- Rs + Rt (sin desbordamiento)

sub Rd, Rs, Rt Rd <- Rs - Rt (con desbordamiento)

subu Rd, Rs, Rt Rd <- Rs - Rt (sin desbordamiento)

mult Rd, Rs, Rt Rd <- Rs x Rt(bajos); RHigh <- Rs x Rt (altos)

div Rd, Rs, Rt Rd <- Rs / Rt(entera); RHigh <- Rs / Rt (resto)

divu Rd, Rs, Rt Rd <- Rs / Rt(entera); RHigh <- Rs / Rt (resto)

and Rd, Rs, Rt Rd <- Rs AND Rt

or Rd, Rs, Rt Rd <- Rs OR Rt

xor Rd, Rs, Rt Rd <- Rs XOR Rt

nor Rd, Rs, Rt Rd <- Rs NOR Rt

slt Rd, Rs, Rt Rd <- 1 si Rs > Rt; sino Rd <- 0

addi Rd, Rs, C Rd <- Rs + C (con desbordamiento)

lw Rd, C(Rs) Rd <- mem[Rs + C]

sw C(Rd), Rs mem[Rd + C] <- Rs

jr Rs PC <- Rs

j C (o etiqueta) PC <- C

jal C (o etiqueta) R31 <- PC + 4; PC <- C

beq Rs, Rt, C (o etiqueta) PC <- PC + C si Rs = Rt

bne Rs, Rt, C (o etiqueta) PC <- PC + C si Rs ≠ Rt

trap C Excepcion C

mfhi Rs Rs <- RHigh

26

Page 27: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS Las instrucciones cuánticas

Instrucción Resumen Puerta

qhad Qt, Qc Puerta de Hadamard.

qx Qt, Qc Puerta X de Pauli. Inversor.

qy Qt, Qc Puerta Y de Pauli.

qz Qt, Qc Puerta Z de Pauli.

qphs Qt, Qc, Rs Puerta P(2𝜋𝑖/2𝑅𝑠 )

qnph Qt, Qc, Rs Puerta P(−2𝜋𝑖/2𝑅𝑠 )

qmea Qt, Rs, S Rs <- Medida(Qt) desplazado Rs a la izquierda

qrst Rs Registro cuántico <- Rs -

27

Instrucción Resumen

qoff Desplazamiento de etiquetas

qcnt Selector de qubit de control

Page 28: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

5 El algoritmo de Deutsch

28

Page 29: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch El problema de Deutsch

Las cuatro funciones binarias de un bit

𝐶𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 𝑎 0: 𝑓 𝑥 = 0

𝐶𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 𝑎 1: 𝑓 𝑥 = 1

𝐼𝑑𝑒𝑛𝑡𝑖𝑑𝑎𝑑: 𝑓 𝑥 = 𝑥

𝑁𝑒𝑔𝑎𝑐𝑖ó𝑛: 𝑓 𝑥 = 𝑥

Constantes Equilibradas

“Dado un oráculo (o caja negra) que ejecuta una de las cuatro funciones binarias de un bit, decidir si esta es

constante o equilibrada”

29

Page 30: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch Un intento clásico

Se llama al oráculo mandándole un 0 como entrada.

Se obtiene una respuesta f(0) = a

Como necesitamos más información llamamos al oráculo mandándole un 1

Se obtiene una respuesta f(1) = b

Si a = b la función es constante y si a ≠ b la función es equilibrada

Son necesarias 2 llamadas al oráculo

El algoritmo cuántico lo consigue con tan solo una llamada

30

Page 31: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch Primer paso

H

|1

|0 Q0:

Q1: H

1

2 |0 + |1

1

2 |0 − |1

𝑋1

2 |0 − |1 =

1

2 𝑋|0 − 𝑋|1 = −

1

2 |0 − |1

1

2 |0 + |1

1

2 |0 − |1

31

Q0 Q1

Page 32: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch Segundo paso: el oráculo

Oráculo

𝑥 𝑥

𝑦 𝑓 𝑥 ⊕ 𝑦

Constante a 0 Constante a 1 Identidad Negación

“Si f(Q0)=1 entonces niega Q1”

32

𝑓1

2|0 |0 − |1 + 𝑓

1

2|1 |0 − |1 =

1

2(−1)𝑓(0)|0 |0 − |1 +

1

2(−1)𝑓(1)|1 |0 − |1

Q0 Q1 Q0 Q1

Page 33: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch Tercer paso: interferencia

±1

2 |0 + |1

1

2 |0 − |1 𝑠𝑖 𝑓 0 = 𝑓(1)

±1

2 |0 − |1

1

2 |0 − |1 𝑠𝑖 𝑓 0 ≠ 𝑓(1)

± |0 1

2 |0 − |1 𝑠𝑖 𝑓 0 = 𝑓(1)

± |1 1

2 |0 − |1 𝑠𝑖 𝑓 0 ≠ 𝑓(1)

H

33

Page 34: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Deutsch Último paso: medida

± |0 1

2 |0 − |1 𝑠𝑖 𝑓 0 = 𝑓(1)

± |1 1

2 |0 − |1 𝑠𝑖 𝑓 0 ≠ 𝑓(1)

0 si el oráculo es constante 1 si el oráculo es equilibrado

Con tan solo una llamada al oráculo

34

Page 35: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

6 El algoritmo de Grover

35

Page 36: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

El algoritmo de Grover El algoritmo de búsqueda

Encuentra un dato en una lista desordenada en un tiempo 𝑶( 𝑵)

36

Page 37: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

7 Conclusiones

37

Page 38: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Conclusiones

38

qMIPS

• Simulación de una arquitectura clásico-cuántica • Versatilidad a la hora de programar • Experimentación de la implementación física de los algoritmos • Herramienta didáctica sobre computación cuántica

Qubit101

• Simulación de circuitos cuánticos • Facilidad para construir circuitos de alta complejidad • Muy eficiente • Banco de desarrollo y pruebas de algoritmos cuánticos

Page 39: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

39

Page 40: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Información cuántica ¿Por qué un límite?

Superposición de estados cuánticos

Entrelazamiento cuántico

Colapso de la función de onda

Paralelismo cuántico

Envío más rápido de información

Comunicaciones totalmente seguras

40

Page 41: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Los postulados de la mecánica cuántica Primer postulado: el espacio de estados

Bases

Estado

Espacio de estados

Espacio vectorial complejo

Producto interno definido (espacio de Hilbert)

El vector de estado define completamente el sistema

Estado arbitrario

| 𝑛 𝑙 𝑚𝑙 𝑚𝑠

Electrón orbitando un núcleo

| 0 2 1 4

Representación número de partículas

41

Page 42: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Los postulados de la mecánica cuántica Segundo postulado: la evolución de los estados

|Ψ(𝑡1) |Ψ(𝑡2) 𝑈(𝑡1, 𝑡2)

Podemos hacer evolucionar los estados a voluntad

Sistema cuántico cerrado

𝑈†𝑈 = 𝑈𝑈† = 𝐼

Si 𝑈†𝑈 = 𝑈𝑈† = 𝐼 → 𝑈−1 = 𝑈† Siempre existe operador inverso

Las computaciones tienen que ser reversibles

42

Page 43: Diseño y simulación de un procesador cuántico PFC... · Diseño y simulación de un procesador cuántico Jaime Mª Coello de Portugal Vázquez Ingeniería Informática 1 Proyecto

Arquitectura qMIPS Las instrucciones cuánticas de control

qoff Rs si Rs = 7

qcnt Rs si Rs = 5 Todas las puertas siguientes controladas por Q5

43