Física da Computação e daInformação aulas - Mesonpi

Propaganda
Física da Informação e da
Computação
Roberto S. Sarthour e Ivan S. Oliveira
VI Escola do CBPF 2006
Computação e Computadores
É possível resolver
problemas matemáticos de forma
puramente
“mecânica”?
(1928)
Sim! Usando uma
Máquina de Turing:
00101010111100....
(1936)
Computação e Computadores
Computador a Válvula
~ 5 cm
Transistor
42 milhões de transistores!!
A Criatividade Humana – A Lei de Moore
 Esta lei prevê que em 2020, 1 bit será representado por
apenas 1 átomo!
Computação e Física
Computação
Física
Computador
Sistema Físico
Computação
Experimento
Input
Estado Inicial
Regras / Programa
Leis da Física
Output
Estado Final
Computador de Bolas de Sinuca
11011101110110100101110
01000001100110100100010
Computação Quântica - 1982
“Aparentemente as Leis da Física não se opõem à
redução do tamanho dos computadores até que os bits
cheguem a dimensões atômicas, região onde a
Mecânica Quântica detém o controle”
Richard Feynman, Opt. News, 1985
Computação Quântica - 1985
“Máquina de Turing Quântica – mostrando o poder da
computação quântica sobre a clássica”
David Deutsch, 1985
Jogo de cara ou coroa clássico
50 %
50 %
 Moedas são objetos clássicos, e os lados “cara” e “coroa” são
mutuamente excludentes.
Jogo de cara ou coroa quântico
50 %
50 %
 Bits quânticos podem coexistir em dois estados ao mesmo
tempo, mas ao tentarmos medir, observaremos somente um dos
estados.
Em 1935...
Mecânica Quântica:
Cálculo com Magia
Negra
Emaranhamento
M1
M2
50%
M1
M2
50%
 A observação do estado de qualquer um dos componentes de um par
emaranhado determina o estado físico do outro componente do par!
 Não existe um análogo clássico de estados emaranhados!
O estado do gato
 
1
2
 e,vivo 
f , morto 
Computação Quântica e Informação Quântica
 Qualquer objeto quântico com dois estados bem definidos pode
representar uma unidade de Informação Quântica, o bit quântico – qbit.
 Qbits podem estar em uma superposição de estados, ao contrário do bit
clássico, que é sempre 0 ou 1.
 A Computação Quântica utiliza as propriedades dos qbits, como a
superposição e o emaranhamento, para resolver problemas complexos.
Algoritmos quânticos são muito mais rápidos e eficientes que os
clássicos, porque computam superposições de estados 0’s e 1’s.
 Resumindo, o poder da Computação Quântica está nas propriedades
quânticas dos qbits.
Bits quânticos!
 Fótons polarizados.
0
1
Bits quânticos!
 Elétrons em diferentes “orbitas” em um átomo.
0
1
Bits quânticos!
 Orientações de spin nuclear em um campo magnético (Ex: S = 1/2).
B0
Bits Quânticos (qbits)
 Bit é um conceito fundamental de computação clássica e informação clássica.
 Computação quântica e informação quântica são construídas sobre o mesmo
conceito: O bit quântico (qbit), que é o sistema físico mais simples que existe!
1
00
01
10
11
0
 Apesar de serem sistemas físicos (bits e qbits), nesta curso trataremos estes
como objetos matemáticos.
 Estaremos falando da teoria computacional quântica que não depende do
sistema físico que a realiza.
Notação de Dirac
 O estado de um sistema quântico pode ser descrito pelas sua função
complexa, conhecida como função de onda.
 Na notação de Dirac, um sistema quântico é representado por um vetor de
onda chamado de ket, que tem associado e ele um bra:


 Uma representação útil quando trabalhamos com um número grande de
qbits, é a representação matricial, e neste caso o ket é um vetor coluna,
enquanto que o bra é um vetor linha.
 
 
  
 
 
 
  
  

braket
Notação de Dirac
 Produto escalar entre dois vetores, é então definido como:
 Valor esperado de um observável do sistema:
 Produto tensorial:
 A
a 
   e
b 
c 
  
d 
 c   ac
a    
d   ad

  

 c   bc
b    
 d   bd






 
Notação de Dirac
 Nesta notação, os operadores são então descritos por matrizes quadradas:
a b 
U 

c d 
 Produto tensorial:
 1
a

1 2
3


V 
 U V 

 1
3 4
 c 3
 
2
1 2   a
b
 3a


4
3 4   
2
1 2   c
d

 
4
3
4

  3c
2a b
4a 3b
2c d
4c 3d
2b 
4b 
2d 

4d 
bits × qbits
 O bit clássico pode-se apresentar em dois estados
0
e
1.
 O bit quântico pode estar em uma superposição de estados:
  0   1
 Onde  e  são números complexos.
   1
2
2
0 0 1 1 1 1
01 0 1 0 0
 Sempre podemos medir com certeza o estado de um único bit clássico.
Computadores fazem isto o tempo todo.
bits × qbits
 Não é possível medir, com certeza, o estado de um único qbit.
 Ao tentar medir o estado quântico de um único qbit, que se encontra em
uma superposição de estados:
 Mediremos o estado
 com probabilidade
 e o estado
 com probabilidade
0

2
1

2
  0   1
• Apesar de o qbit poder existir em uma
infinidade de estados, o resultado de
uma medida do estado deste qbit pode
ser somente “0” ou “1”.
Manipulando qbits
 No caso dos elétrons em diferentes “orbitas” num átomo, pode-se
