Upload
trandung
View
240
Download
0
Embed Size (px)
Citation preview
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
1 Información cuántica
2
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
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
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
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
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
2 Computación cuántica
8
|𝟎
|𝟏
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
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
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
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
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
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
3 Simulación
15
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
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
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
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
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
4 Arquitectura qMIPS
21
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
Arquitectura qMIPS Arquitectura simulada
23
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
Arquitectura qMIPS La unidad funcional cuántica
25
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
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
5 El algoritmo de Deutsch
28
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
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
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
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
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
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
6 El algoritmo de Grover
35
El algoritmo de Grover El algoritmo de búsqueda
Encuentra un dato en una lista desordenada en un tiempo 𝑶( 𝑵)
36
7 Conclusiones
37
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
39
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
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
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
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