induzir uma transição do estado fundamental para o excitado
iluminando o átomo por um determinado período de tempo, com uma
luz de freqüência e amplitudes bem determinadas.
0 1
 Iluminado o mesmo átomo com a mesma luz, mas apenas com metade
do tempo pode-se produzir uma superposição de estados:
1
0  1 
0 
2
Informação em qbits
 Como um único número pode guardar uma infinidade de informação,
seria possível guardar em q (orientação do qbit) todo o texto de um
livro?
q  1100011110001101110...
 A resposta é SIM! No entanto, ao medir o estado do qbit obteríamos
somente “0” ou “1”, com uma determinada probabilidade.
x%  0
y%  1
Medindo o estado de um qbit
 Suponha que um qbit esteja no estado:
  0   1
 Ao realizar uma única medida um observador poderá medir somente
um dos estados “0” ou “1”, com a respectiva probabilidade.
 0   1  0  0 ...
medida
medida
 Se várias medidas forem feitas no mesmo qbit, após a primeira, o
resultado das medidas posteriores serão sempre iguais ao resultado da
primeira medida.
Portas lógicas de um qbit
 Portas lógicas são as ferramentas da computação quântica.
 Estas têm que preservar a norma:   
2
 Onde  e  são definidos pela equação:
2
1
  0   1
 Portanto, as portas lógicas realizam operações unitárias, e podem ser
descritas por matrizes unitárias.
U U †  1
 
U U *
†
T
 Algumas portas lógicas são descritas pelas matrizes de Pauli:
0 1
X 

1 0
0  i 
Y 

i 0 
1 0 
Z 

0  1
Portas lógicas de um qbit
 Outras portas lógicas importantes são a porta Hadamard, a porta de fase e
a porta p / 8.
 A porta Hadamard (H):
 A porta de fase (S):
 A porta p / 8 T:
1
H
2
1
S
0
1
T 
0
1 1 
1  1


0

i
0 
ip 4 
e 
Algumas Relações
 Note que:
H  Z  X 
S T
2
2
 A porta (p / 8  T é chamada assim por razões históricas e pode-se
notar que:
 ip 8
1
0


 ip 8 e
T 
e 
ip 4 
0 e 
 0
0 
ip 8 
e 
As portas NOT e de fase
 A porta NOT é a porta X.
0 1
    
X 
 X   

1 0
    
   0   1
 A porta fase muda a fase relativa dos qbit de p/2.
1 0
    
S
 S    

0 i 
   i 
   0  i 1
A porta Hadamard
1 1 
1  1


H 0  12  0  1  e H 1 
1
H
2
H2 0  H

1
2
1
2
0
1
  0  1   
1
2
  0  1    0  1   0
1
2
1
2
 A porta Hadamard cria uma superposição de estados, e produz o
mesmo estado inicial, quando aplicada duas vezes.
A porta Hadamard
H  H 00  H  H 0  0  ...
1
1
 0  1   0  1   ...
2
2
1
  00  01  10  11 
2
 A porta Hadamard cria uma superposição de estados, e produz o
mesmo estado inicial, quando aplicada duas vezes.
Operações lógicas de 1 qbit
 Resumo das operações lógicas de 1 qbit.
 0  1
X
 0  1
Y
i  0   1 
Z
 0  1 •
180°
S
 0  i 1 •
90°
T
0 
1
2
 1  i  1 •
45°
Rotações e matrizes de Pauli
 Os operadores de rotação são construídos a partir das matrizes de
Pauli.
Rx q   e iXq 2  1 cos q2   iXsen q2 
1 0
0 1 
q
q




 
cos

i
sen
2
2 



0 1 
1 0
 cos q2   isen q2 
 

q
q





isen
cos
2
2


Rotações e matrizes de Pauli
 Rotações em torno dos eixos x, y, e z.
Rx q  e iXq 2
Ry q  e iYq 2
Rz q  e
iZq 2
q
q




cos

isen

2
2 
q
q
 1 cos 2   iXsen  2   
q
q 





isen
cos
2
2 

q
q




cos

sen

2
2 
q
q
 1 cos 2   iYsen  2   
q
q 




sen
cos
2
2 

iq 2

e
 1 cos q2   iZsen  q2   
 0

Rn̂ q  1 cos q2   isen  q2  nx X  n yY  nz Z

0 
iq 2 
e 
Operador unitário
 Qualquer operador unitário de um qbit pode ser escrito de muitas formas
como combinações de rotações, mais algumas mudanças de fase globais.
 Decomposição Z-Y:
U  ei Rz    Ry    Rz  
i

e
U  e i 
 0
2
0  cos

i 2  
e   sen


ei    2 2  cos 2
U   i    2 2 

sen 2
e



2

2
   e
 
   0

i 2
 sen 2
cos 2


 ei    2 2 sen 2 
 
i    2  2 
e
cos 2 
0 
i 2 
e 
Operador unitário
 As colunas são formadas por vetores ortogonais e temos 4 elementos
para descobrir e 4 incógnitas. Portanto podemos escrever um operador
unitário qualquer sob a forma de produtos de rotações.


ei    2 2  cos 2
U   i    2 2 

e
sen
2



 e i    2 2 sen 2 
 
i    2  2 
e
cos 2 
U  e i Rz    R y    Rz  
 O primeiro passo para fazer uma operação quântica no sistema é
determinar qual é a matriz que faz esta operação. Em seguida é expandir
esta matriz na forma de operações conhecidas (achar os elementos , ,
 e ).
Múltiplos qbits
 Para um sistema com 2 qbits, podemos escrever o estado deste sistema
como:
   00   01   10   11
 Podemos realizar uma medida somente no primeiro (a) qbit (|ab).
Suponha que esta medida de “0”. A probabilidade de isto ocorrer é dada
por:
 
2
2
 O novo estado do sistema é então dado por:
 
 00   01
 
2
2
Múltiplos qbits
 Para um sistema de dois qbits, a função de onda deste é descrita por:
   00   01   10   11
 Neste caso, operações quânticas podem atuar apenas em um dos qbits, ou
em ambos.
 
 
  
 
 
 
  
  
 Uma representação útil quando trabalhamos com um número grande de
qbits, é a representação matricial.
Circuitos Quânticos
 Um circuito quântico é geralmente representado por linhas, pontos e caixas.
a
X
c
H
d
Uf
b
 As linhas representam os qbits presentes no sistema.
 As caixas e outros elementos representam as operações realizadas, que
podem ser efetuadas em um único qbit ou vários ao mesmo tempo.
 O tempo “corre” da esquerda para a direita.
Portas de Múltiplos qbits
H
ab
H
Ha  H  1
1 1 
1  1


1 0
0 1 
1 0 

0  1
1
H
2
1

1 0
Ha 
2 1

0
0
1
0
1
Hb  1  H
1 0
1

0
1


1 1

1 1  1
Hb 
2 0 0

0 0
0 0
0 0 
1 1

1  1
Álgebra Booleana
 Se x  1 então x = 0.
 Se x  0 então x = 1.
 Soma módulo 2.
00  0
0 1  1
1 0  1
11  0
A porta CNOT
 A porta quântica CNOT (Não controlado) atua em dois qbits. Um é o qbit
de controle e o outro é o qbit alvo. Esta inverterá o estado do qbit alvo
dependendo do estado quântico do qbit de controle.
a
a
b
a b
 00

01

CNOTa
 10

 11
 Este é o CNOTa, isto é o primeiro qbit controla a operação.
  00
 
   01
  11
 
  10






A porta CNOT
 O CNOTb, onde o segundo qbit é quem controla a operação pode ser
descrito pelo circuito abaixo:
a
a b
b
b
 00

01

CNOTb
 10

 11
  00
 
   11
  10
 
  01






 A porta quântica CNOT pode ser descrita como uma espécie de XOR
generalizado.
A porta CNOT
 Pode-se representar a porta CNOT na forma matricial:
 00

01

CNOTa
 10

 11
  00
 
   01
  11
 
  10






 00

01

CNOTb
 10

 11
  00
 
   11
  10
 
  01






ab
1
0
CNOTa  
0

0
0
1
0
0
0
0
0
1
0
0
1

0
1
0
CNOTb  
0

0
0
0
0
1
0
0
1
0
0
1
0

0
Trocando estados dos qbits (Swap)
 Nesta operação, que não tem análoga clássica, queremos trocar os estados
dos qbits. O estado do primeiro passa para o segundo e vice versa.
a
×
b
=
b
a
×
CNOTa a, b  a, b  a
CNOTb a, b  a  a  b  a, b  a  b, b  a
00  0
0 1  1
11  0
CNOTa b, b  a  b, b  b  a  b, a
Copiando qbits ?
 É possível copiar um qbit?
x
x
0
x0  x
?
  a 0  b 1 & 0    0  a 00  b 10
Com
este
circuito
não
é
possível
CNOT   0  a 00  b 11    
copiar um qbit!
a
    a 2 00  ab 01  ab 10  b 2 11
O Teorema da Não-clonagem
U 
A
 A
   A    U
†
U

U   A     
 A    U U 
†

†
  
†

U   A    
 A       
   
2
O Teorema da Não-clonagem
    
2
xx
x  0 ou x  1
2
 Portanto  é ortogonal a  ou igual .
 Conclusão: Podemos clonar somente estados que são ortogonais.
Operações Lógicas Controladas
 Estas podem realizar operações em determinados qbits (alvos),
dependendo dos estados de outros qbits (controle).
controle
alvos
U
C U  x1  xn  x1  xn U
n
x1xn

Portas Controladas I
Z
=
Z
   0 1  0 0 0 10  00  01  10  11
1
0 1 0 0 
1
1
1
    00  01  10  11    
Z a  Zb  
0 0 1 0 
1
2
2
Z a   Z a 0 0  1  1 0  1  0 0  1  1 0  1 
0 0 0  1
1
  00  01  10  11
1 0 0 0 
1
1
0 1 0 0 
1
1
1
1

     
Z


a
Z b   Zb0 00  11 00  201 1 2 1 1 0  1 0  0  1 1 
 
  00 0010 010 111 1
 1
 






  







Portas Controladas II
X
X
=
U
U
H
H
H
H
=
 Estas operações dependem da base em que estão operando.
A porta Toffoli
 Esta é uma porta clássica que pode ser construída utilizando
operações quânticas reversíveis. Abaixo o circuito quântico que
realiza esta operação.
a
a
b
b
c
c  ab
 000

 001
 010

 011
 100

 101
 110

 111

 000



 001

 010


011
 U

To ffo li



 100



 101

 111



 110












Operações Utilizando a Porta Toffoli
a
a
1
1
b
b
a
a
1
1  ab
0
a
NAND
FANOUT
 Com estas duas chaves clássicas é possível descrever todos os
circuitos clássicos. Portanto é possível realizar computação clássica
utilizando computadores quânticos.
Portas Lógicas
 Toda porta lógica pode ser descrita como U = eiAXBXC, tal que
ABC = 1.
   
   
A  Rz    R y  2 B  R y   2   Rz  
 C  Rz 

2 

 2 
   
XBX  R y  2   Rz 

 2 
        
ABC  Rz    R y  2  R y   2  Rz  
  Rz 
1
2   2 

       
AXBXC  Rz    R y  2   R y  2   Rz 
  Rz 

 2   2 
2
X  1 X  R y q   X  R y  q  X  Rz q   X  Rz  q 
  Rz    R y    Rz  
U  e i AXBXC
   
   
XBX  X  R y   2  X  X  Rz  
  X  R y  2  Rz 

2 

 2 

Construindo Portas Controladas I
1 0 
 0 e i 


ei

0
0
i 
e 
=
 0  1  0  1 


F1   F1  0  0  1   1  0  1   0  0  1   1 ei 0  ei 1 
  00  01  ei 10  ei 11




F2   F2  0  1  0   0  1  1   0  ei 1 0  0  ei 1 1 
  00  01  ei 10  ei 11
Construindo Portas Controladas II
1 0 
 0 e i 


=
U
C
B
A
 O circuito acima implementa a operação:
U  ei AXBXC
Se
a 1
U  ABC ( 1)
Se
a  0
 Como de acordo com o corolário 4.2 podemos sempre escrever um
operador com as chaves descritas acima, é possível construir qualquer
operação controlada de vários qbits utilizando portas lógicas de 1 qbit
e portas CNOT.
Construindo Portas Controladas III
c1
c2
controle
c3
c4
c5
0
auxiliar
0
0
0
alvo
a
U
C U 
n
Portas Quânticas Universais
 Um pequeno conjunto de portas (NOT, AND, OR) clássicas pode ser usado
para computar qualquer função clássica. Este conjunto é chamado de
universal.
 Este tipo de conjunto também deve existir em computação quântica. Isto
significa que qualquer transformação unitária pode ser implementada por
portas deste conjunto, dentro de uma certa precisão.
 Pode ser demonstrado que as portas quânticas Hadamard, Fase, CNOT e
p/8 formam um conjunto universal.
 Portas lógicas de 1 qbit mais a CNOT também formam um conjunto
universal.
H
S
CNOT
T
Fim...
Física da Informação e da
Computação
Roberto S. Sarthour e Ivan S. Oliveira
VI Escola do CBPF 2006
O estado do gato
 
1
2
 e,vivo 
f , morto 
O estado do gato
 A curiosidade deste estado é que o resultado de uma medida no primeiro
qbit é sempre igual ao resultado de uma medida no segundo qbit (|ab).
1
2
 00  11   00
a 0
b 0
 00
 Os resultados estão correlacionados! Este é um fato importante e é
utilizado no teleporte. John Bell provou que estas correlações são mais
fortes do que em qualquer outra que possa existir em um sistema
clássico.
 
1
2
 00
 11 
Criando os estados de Bell
 Os estados de Bell podem ser criados com uma única operação unitária,
U.
00  00  11   00
U
01  01  10   01
U
10  00  11  10
U
11 
H a 01  10  11
00  0 0  0  1  0  00  10
U
 O circuito que realiza esta operação, U, pode ser descrito por:
CNOT
a 
11   00
x 00  H
 xy
y
Teleporte
 No passado, Alice encontrou com Bob e juntos emaranharam um par de
qbits, no estado do gato.
00 
1
2
 00
 11 
 Eles se separaram, ficando cada um com um qbit.
00
00
Alice
Bob
 No presente, Alice tem um terceiro qbit, e quer enviar este para o Bob.
  0   1
Teleporte
• Alice não pode medir o estado do qbit  e mandar o resultado para o Bob,
pois ela somente mediria “0” ou “1” como resultado, e o qbit pode estar
em uma superposição.
• A única coisa que ela pode fazer é teleportar este qbit para o Bob,
utilizando o circuito abaixo:

H
 00
XM2
0
1
2
3
ZM1

Teleporte I

H
 00
XM2
0
1
2
  0   1
&
 0    00 
1
2
 0
 00 
 00
ZM1

3
1
2
 00
 11 
 11    1
 00

 11 
Teleporte II

H
 00
XM2
0
1
 0    00 
1 
1
2
 0
1
2
 00
2
 0
 00
ZM1

3
 11    1
 11    1
 10
 00

 01 

 11 
Teleporte III

H
 00
XM2
1 
1
2

0
1
 0
 00
2
ZM1

3
 11    1
 10

 01 

 2  12   0  1   00  11     0  1   10  01 
Teleporte IV


 2  12   0  1   00  11     0  1   10  01 
1 0 1
 00 0 

0 
 1  0 
010
1 10  01



1 0 
 2 12  000  011  100 0111
 ...
 2  12   10  0   1   11  1   0  
   010  001  110  101 
010  0  10
  0   1
 00  0   1   01  1   0 ...

 2  12  010  01  0
 10  0   1   11  1   0  


Teleporte V

H
 00
XM2
0
3
1
2
 00   0   1 

01   1   0 

 10   0   1 
 11   1   0 

3
X
  0   1
Z
X
ZM1
Z
Medidas na Base de Bell
 Não podemos medir emaranhados (nem superposições). Portanto, temos que
projetar estes estados na base que podemos medir. O circuito quântico abaixo
faz esta operação.
 xy
H
projetor
 00  00  11 
 00
 01  01  10   01
projetor
projetor
10  00  11 
 10
projetor
11  01  10 
 11
Matriz Densidade
 A matriz densidade é um operador, definido como:
 
e  H
eq 
Z
 Como conseqüência:
 a
 x  iy
a
a
  
 xb  iy b

 xc  iy c
xa  iy a
b
xd  iy d
xe  iy e
xb  iy b
xd  iy d
c
x f  iy f
xc  iy c 
xe  iy e 
x f  iy f 

d 
Operador Densidade de cada qbit
 A matriz densidade de cada qbit do sistema pode ser obtida da matriz total,
utilizando a operação de traço parcial.
a   kb ab kb
kb
 Em um sistema de 2 qbits, teremos:
 a  0b  ab 0b  1b  ab 1b
 b  0 a  ab 0 a  1a  ab 1a
Matriz Densidade
 A partir da matriz densidade, é possível obter várias informações sobres o o
estado do sistema quântico, etc.
A  tr A 
 A evolução deste operador é dada por:
0Ue
 t  e U  
 iH t / 
†iH t / 
 t   U t   0  U t 
†
Matriz Densidade
 Utilizando técnicas de computação quântica, é possível medir a matriz
densidade de um sistema quântico. De fato, cientistas têm tido sucesso,
utilizando principalmente a técnica de RMN.
e  H
1
H
eq 
 n 1  H     n
Z
2
2
0
0 
3 / 2 0
 0 1/ 2

0
0

 simulada  
 0
0 1/ 2
0 


0
0
0

3
/
2


Entropia de Von Neumann
 A entropia de Shannon e’ uma medida da incerteza associada com uma
distribuição clássica de probabilidades.
S   pk log  pk 
k
 Estados quânticos são descritos de modo similar, com os operadores
densidade tomando os lugares das probabilidades.
S  tr log  
S   k log k 
k
 A entropia de Von Neumann pode ser também descrita em função dos
autovalores k de  .
Entropia de Estados Puros
 Como vimos anteriormente:    
1 
1 0
  0     

0
0 0
 Os autovalores do operador densidade podem ser facilmente encontrados,
de modo que:
1  1 e 2  0
S   k log k   1log 1  0 log 0  0
k
Entropia de Estados Puros
 Para uma superposição uniforme:
1
1 1
 0  1     
 
2
2 1
1  1 e 2  0
1 1 1
 
2 1 1
S   k log k   1log 1  0 log 0  0
k
Entropia de Estados Puros
 Para uma outra superposição:
 0.9 
  0.9 0  0.1 1    

 0.1 
1  1 e 2  0
0.9 0.3


0
.
3
0
.
1


S   k log k   1log 1  0 log 0  0
k
Entropia de Estados Puros
 Para uma superposição uniforme:
1
   00 
2
1
1
1

4 1

1
01  10  11 
1
1
1
1
1
1
1
1
1

1
1

1
1  1, 2  0, 3  0 e 4  0
S ab  0
Entropia de Estados Puros
 Para uma superposição uniforme:
1
1
   00  01  10  11    0  1    0  1 
2
2
a  trb ab  b 0 ab 0 b b 1 ab 1 b
1 1 1
 a  b  
2 1 1
S a  Sb  S ab  0
Entropia de Estados Emaranhados
 Para o estado emaranhado:
1

1 0
 ab 
2 0

11
0
0
0
0
0
0
0
0
1
0
0

1
1
 00  11 
 
2
1  1
2  0
3  0
14  0
S ab  0
 
S   log 1 / 2  log 1 / 2   log 2  1
2
2
1 1 0 1  1 / 2
S a  Sb  1
 a  b  

2 0 1 2  1 / 2
1
Entropia de Estados ± Emaranhados
 Para o estado emaranhado:   0.9 00  0.1 11
  0.9 00  0.1 11
0.9 0
0  0
 ab  
0 0

0.3 0

0 0.3 1  0.9  0.1  1
0.09  00.1 00 0 0.1 00  11 
 2
S ab
0 0  3  0

0 0.1 4  0

0
S  0.9 log 0.9  0.1log 0.1  0.47
0.9 0  1  0.9
 a  b  
   0 .1
0
0
.
1

 2
S a  Sb  0.47
Simulações de Sistemas Quânticos
 Simulações de sistemas físicos são ferramentas importantes no mundo
Can
physicscomo
be simulated
by a universal computer?
moderno,
por exemplo:
Simulações
dinâmica
dos mechanical,
fluidos em and
tornotherefore
de obstáculos
são
[…]– The
physical da
world
is quantum
the proper
utilizadas
projetarofcarros,
aviões,
etc. […] the full description of
problem
is the para
simulation
quantum
physics
quantum mechanics for a large systems with R particles […] has too many
– Simulações são também utilizadas para minimizar custos em
variables, it cannot be simulated with a normal computer with a number of
construções civis.
elements proportional to R […] but it can be simulated with a quantum
computer
[…] Candea quantum
be probabilistically
by a
– Simulações
circuitos system
eletrônicos
são utilizadassimulated
para projetar
classical
computer universal computer? […] If you take the computer to be
equipamentos.
the classical kind I have described so far […] the answer is most certainly,
No!
Simulações serão eficientes se o sistema for eficientemente descrito
(fisicamente).
Richard P. Feynman (1982)
 Simulações de sistemas quânticos em computadores clássicos são possíveis,
mas são geralmente ineficientes.
Simulações de Sistemas Quânticos
 Simulações de sistemas clássicos implicam em resolver equações
diferenciais, que descrevem a evolução dinâmica do sistema físico.
– Lei de Newton
d  dx 
m   F
dt  dt 
– Equação de difusão
 2 
1 
a 2 t
 Simulações de sistemas quânticos implicam em resolver a equação de
Schrödinger:
H 
i
d
 H 
dt T

x    x 

V

energia cinética
energia potencial
 1 2


i   x   
 V  x   x 
2
t
 2m  x

Simulações de Sistemas Quânticos
 Onde está a dificuldade se a equação de Schrödinger também é
uma equação diferencial?
– Equação da difusão
– Equação de Schrödinger
1 
  2
a t
2
 1 2


i   x   
 V x   x 
2
t
 2m  x

Simulações de Sistemas Quânticos
 A dificuldade de simular sistemas quânticos está no número de equações
diferencias que cresce exponencialmente com o número de partículas.
– 1 qbit → 2 equações
– 2 qbits → 4 equações
– n qbits → 2n equações
 Algumas vezes é possível fazer aproximações que reduzem o número de
equações em um sistema.
 A evolução temporal de um estado quântico pode ser obtida, encontrado as
soluções da equação de Schrödinger:
d
i   H 
dt
 t   e
iH t
 0
 
 t    t   t   e
iH t
 0e
iH t
Simulações de Sistemas Quânticos
 Um sistema quântico evolui livremente de acordo com o seu Hamiltoniano,
mas também sofre mudanças devido à perturbações que podem ser
introduzidas, como as chaves lógicas utilizadas para realizar computação.
 t   U t   0
U t   e
iV t
 O truque é fazer com o Hamiltoniano do sistema mais as perturbações sejam
idênticos ao Hamiltoniano que se quer simular, durante um determinado
intervalo de tempo.
H sistema  Vint erações  H simulado
Simulação do Oscilador Harmônico Quântico
H OHQ  N  12 
H RMN
V RF

 1  0  z1  2  0  z 2  pJ z1 z 2 
2

  X 1 x1 ,
2

Y 1 y1 ,
2


 X 2 x 2 e Y 2 y 2
2
2
Simulação do Oscilador Harmônico Quântico
n  0  
n  1  
n  2  
n  3  
Fim...
Física da Informação e da
Computação
Roberto S. Sarthour e Ivan S. Oliveira
VI Escola do CBPF 2006
Circuito de Espalhamento
0 0
 
H
H
A
'   '  '
Circuito de Espalhamento
 Utilizando o circuito de espalhamento é possível obter informação
sobre o estado de um sistema quântico () ou sobre o processo sob o qual
este evoluiu D.
0 0
H
H
 
A
 Medindo somente o estado de um qbit!
A  tr A 
'   '  '
 z  Re TrA 
 y  ImTrA 
Circuito de Espalhamento
0

H1
0  
H1


1
2
1
2
H
H
'
A
1
2
0
H 0 
 0  1  
Actr
 1   

 H 1 A   ...
0  1  A 

1
2
0 
 1 A

Circuito de Espalhamento
0
H
H

1
2

 0  1  
1
2
A
'
  0  1  A
 0 1  A 
 1 1  A 
  ...

Circuito de Espalhamento


1


 z f f 2 120 0 11 AA 1 111 AA 
f 
1
2
  1  A 
†
0 
1  A 
†
1

 z   f  z  f  ...
 Calculando

1
4
  1  A  1  A 
  1  A† 1  A   ...

1
4
  1  A  A  1 

†
†



1  A
†

 A 1 

Circuito de Espalhamento


 z  14  1  A†  A  1    1  A†  A  1   ...

1
4
   A  A 

1
2

†

A
†


 A   ...

Re  A    z  Re Tr A 
A  A†  Re  A  i Im A  Re  A  i Im A  2 Re  A
Circuito de Espalhamento
 z  Re TrA 
 y  ImTrA 
0 0
 
H
H
A
'   '  '
Como pensa um físico...
Arthur Ekert
“Num certo sentido, sistemas criptográficos modernos já são inseguros.
Qualquer mensagem criptografada, supostamente secreta, o deixará de
ser no feliz momento em que o primeiro computador quântico for ligado.
Confiança na morosidade do progresso tecnológico é a única
segurança verdadeira dos sistemas atuais.”
[A. Ekert et al., em “The Physics of Quantum Information”]
Criptografia Quântica – BB84
 Uma rede quântica é a prova de hacker!
 Utilizando o protocolo chamado de BB84 é possível distribuir chaves
públicas e saber se o hacker invadiu a rede quântica.
10010111011001001
Primeiros criptógrafos
“SCYTALE”
Criptografia por
substituição de
letras: Ex.
“GUERRA” = “JZHUUD”
Gregos ~ 400 AC
Segunda Guerra
Enigma
Colossus
Idéia básica
Mensagem
original
Q U A N T U M
+ + + + + + +
Chave
C
R
I
P
T O
S
3
18
9
16
20
19
S
N
Mensagem
codificada
I
E
 Como distribuir a chave com segurança ?
O
15
P G
Anos 1970: Criptografia de chave pública
Qualquer um pode
se comunicar enviando
uma mensagem
Somente quem possui
a chave pode saber
a mensagem
Como gerar uma chave pública segura? O RSA
1. Selecione números primos grandes p e q;
2. Calcule o produto n = p q;
3. Selecione um inteiro pequeno, e, primo de f(n) = (p-1)(q-1);
4. Calcule d, o inverso multiplicativo de e, módulo f(n)
d . e = 1 (mod f(n));
5. A chave pública do RSA é o par P = (e,n) e a chave secreta
o par S = (d,n);
Para conhecer a mensagem é preciso saber fatorar números
grandes - NÃO HÁ DEMONSTRAÇÃO DE TAL SEGURANÇA!
Criptografia quântica
 O sistema de chave privada é provadamente seguro se a distribuição da
chave for provadamente segura!
A mecânica quântica oferece um método seguro para distribuição de
chaves clássicas, que se baseia sobre dois Teoremas importantes:
 1. “É impossível clonar estados quânticos não-ortogonais.”
 2. “Ganho de informação implica em perturbação.”
Criptografia quântica
 Se Eva (um hacker) invadir o sistema, ela terá que ler o qbit, ou seja
fazer uma medida, destruindo assim o estado do qbit.
 Mas o objetivo do hacker é capturar a informação, sem deixar pistas.
Portanto ele teria que clonar o estado do qbit, antes de fazer uma medida.
 A segurança do sistema está na impossibilidade de clonar estados
quânticos.
0   ; 1   ( Base  S Z )
0 1
2
( Base  S X )
  0 
0 1
2
NÃO CLONÁVEL!
Ganho de informação implica em perturbação
U  s    v
U   s    v'
Estados modificados
do q-bit do “espião”
Estado genérico de um q-bit (pertencente ao “espião”)
Estados enviados através de um canal
Ganho de Informação
v  v'
Mas...
U s   v  v   s  U
†
U s 
†
U
U

1
 v'  v' 
†
 s U
s   s  v   v'
  s s    v v'  v v'  1
 É impossível obter informação de estados
ortogonais se†m perturbar o sistema!
não-
 Outra propriedade importante de estados nãoortogonais:ELES
NÃO
PODEM
SER
DISTINGUIDOS COM CERTEZA!
  0
1
0  1 
 
2
O Protocolo BB84
Objetivo: distribuir uma sequência de bits clássicos de forma
segura. Os bits formarão uma chave privada.
As duas partes que devem se comunicar secretamente:
Alice e Bob. Espião: Eva
Passo No. 1 - Alice seleciona duas sequências binárias
(com N bits cada) aleatórias, a e b:
a  11010101010111010001010
b  00110110111011101011110
Daqui sairá
a chave secreta
Codificação quântica
Passo No. 2 - Alice prepara N q-bits e usa a seguinte regra:
bi  0, ai  0  ai  0 
 Base  Z
0, a a
0 
a 10 
bi  0, ai b1
i
BaseZ

i
i
i
bi  0, ai  1  ai  1 
bi  1, ai  0  ai   
 BaseX
i ai   
bi  1, ai  1 
bi  1, ai  0  a   
 Base  X
bi  1, ai  1 
a   0 ...
 1  1i     
a  11010101010111010001010
b  00110110111011101011110
  1 1      0 
Leitura de Bob
Passo No 3 - Alice envia os q-bits para Bob. Ele gera uma
seqüência aleatória b’ com N bits:
b '  1110101011101010001
e usa a seguinte regra: se b’i = 0, faz uma medida na base-Z; se for
1, mede na base-X. As medidas de Bob resultam em uma seqüência
aleatória a’.
Passo No. 4 - Alice e Bob comparam b e b’ (publicamente), e mantém
os pares (ai, a’i) para os quais bi = b’i. Esta é a chave secreta!
A natureza “oculta da informação quântica”
E Eva?
 O BB84 é seguro, pois:
 1. Eva não pode clonar ;
 2. Eva não pode obter informação de  sem perturbar o canal;
 3. Mesmo que Eva clonasse  imperfeitamente, e esperasse pela
publicação de b e b’, ela apenas saberia as posições dos bits que foram
mantidos na chave e o tamanho da chave. Mas não teria como saber o
valor de cada bit da chave, pois a e a’ nunca são publicados!
 4. Alice e Bob podem ainda estabelecer um limite aceitável para o
ruído no canal, acima do qual o protocolo é abortado e o processo reiniciado.
Algoritmos Quânticos
 Classe A – Baseados na Transformada de Fourier Quântica de
Shor. Exponencialmente mais rápidos do que algoritmos
clássicos.
 Classe B – Baseados no algoritmo de busca de Grover. Somente
quadraticamente mais rápidos do que os algoritmos clássicos.
 Porque há tão poucos algoritmos quânticos?
– Desenvolver um algoritmo, clássico ou quântico não é tarefa fácil.
– A história ensina que é muito difícil criar bons (otimizados)
algoritmos, mesmo para problemas simples.
– Sempre se procura por um algoritmo quântico que seja melhor do
que o seu análogo clássico.
– Nós estamos mais acostumados com uma visão clássica do mundo.
Algoritmo de Deutsch
 Este algoritmo não tem análogo clássico, e pode ser aplicado para
descobrir se uma função binária é constante (f(0) = f(1)) ou equilibrada
(f(0) ≠ f(1)), calculando a função somente uma vez.
 Seria o equivalente a descobrir se uma moeda é falsa (possui dois lados
iguais) ou verdadeira (possui um lado diferente do outro), com apenas
uma observação.
 Classicamente, temos que observar os dois lados de uma moeda para
decidir se esta é falsa ou verdadeira.
Falsa ou Verdadeira ?
Algoritmo de Deutsch
 Classicamente, temos que observar os dois lados de uma moeda para
decidir se esta é falsa ou verdadeira.
 Na mecânica quântica podemos preparar o qbit em uma superposição de
estado e calcular f (0 e 1) ao mesmo tempo! Este é o procedimento do
Algoritmo de Deutsch.
 Após esta operação, é possível decidir se a moeda é falsa ou verdadeira,
como se tivéssemos observado apenas um dos lados da moeda!
Falsa
Verdadeira
Algoritmo de Deutsch I
0
x
x
H
H
Uf
1
y
H
0
1
y  f (x)
2
3
 0  0 1  01
1 
1
2
 0
 1   0  1  
1
2
 00
H0 
1
2
0
1
H1 
1
2
0
1
 01  10  11 
Computando uma função
x
x
x
x
Uf
y
y
y  f (x)
y  f (x)
 f(x) é uma função binária e só admite dois valores: “0” ou “1”.
Uf x
  0  1   x   0  f x   1  f x     
  1
1
2
f x
1
2
x
  0  1 
1
2
Algoritmo de Deutsch II
0
x
x
H
H
Uf
1
0
Uf x
1
1
2
2
  0  1    1
1
2
 1
f 0 
0
f x
x
3
  0  1 
1
2
  0  1   0  1     
 0  1    1   1  0  1 
 2  U f 1  U f

y  f (x)
y
H
1
2
f 1
Algoritmo de Deutsch III
f (0)  f (1)  0
f (0)  0
2 
2
1
2
1
f (1)  1
f 0 
0
0
f (0)  f (1)  1
ou
f (0)  1
f (1)  0




 1  1
1 0
 12  0  1  0  1 
 1
 2  0  1  0  1 
f 1
Se
Se

1
f 0  f 1
f 0  f 1
Algoritmo de Deutsch IV
0
x
x
H
H
Medindo apenas o
primeiro qbit
conhecemos se f (x)
é constante ou
equilibrada.
Uf
1
y
H
0
2
y  f (x)
1
2
 12  0  1  0  1 
 1
 2  0  1  0  1 
3  H a  2


 
1
2
1
2
3
Se
Se
 0  0  1 
 1  0  1 
f 0  f 1
f 0  f 1
Se
Se
f 0  f 1
f 0  f 1
Algoritmo de Deutsch V
0
1
 1
1
 12  0  1  0  1    
21 
 
 1
1

1 1 1  1 0 0
Ha  H  1 
1  1  0 1  1
2
 


0
0 1 0
1 0 1 
0 1 0 

1 0  1
Algoritmo Quântico de Busca (Grover)
 Em um espaço de N elementos.
N 
 Algoritmos clássicos de busca: O
 Algoritmo quântico de busca:
O
 N
 Devemos buscar os índices dos elementos procurados.
 O algoritmo de Grover busca e reconhece uma solução para um
determinado problema.
Algoritmo de Grover
Algoritmo de Grover
2 qbits = 22 estados.
10 qbits = 210 estados.
Algoritmo de Grover
Algoritmo de Grover
Fatoração
231 = 3 x 7 x 11
3 x 5 = 15
=
X
O algoritmo de Shor (1993)
No. Bits
512
1024
2048
4096
P. Shor
t(comum)
4 dias
105 anos
1014 anos
1026 anos
TECNOLOGIA
DO ANO 2000
t(Shor)
34 seg.
4,5 min.
36 min.
4,8 horas
COMPUTADOR
QUÂNTICO DE
100 MHz
Algoritmo de Fatoração de Shor
 Para fatorar um número de 1024 bits utilizando algoritmos clássicos
seria necessário ~ 100 mil anos (em computadores atuais).
 Utilizando o algoritmo de Shor este tempo seria reduzido para ~ 4,5
minutos.
 Estes fatos ilustram o poder da computação quântica sobre a clássica.
 O algoritmo de Shor é rápido porque utiliza uma rotina quântica que
por sua vez faz uso da transformada de Fourier quântica (QFT –
Quantum Fourier Transform) .
A Transformada de Fourier Quântica– QFT
 Utilizando a transformada de Fourier quântica (QFT) é possível
estimar a fase de um estado quântico, encontrar a ordem de um
número, fatorar, etc.
1
yj 
N
N 1
x e
k 0
1
j 
N
N 1
k
e
k 0
 QFT é uma transformação unitária.
2pijk N
2pijk N
k
1997 – Deu na Nature!
1998
29Si:
I = 1/2, 4,7% - (28,30)Si: I = 0, 95,33%
31P: I = 1/2, 100%
2002
• l = 300 mm;
• w = 4 mm;
• t = 0,25 mm;
• s = 2,1 mm;
• L = 400 mm;
• W = 4 mm;
• H = 10 mm.
B0 ~ 7T ;
Bz / z  1, 4T / m m;
a  1,9 Ao ;
f ~ 2kHz
2004
2005
QUANTUM KEY
DISTRIBUTION (QKD)
Resumindo
 Computadores quânticos já existem em pequena escala – até 7 qbits.
 Todas as chaves lógicas e algoritmos quânticos criados até hoje foram
testados em laboratórios.
 Existem muitas dificuldades de natureza técnica para a implementação
da Computação Quântica em larga escala, mas não há nenhum
impedimento de natureza física!
 Algumas aplicações já estão sendo comercializadas!
 A criação de um chip quântico depende do desenvolvimento de outra
área da ciência: A Nanotecnologia.
É possível prever o futuro?
“ Acredito que haja no mundo todo um mercado para
talvez cinco computadores.”
Thomas Watson, Presidente da IBM (1943).
“Os computadores do futuro não deverão pesar mais do que
uma tonelada e meia.”
Popular Mechanics (1949)
“Os computadores quânticos se parecerão mais com aquela xícara
de café, que hoje esquecemos ao lado dos teclados.”
Isaac Chuang (1998)
Fim!
Mais informações em:
http://www.cbpf.br/~qbitrmn/
Download