• Nenhum resultado encontrado

Uma Ferramenta para Projeto Simulação de Circuitos Quânticos

N/A
N/A
Protected

Academic year: 2021

Share "Uma Ferramenta para Projeto Simulação de Circuitos Quânticos"

Copied!
78
0
0

Texto

(1)

Uma Ferramenta para Projeto e Simula ~ao

de Cir uitos Qu^anti os

Campina Grande,PB, Brasil

(2)

Uma Ferramenta para Projeto e Simula ~ao

de Cir uitos Qu^anti os

Disserta ~ao submetida a Coordena ~ao do

Curso de Pos-Gradua ~aoem Informati a do

Centro de Ci^en ias e Te nologia da

Univer-sidade Federal de Campina Grande -

Cam-pus I omo parte dos requisitos ne essarios

paraobten ~aodograudeMestreemCi^en ias

(MS ).

Orientadores:

Aer io Ferreira de Lima

Bernardo Lula Jr.

Universidade Federal de Campina Grande { UFCG

Campina Grande,PB, Brasil

(3)

CABRAL, Gustavo EulalioMiranda

C117F

Uma Ferramentapara Projeto e Simula ~aode Cir uitos Qu^anti os

Disserta ~ao (mestrado),Universidade Federal de Campina Grande,

Centrode Ci^en ias e Te nologia, Coordena ~ao de Pos-Gradua ~aoem

Informati a, Campina Grande,Paraba, Julho de 2004.

77 p. Il.

Orientadores: Aer io Ferreirade Lima

Bernardo Lula Jr.

Palavras- have:

1. Computa ~aoQu^anti a

2. Simula ~ao

3. Cir uitos Qu^anti os

(4)

de 2004, em Campina Grande, Estado da Paraba, pela ban a examinadora onstituda

pelos doutores:

Prof. Dr. Aer io Ferreira de Lima

DF/CCT/UFCG

Orientador

Prof. Dr. Bernardo LulaJr.

DSC/CCT/UFCG

Orientador

Prof. Dr. Herman MartinsGomes

DSC/CCT/UFCG

Prof. Dr. Rubens VianaRamos

(5)

A Computa ~ao Qu^anti a surgiu omo uma promissora te nologia alternativa apaz

de ontornaros problemas previstos para a onte erem embreve om asatura ~aoda

te -nologia atual (Computa ~ao Classi a). Estes problemas a onte em quando se trabalha

om omponentes muito pequenos, da ordem de pou os nan^ometros, quando os efeitos

da Me ^ani a Qu^anti a ome am a tornar-se mais fortes, gerando resultados aleatorios.

AComputa ~aoQu^anti a toma proveito desses efeitos,resultando numa Computa ~aon~ao

somente mais rapida, omo um novo tipo de Computa ~ao, apaz de realizar tiposnovos

de omputa ~ao impossveis, em prin pio, de serem realizadas lassi amente. Embora a

teoriadaComputa ~aoQu^anti avenhasedesenvolvendo om rapidez, aparte

experimen-talaindaenfrenta grandes di uldades. Embora implementa ~oes de algoritmossimplese

ompou osqubitsjatenhamsidorealizadas,aindahaproblemasseriosdees alabilidade,

des oer^en iae ontrolabilidadeaseremresolvidos. Devidoaessesproblemas,torna-se

im-perativo o uso de simuladores tanto para o desenvolvimento de novos algoritmo quanto

paraoestudodos algoritmosexistentes. Asimula ~ao,porem,apresentaum problema,no

queumsistemaqu^anti o sopode ser simuladoe ientementeporoutro sistemaqu^anti o.

Umsistemaqu^anti o de n qubitslevaraum tempoO(2 n

)paraser simuladoporum

om-putador lassi o. Asimula ~ao,entretanto,mostra-seaalternativamaisviavelemvistada

faltade umhardwarequ^anti o. Este trabalhoapresentaopro essode on ep ~aoe

imple-menta ~aode um simuladoruniversalde ir uitosqu^anti os, denominadoZeno. Omodelo

de ir uitosqu^anti os foi es olhido por ser amplamente difundido e de fa il assimila ~ao.

Otrabalho apresenta uma introdu ~ao aos on eitos de Computa ~aoQu^anti a usados na

implementa ~ao do simulador, os requisitos gerais desejaveis para um novo simulador de

ir uitosqu^anti os,tantodopontode vistafun ionalquantodon~ao-fun ional,opro esso

de desenvolvimentoutilizado euma analise dos resultados obtidos om aimplementa ~ao

(6)

Quantum Computation appeared as a promissing alternative te hnology apable of

turn around the problems predi ted to happen soon with the saturation of the urrent

te hnology (Classi al Computation). These problems o ur when one works with very

small omponents, in the order of a few nanometers, when the Quantum Me hani s

ef-fe tsstart tobe ome stronger, generating randomresults. Quantum Computation takes

advantage of those e e ts, resultingin a Computationnot onlyfaster, but anew kind of

Computation, apableof realizingnew typesof omputations impossible,inprin iple, to

berealized lassi ally. AlthoughtheQuantumComputationtheoryhasbeendevelopping

fast,theexperimentalpartstillfa esgreatdi ulties. Though implementationsofsimple

algorithms,with a fewqubits, havealready been done,there are stillserious problems of

s alability, de oheren e and ontrolability to be solved. Due to these problems, the use

of simulators be omes mandatory either for the development of new algorithms and for

the study ofexisting algorithms. Simulation,however, has aproblem,inthat a quantum

system an onlybeeÆ ientlysimulated by anotherquantum system. A quantumsystem

of n qubits will take time O(2 n

) to be simulated by a lassi al omputer. Simulations,

however, results the most available alternative due to the la k of a quantum hardware.

Thisworkpresentsthepro essof om eptionandimplementationofauniversal quantum

ir uit simulator, named Zeno. The quantum ir uit model was hosen due to it being

aneasilyassimilatedand widely known model. Thework presentsanintrodu tionto the

on epts of Quantum Computation used in the simulator's implementation, the general

requisites wanted for a new quantum ir uit simulator, as from the fun tional point of

view as from the non-fun tional, the development pro ess used and an analysis of the

(7)

Lista de Tabelas

Lista de Figuras

1 Introdu ~ao p.13

1.1 Computa ~ao Qu^anti a . . . p.13

1.1.1 OComputadorQu^anti o . . . p.14

1.2 Simuladores . . . p.15

1.2.1 SimuladoresQu^anti os . . . p.15

1.2.1.1 Problemas daSimula ~ao . . . p.16 1.2.2 EstadoAtual . . . p.16 1.2.3 De i^en ias . . . p.17 1.2.3.1 Fun ionalidade . . . p.17 1.2.3.2 Usabilidade . . . p.17 1.2.3.3 Do umenta ~aodo Desenvolvimento . . . p.17 1.3 Objetivo . . . p.18 1.4 Relev^an ia . . . p.18 1.5 Metodologia de Trabalho . . . p.18 1.5.1 Metodologiade Desenvolvimento . . . p.19

1.5.2 Analise de Resultados . . . p.19

1.6 Estrutura daDisserta ~ao . . . p.19

2 Fundamenta ~ao Teori a { Computa ~ao Qu^anti a p.21

2.1 Representa ~ao da Informa ~ao . . . p.21

2.2 Pro essamento daInforma ~ao . . . p.23

2.3 Portas de Um Qubit . . . p.23

(8)

2.5 Portas Controladas de Dois Qubits . . . p.25

2.6 Computa ~ao Reversvel . . . p.26

2.7 Computa ~ao Qu^anti a . . . p.27

2.8 Portas Qu^anti as Universais . . . p.29

2.8.1 Universalidade de Hadamardeas Portas de Fase . . . p.29

2.8.2 De omposi ~aode C(U) . . . p.29

2.8.3 De omposi ~aode C 2

(U) . . . p.30

2.8.4 De omposi ~aoemProduto de Matrizesde Dois Nveis. . . p.31

2.8.5 Universalidade por Aproxima ~ao . . . p.31

2.8.5.1 Universalidade de Hadamard, =8 e CNOT . . . p.32

2.9 Medi ~ao . . . p.33

2.9.1 Medi ~aoProjetiva . . . p.33

2.9.2 POVM . . . p.34

2.10 Estados Mistos . . . p.34

2.10.1 Tra o Par ial . . . p.35

2.10.2 CanaisQu^anti os . . . p.36

3 Requisitos Gerais para um Novo Simulador p.38

3.1 Re ursos doSistema . . . p.38 3.1.1 Re ursos de Fun ionalidade . . . p.38 3.1.2 Re ursos de Usabilidade . . . p.39 3.1.3 Re ursos de Do umenta ~ao . . . p.39 3.1.4 OutrosRequisitos . . . p.40 4 Pro esso de Desenvolvimento p.41

4.1 Prin pio daIndepend^en ia do Dialogo . . . p.41

4.2 Pro esso Uni ado Simpli ado . . . p.42

4.2.1 AsQuatro Fases de um Pro esso . . . p.43

4.2.2 Fluxosde Atividades . . . p.43

4.3 MEDITE . . . p.45

(9)

4.5 Desenvolvimentodo Modulo Fun ional . . . p.49

4.5.1 Fase de Planejamento. . . p.49

4.5.2 Fase de Elabora ~ao . . . p.50

4.5.2.1 De is~oes de Projeto. . . p.50

4.5.3 Fase de Constru ~ao . . . p.51

4.5.4 Fase de Transi ~ao . . . p.51

4.6 Desenvolvimentodo Modulo de Intera ~ao . . . p.52

4.6.1 Identi a ~ao de Janelas e Objetos Visuais . . . p.52

4.6.2 Implementa ~ao . . . p.52

4.7 Integra ~ao . . . p.52

4.7.1 Testes . . . p.52

5 Analise de resultados p.53

5.1 Re ursos Planejados vs. Implementados. . . p.53

5.1.1 Re ursos de Fun ionalidade . . . p.53

5.1.2 Re ursos de Usabilidade . . . p.55

5.1.3 Re ursos de Do umenta ~ao . . . p.57

5.2 Testes de Corre ~aoe Desempenho . . . p.57

5.2.1 Somador de Dois Bits. . . p.58

5.2.2 Transformada de Fourier Qu^anti a (QFT) . . . p.59

5.2.3 Cir uitopara Cal ularo Autovalor . . . p.62

5.2.4 Testes om aPorta de Medi ~ao . . . p.64

5.3 Resultados dos Testes. . . p.66

6 Con lus~ao p.67

6.1 Objetivos Al an ados . . . p.67

6.2 Contribui ~oes . . . p.68

6.3 Perspe tivas Futuras . . . p.68

Refer^en ias p.70

(10)

A.2 Portas . . . p.75

A.3 Barra de Tarefas . . . p.76

(11)

1 Atividades de ada uxo de atividades [13℄

. . . p.44

2 Atividades modi adas . . . p.44

3 Des ritor | tarefa `geren iar ir uitos' . . . p.48

4 Des ritor | pos-situa ~aode `geren iar ir uitos' . . . p.48

5 Des ritor | a ~ao `de nirnumerode olunas'. . . p.48

6 Des ritor | requisitode `de nirnumero de olunas' . . . p.48

7 Des ritor | pos-situa ~aode `de nirnumero de olunas'. . . p.49

8 Tempo de exe u ~ao do ir uito somadorde dois bits . . . p.58

9 Resultados de simula ~ao do ir uitosomador de dois bits . . . p.59

10 Tempo de exe u ~ao do ir uito QFTpara 3 qubits . . . p.60

11 Tempo de exe u ~ao do ir uito QFTpara 6 qubits . . . p.60

12 Tempodeexe u ~aodo ir uitopara al ularoautovalordeum operador

qu^anti o . . . p.63

13 Resultados de simula ~ao do ir uito QFT de 3 qubits om leitura de

(12)

1 Portas NOT e AND,respe tivamente . . . p.23

2 Cir uito que omputa a fun ~aoadi ~ao modulo2. . . p.23

3 Porta CNOT . . . p.26

4 Porta U- ontrolada . . . p.26

5 Porta To oli . . . p.27

6 Cir uito quep~oeregistrador no estado 1 2 n=2 P 2 n 1 x=0 jxi. . . p.28

7 Computando valorde f para todos os valores de x. . . p.29

8 De omposi ~ao de porta U ontrolada . . . p.30

9 De omposi ~ao de porta U ontroladapor2 qubits . . . p.30

10 Constru ~ao de operadorunitariode dois nveisU. . . p.31

11 Canal qu^anti o unitario. . . p.36

12 Canal qu^anti o linear . . . p.36

13 Software interativo . . . p.42

14 Tarefa \Utilizarumaferramentade software para projetaresimular

ir- uitos qu^anti os" . . . p.47

15 Tarefa \Con gurarferramenta" . . . p.47

16 Arquitetura . . . p.49

17 Modelo on eitual domodulofun ional . . . p.50

18 Cir uito representado nosimulador Zeno . . . p.55

19 Visualiza ~aodo estadono simuladorZeno omo ket . . . p.56

20 Visualiza ~aodo estadono simuladorZeno omo matriz-densidade . . . p.56

21 Visualiza ~aodo estadono simuladorZeno omo histograma. . . p.56

22 Montagem dosomador de numeros de 2 bits nosimulador Zeno . . . . p.58

23 Montagem dosomador de numeros de 2 bits nosimulador jaQuzzi. . . p.59

24 Cir uito daQFT para 3qubits no simuladorZeno. . . p.60

25 Cir uito daQFT para 3qubits no simuladorjaQuzzi. . . p.61

(13)

28 Resultado do mesmo ir uitonosimulador Zeno om estados mistos. . p.62

29 Cir uitopara al ularoautovalorde umoperadorunitarionosimulador

Zeno. . . p.63

30 Cir uitopara al ularoautovalorde umoperadorunitarionosimulador

jaQuzzi. . . p.63

31 Resultado da simula ~aodo ir uito para al ulo de autovalorno

simula-dor Zeno. . . p.64

32 Resultado da simula ~aodo ir uito para al ulo de autovalorno

simula-dor jaQuzzi. . . p.64

33 Cir uito da QFT para 3 qubits om portas de medi ~aonos simuladores

Zeno (esquerda) ejaQuzzi. . . p.65

34 Cir uito da QFT para 3 qubits om portas de medi ~aonos simuladores

Zeno (esquerda) ejaQuzzi. . . p.65

(14)

1 Introdu ~ao

Este trabalho apresenta o pro esso de on ep ~ao e implementa ~ao de um simulador

universal de ir uitos qu^anti os denominado Zeno. Um simuladore uma ferramenta

im-portante para aanalise de omportamentoe projeto de sistemas,prin ipalmentequando

ha serias di uldades ou mesmo impossibilidade de se onstruir o sistema si amente,

omoeo aso dos omputadores qu^anti os atualmente.

Neste aptuloapresentamosaimport^an iaeo enarioatualdossimuladoresqu^anti os,

identi amosas de i^en ias dos prin ipaissimuladores existentes, apresentamos os

obje-tivos do trabalho, a metodologia utilizada para a onstru ~ao de um novo simulador e a

estrutura dadisserta ~ao.

1.1 Computa ~ao Qu^anti a

O surgimento do omputador ausou grande impa to no desenvolvimento da

so ie-dade. Os primeiros omputadores foram onstrudos utilizando-se valvulas e reles omo

seus omponentes prin ipais,e realizavam al ulosvariasvezes mais rapidoque qualquer

ser humano. Esses omputadores porem o upavam muito espa o fsi o e se provaram

muitolentosparaasne essidades de al ulosquesurgiriam. Oadventodos transistorese

dos ir uitosintegrados (CI's) possibilitouuma diminui ~ao onsideravel notamanhodos

ir uitoseno seu gasto de energia,e um aumento nasua velo idade de pro essamento.

O numerode transistores porCI dobroua ada ano entre 1958 e 1979,e desdeent~ao

ate agora vem aumentando a uma taxa de aproximadamente 2 vezes a ada 18 meses.

Isso signi a que as dimens~oes de um transistor estar~ao brevemente passando da faixa

de m (mi r^ometros) para a faixa de nm (nan^ometros), ou seja, estaremos entrando

na nano-eletr^oni a, na es ala at^omi a. Segundo previs~oes da asso ia ~ao da industria de

semi ondutores ameri ana (NSIA) para a te nologia CMOS, o tamanhodos transistores

passaradafaixade 0;35m(350nm)atuaisparaafaixade 0;07m(70nm)ate2010. No

entanto,ate nologiaCMOSpodeprogredirateolimitede 20nmsemsa rif iofun ional.

Abaixo desse limite ( hamado limite de De Broglie), os transistores CMOS deixam de

fun ionar omo esperado: os eletrons deixam de agir omo part ulas e passam a se

omportar omoondas(i.e., segundooprin piodadualidadedaspart ulassubat^omi as,

formulado por De Broglie [15℄

), obede endo essen ialmente as leis da Me ^ani a Qu^anti a.

Ao inves do efeito de haveamento, se tornam dominantes efeitos omo interfer^en ia,

emaranhamentoesuperposi ~ao.

(15)

apare e omo mais promissora e inovadora e a que prop~oe o uso dos efeitos qu^anti os

paraseobter dispositivosemaquinas qu^anti as|um sistemaqu^anti o opera emmuitos

estados lassi os simultaneamente; seu estado qu^anti o pode ser, em qualquer instante,

uma superposi ~ao de estados lassi os. Esse paralelismo inerente aos sistemas qu^anti os

leva a possibilidade de se on eber e onstruir maquinas om poder de pro essamento

exponen ialmente maior do que a atual te nologia permite, i.e., maquinas apazes de

resolver problemas que s~ao onsiderados \intrataveis" por qualquer maquina atual. A

dis iplina que estuda o uso dos efeitos qu^anti os para realizar omputa ~ao, hamada

Computa ~aoQu^anti a,estanoseu ome o,impulsionadapelapossibilidadeextraordinaria

de um salto exponen ial da apa idade de pro essamento.

1.1.1 O Computador Qu^anti o

Aabordagemqu^anti aintroduzmaisdoqueaevolu ~aodopro essodeminiaturiza ~ao,

elatorna possvel um paralelismo omputa ionalimpossvel atraves de outras te ni as e

quenoslevaasportasdeumarevolu ~aonome anismo omputa ional. ComodizemEkert

et al. [7℄

: \Ent~ao, se os omputadores se tornar~ao menores no futuro, a nova te nologia

qu^anti a deve substituir ou omplementar a que nos temos agora. A quest~ao e que a

te nologiaqu^anti a pode ofere ermuitomais queapossibilidadede abarrotar osil iode

bitsaumentandoassimavelo idadedepro essamento. Elapodedar origemauma forma

de omputa ~ao ompletamentenova om algoritmosbaseados nos prin pios qu^anti os."

A Computa ~ao Qu^anti a vai alem, portanto, de ser uma te nologia mais rapida e

miniaturizada para a onstru ~ao de omputadores. Um omputador qu^anti o e uma

maquina que usa uni amente efeitos qu^anti os, omo a interfer^en ia e a superposi ~ao,

paraexe utartipostotalmentenovosde omputa ~aoqueseriamimpossveis,emprin pio,

de serem realizados om e i^en ia emqualquer omputador lassi o.

O on eitode omputadorqu^anti ofoilan adoporFeynmanemumartigode1982 [23℄

,

noqualelea rmaain apa idadede omputadores lassi ossimularemsistemasqu^anti os

e ientemente, elan ouaideiade um omputadorqu^anti o omo umsimuladorqu^anti o

universal. A ideiafoi levadaadianteporDeuts h [17℄

,que prop^osum modelo paraa

Com-puta ~ao Qu^anti a universal, onde mostrou que basta usar um sistema qu^anti o de dois

estados e de nir um pequeno onjunto de opera ~oes simples para reproduzir a evolu ~ao

unitarianotempode qualquersistemaqu^anti o. Este formalismofoiposteriormente

re -nadoporFeynman [24℄

eDeuts h [18℄

,oquelevouaumades ri ~aodaComputa ~aoQu^anti a

muitosimilaraquelada omputa ~ao lassi aatravesdeportaslogi asbooleanas. Deuts h

mostrou que uma maquina qu^anti a universal e apaz de simular qualquer maquina de

Turing.

Entretanto,ateent~ao,aComputa ~aoQu^anti aeraapenasuma uriosidadea ad^emi a.

Somenteem1994, quandoPeter Shorpubli ouseu artigo [40℄

omum algoritmoemtempo

polinomial para fatora ~ao de numeros primos | um problema que ainda hoje n~ao tem

solu ~ao lassi a e iente onhe ida | e que se per ebeu que a Computa ~ao Qu^anti a

realmente poderia ter alguma utilidadeprati a, i.e., poderia resolver problemas reais de

formamaise ientedoquea omputa ~ao lassi a. Outrosalgoritmosquesurgiramdesde

ent~ao s~ao o algoritmo de Grover [29℄

, que ofere e um aumento quadrati o em velo idade

parabus as embases de dados n~ao-ordenadas, eo algoritmode Shor [41℄

(16)

erros.

Enquanto a parte teori a da Computa ~ao Qu^anti a vem se desenvolvendo om

rapi-dez,aparteexperimentalaindaenfrentagrandesdi uldades,devidoaenormesobsta ulos

aindaatransporparase onstruirefetivamenteuma maquinaqu^anti a. Diversas

te nolo-giasv^em sendo propostas, entre elas,ons aprisionados

[12,35,39℄

, eletrodin^ami a qu^anti a

de avidades (QED) [44℄

eresson^an ia magneti a nu lear (NMR),para implementar

regis-tradores e portas qu^anti as. A te nologia NMR foi usada om su esso para desenvolver

sistemas de 2 e 3 qubits. Esses omputadores qu^anti os minus ulos foram usados para

implementaro problema de Deuts h [31℄

e o algoritmode Grover [27,32℄

e mostrarqueesses

algoritmosqu^anti os podem ser exe utados emhardware qu^anti o.

Embora essas implementa ~oes basi as ja tenhamsido realizadas, aindaha problemas

serios de es alabilidade, des oer^en ia e ontrolabilidade a serem resolvidos. Alem disso,

aindan~aohahardware qu^anti oforadoslaboratoriosde pesquisa,emesmoquehouvesse,

os sistemas onstrudos n~ao seriam su ientes para uma explora ~ao detalhada de alguns

dosalgoritmosqu^anti osqueforampropostos. Atequeseresolvamtodosessesproblemas,

a simula ~ao de omputadores qu^anti os (em omputadores lassi os) pode ser uma boa

solu ~aotemporaria, embora quelimitada, omo sera vistoa seguir.

1.2 Simuladores

A simula ~ao digital e uma te ni a largamente utilizada para se prever o

omporta-mento de sistemas, sejam estes reais ou hipoteti os. Como, muitas vezes, n~aoe possvel

se onstruir o sistema si amente(por este ser de dif ilmanuseio ou exigirre ursos n~ao

disponveis), ou mesmo sequer o sistema existe, faz-se uso de simula ~ao para se prever

o seu omportamento. Alem disso, a simula ~ao digital permite a repeti ~ao do

experi-mento varias vezes, om valores diferentes e testando situa ~oes-limites sem que nenhum

equipamentosejadani adooupre isede manuten ~ao(ajustes,reposi ~aode pe as, et .).

N~ao menos importante e a utilidade que a simula ~ao tem no aprendizado da teoria

sobre o sistema sendo simulado. Os simuladores, por permitirem repeti ~ao dos testes e

variedade de valores, permitemuma melhor ompreens~aodofun ionamento dosistema.

Um bom exemplo dautilidade dasimula ~aoe oplanejamento de ir uitos digitais [2℄

.

Apesar de ser barato e fa ilde se onstruir um ir uito digital hoje em dia, simuladores

de ir uitosdigitais forame aindas~ao largamenteusados para o

planejamento/desenvol-vimentode ir uitosdigitais.

1.2.1 Simuladores Qu^anti os

Devido aos problemas om a implementa ~ao de um hardware qu^anti o itados na

se ~ao anterior, torna-seimperativo ouso de simuladoresna Computa ~aoQu^anti a para:

explorar e desenvolver algoritmos qu^anti os, investigar e ara terizar erros intrnse os

(des oer^en ia) e opera ionais, investigar odigos de orre ~ao de erros, e, adi ionalmente,

para implementar e simular os algoritmosqu^anti os onhe idos, estimulando o

(17)

im-portantedeapli a ~aodesimuladoresqu^anti os, aindan~aoexplorada,seria naInforma ~ao

Qu^anti a, para a investiga ~ao, desenvolvimento e experimenta ~ao de modelos de anais

qu^anti os.

Outra vantagemdouso de um simuladorqu^anti o e apossibilidade de sevisualizaro

estadoqu^anti odurantea omputa ~ao,ouseja,nospassosintermediariosda omputa ~ao.

Esta observa ~ao e proibida pelas leis da Me ^ani a Qu^anti a (o orreria des oer^en ia na

observa ~ao) e portanto, impossvel de ser feita em uma maquina real. A observa ~ao

desses estadosintermediarios permite oestudo dos efeitos ausados pelos erros.

1.2.1.1 Problemas da Simula ~ao

Como Feynman observou, a uni a maneira de se simular e ientemente um sistema

qu^anti o e usando outro sistema qu^anti o. Um simulador de omputadores qu^anti os e

uma tentativa de se modelar um sistema qu^anti o em um sistema lassi o, e isso e

im-possvel de ser feito e ientemente. O simulador qu^anti o exe utado em uma maquina

lassi a tera que manter registro de um numero exponen ial ( om rela ~ao ao tamanho

da entrada) de forma a simular o sistema qu^anti o om pre is~ao. \Para simular um

vetor de estadosemum espa ode Hilbert 2 n

-dimensional,um omputador lassi o

pre i-sara manipular vetores ontendo na ordem de 2 n

numeros omplexos, enquanto que um

omputador qu^anti o requer apenas n qubits, isto o torna mais e iente em espa o de

armazenamento." [42℄

. Isso impli a que asimula ~aode omputadores qu^anti os requer

re- ursosextraordinariosn~aoapenasdeespa o, mastambemdetempo,que res enamesma

raz~aodo espa o ne essario para armazenaros dados.

1.2.2 Estado Atual

Ate nossos dias, o mais abrangente e ompleto trabalho sobre simuladores de

om-putadores qu^anti os e o apresentado por Julia Walla e [46℄

que dis ute os simuladores de

omputadores qu^anti os e sua import^an ia noestudo, na pesquisa e nodesenvolvimento

daComputa ~ao Qu^anti a. Osdiversos tipos eexemplares de simuladoresate ent~ao

exis-tentes s~aodes ritos e omparados segundo seu desempenho naexe u ~ao doalgoritmode

Shor. A maioria dos simuladores qu^anti os la des ritos s~ao simuladores espe  os para

apenas um ououtro algoritmoqu^anti o (tal omo oalgoritmode fatora ~aode Shor ouo

algoritmode bus ade Grover). Noentanto,emlevantamentomais re ente realizadopelo

autor [10℄

, foram identi ados novos simuladores mais elaborados que usam o modelo de

ir uitosqu^anti osde Deuts hepermitemqueousuario(projetista)monteum algoritmo

qu^anti o qualquer a partir das portas qu^anti as basi as disponveis. Esses simuladores

s~ao ditos universais no sentido que disponibilizamportasqu^anti as universais su ientes

paraaimplementa ~aode qualqueralgoritmoqu^anti o. Nesta ategoria est~aoosimulador

QComputer,de D. Mens her [34℄

, oQuantum Computer SimulatordaSenko Corp. [1℄

, o

si-muladorjaQuzzi, desenvolvidoporFelixS hurmann [38℄

eoQCSim,desenvolvidoporPaul

Bla k e M. Cass [11℄

. A tend^en ia e que os simuladores evoluam nesta dire ~ao, ou seja,

simuladores de ir uitos qu^anti os que permitam que o usuario monte qualquer ir uito

(18)

1.2.3 De i^en ias

Apesar de representarem uma ontribui ~ao onsideravel no apoio a modelagem e

si-mula ~aodealgoritmosqu^anti os,essesnovossimuladores itadosa imaaindaapresentam

algumasde i^en ias, quepodem ser lassi adas emtr^es ategorias:

1. Fun ionalidade

2. Usabilidade

3. Do umenta ~aodo desenvolvimento

1.2.3.1 Fun ionalidade

Apesar de ja existirem simuladores universais, esses simuladores, em geral, ainda

apresentam de i^en ias om respeito afun ionalidadesdesejaveistantodopontode vista

da Computa ~ao Qu^anti a (modelagem simula ~ao de algoritmos) quanto da Informa ~ao

Qu^anti a (modelagem e simula ~ao de anais qu^anti os). Entre essas de i^en ias,

pode-se itar: o uso ex lusivo de estados puros (a maioria) ou de estados mistos (QCSim);

a impossibilidade de medi ~ao em bases diferentes da base omputa ional; a aus^en ia da

opera ~ao de tra o par ial (a ex e ~ao do QCSim); a n~ao gera ~ao de erros opera ionais

e de des oer^en ia no ir uito (a ex e ~ao do jaQuzzi); entre outras; a utiliza ~ao apenas

de portas pre-de nidas (QCSim); a impossibilidade de ria ~ao de bibliote as de portas

personalizadas.

1.2.3.2 Usabilidade

Uma boa interfa e om o usuario e essen ial para uma boa e fa il utiliza ~ao de um

sistema omputa ionalpoisela propor iona fa ilidade de aprendizagem, de uso e de

en-tendimento dosistema.

Dos simuladores avaliados, o QCSim e o QComputer n~ao apresentam uma interfa e

segundo os padr~oes atuais de uma boa interfa e (interfa e gra a). Suas interfa es s~ao

textuais, o que di ulta a visualiza ~ao e edi ~ao de um ir uito. O jaQuzzi apresenta

interfa egra a,mas semre ursos de manipula ~aodireta,aedi ~aoefeitatotalmentepor

meiode menus eformularios. OSenko, porsua vez, apresentauma interfa e gra a om

manipula ~aodireta. Amanipula ~aodiretapermite quesemanipuleoselementosgra os

semquesetenhaquere orreramenus, formularios,et .,ouseja,usandoapenasomouse.

1.2.3.3 Do umenta ~ao do Desenvolvimento

Ado umenta ~aode desenvolvimentode umsistema omputa ionaleimportantepara

a ompreen ~ao de sua arquitetura e para que projetos omo o presente trabalhopossam

aproveitar as ideias japensadas por outros, e onomizando tempo de desenvolvimento.

Pou osdossimuladoreslistadosa imaapresentam umado umenta ~aosolidade omo

(19)

apresenta apenas odiagramade lasses euma des ri ~aosu intados seus modulos

prin i-pais. O QCSime oQComputern~aoapresentam do umenta ~aode projeto,mas apenas o

odigo fontedo simulador.

1.3 Objetivo

Um novo simulador qu^anti o deve implementar as prin ipais fun ionalidades dos

si-muladores ja existentes, e superar as suas de i^en ias om rela ~ao a fun ionalidade, a

usabilidadee a do umenta ~ao.

Assim, o presente trabalho tem omo objetivo prin ipala on ep ~ao e o

desenvolvi-mento de um simulador universal de ir uitosqu^anti os. Este simulador deve:

1. ofere er re ursos fun ionais que permitam modelar e simular algoritmos e anais

qu^anti os utilizandoomodelo de ir uitosqu^anti os;

2. ofere erre ursos avan ados de manipula ~ao direta que permitamaedi ~aoe a

mon-tagemde ir uitos de maneira fa ile intuitiva;

3. disponibilizarumado umenta ~aoapropriadatantodopro esso dedesenvolvimento

quanto daferramentaa ser onstruda.

1.4 Relev^an ia

Um simulador de ir uitos qu^anti os e um elemento valioso no ensino e na

aprendi-zagemdaComputa ~aoQu^anti a e daInforma ~aoQu^anti a, devidoa fa ilidadede uso, a

pre is~aoe a velo idade de resposta que a ferramentapropor iona om rela ~ao a al ulos

manuais, que e, em geral, a uni a alternativa disponvel. Alunos e professores poder~ao

validar os resultados dos al ulos, alem de poder usar a ferramenta em exer  ios para

testarvarias solu ~oes.

TambemnapesquisadaComputa ~aoQu^anti aedaInforma ~aoQu^anti a,ousodeum

simuladorede grandeimport^an ia,poispermiteavalida ~aode algoritmosemodelos,eo

estudodoserrosedosefeitos ausadospelasdiversaspropriedadesqu^anti as(interfer^en ia,

superposi ~ao,et ).

Para ogrupo lo alde estudosemComputa ~aoeInforma ~aoQu^anti a daUFCG, um

simuladorde ir uitosqu^anti os sera valioso devido as raz~oes apresentadas a ima, assim

omo ao estmulo a melhoria e ao desenvolvimento de dis iplinas sobre o assunto, alem

de servir de ve ulo de divulga ~aodogrupo forada UFCG.

1.5 Metodologia de Trabalho

(20)

1. realiza ~aodeestudossobreosfundamentosdaMe ^ani aQu^anti aedasuaapli a ~ao

naComputa ~aoe naInforma ~aoQu^anti as;

2. realiza ~ao de estudos e levantamento das prin ipais ferramentas de simula ~ao de

ir uitosqu^anti os existentes atualmente;

3. de ni ~ao dos requisitos gerais,ou re ursos que a ferramentadeve ofere er;

4. sele ~aoe utiliza ~ao de metodos e te ni as de engenharia de software e de interfa e

homem-maquina para levantamentode requisitos fun ionaise n~ao-fun ionais;

5. realiza ~aodo projeto, daimplementa ~aoe de testesda ferramenta desenvolvida;

6. elabora ~ao de artigos te ni o- ient os para a divulga ~ao do trabalho e aspe tos

deste.

1.5.1 Metodologia de Desenvolvimento

Para a parte fun ional, foi usado um pro esso simpli ado baseado no Pro esso

Uni ado [33℄

, e para a parte da intera ~ao om o usuario foi utilizada a metodologia

MEDITE [30℄

de on ep ~aoedesenvolvimentode interfa ebaseadanaanaliseemodelagem

datarefa.

1.5.2 Analise de Resultados

Os resultados dotrabalhoser~aoavaliados de duas formas: (i)a onformidade da

fer-ramentaimplementada om osrequisitosplanejadose (ii)o desempenhoea orre ~aodos

resultados da simula ~ao da ferramenta desenvolvida em ompara ~ao om o desempenho

eos resultados obtidosno simuladorjaQuzzi.

No que se refere a onformidade om os requisitos planejados, ser~ao omparadas as

fun ionalidadesimplementadas omasqueforampropostasnoin iododesenvolvimento.

Quanto ao desempenho, ser~ao omparados os tempos de simula ~ao e os resultados

obtidosnas simula ~oesde alguns ir uitosemaomenos doissimuladores(umdeles sendo

osimulador sendo desenvolvido neste trabalho).

1.6 Estrutura da Disserta ~ao

Apos esta introdu ~ao,e apresentado um aptulo (Captulo 2) sobre os fundamentos

teori os daComputa ~ao Qu^anti a, em espe ial sobre omodelo de ir uitosqu^anti os.

O Captulo 3 aborda a de ni ~ao dos requisitos gerais, ou re ursos que a ferramenta

deve ofere erpara seus usuarios de formaa atender aos objetivosde nidos naSe ~ao1.3.

OCaptulo4apresentaumades ri ~aodopro essodedesenvolvimentodaferramenta,

(21)
(22)

2 Fundamenta ~ao Teori a {

Computa ~ao Qu^anti a

A utiliza ~ao de fen^omenos qu^anti os para a representa ~ao e pro essamento de

in-forma ~ao se apresenta hoje omo uma das alternativas mais promissoras para futuras

gera ~oes de dispositivos omputa ionais. Asvantagensteori asadvindas dessa utiliza ~ao

v^ematraindoaten ~ao res entedo mundo ient o e te nologi o/industrial.

Em 1985, Deuts h prop^os um algoritmo, utilizando apenas opera ~oes qu^anti as,

a-paz de resolver um determinado problema matemati o impossvel de ser resolvido om

opera ~oes ou metodos lassi os. O problema ( hamado o Problema de Deuts h) onsiste

em determinar se uma fun ~ao booleana f : f0;1g !f0;1ge onstante ou balan eada 1

avaliando-a apenas uma vez [17℄

. No entanto, esse algoritmoso al an ou notoriedade em

1989, quando Deuts h introduziu a no ~ao de portas logi as qu^anti as que poderiam ser

one tadas umas as outras formando um ir uito ou malha qu^anti a [18℄

. O algoritmode

Deuts hrees ritonanovalinguagemteveapartirde ent~aoumaamplareper uss~ao,poisa

linguagemdosqubits(analogoqu^anti oaobit lassi o)eportaslogi asqu^anti as(analogo

qu^anti oasportas logi asbooleanas)erasimilaralinguagem de ir uitoslogi os/digitais

onven ionais e poderia ser mais fa ilmenteentendida porengenheiros eletri istase

ien-tistasdaComputa ~ao. Daemdiante, outrosalgoritmosqu^anti osforamdesenvolvidos e

difundidosutilizando-seomodelode ir uitosqu^anti osdeDeuts hasso iadoalinguagem

matemati a.

Neste aptulo, vamos apresentar as no ~oes basi as e os on eitos fundamentais da

Computa ~aoQu^anti a

[6,21,26℄

edaInforma ~aoQu^anti a

[28,36,37℄

,atravesdaapresenta ~ao

domodelode ir uitosqu^anti os,fazendosempreo ontra-ponto omasno ~oese on eitos

basi os da Computa ~aoClassi a ja onhe idos.

2.1 Representa ~ao da Informa ~ao

Na Computa ~ao Qu^anti a, ao inves da no ~ao lassi a de bit, temos a no ~aode qubit

(quantum bit). Diferentemente de um bit de informa ~ao, que pode estar em (ou

repre-sentar) apenas dois estados distintos, 0 ou 1, um qubit, alemdos estados j0i e j1i, pode

1

Umafun ~aobooleanaebalan eadasemetadodeseudomniolevaa0eaoutrametadelevaa1,ee

(23)

estar em qualquer superposi ~ao de estados daforma: j i= 0 j0i+ 1 j1i (2.1) onde 0 e 1

s~ao oe ientes omplexos e taisque j

0 j 2 +j 1 j 2

=1. As nota ~oes j0i e j1i

representam, respe tivamente, osvetores:

j0i=  1 0  j1i=  0 1  (2.2)

ea nota ~aoj i representa ovetor:

j i=  0 1  (2.3)

Um qubitpode ser realizadode diversas formas: por meio de uma part ula de spin

1=2,onde os estadosj0ie j1i orresponderiam, respe tivamente, aos estados spin-down

e spin-up; ou ainda por meio de aminhos seguidos pelo feixe (ou pelo foton) ao passar

porum interfer^ometro. Embora um qubitpossa ser preparadoemum numeroin nitode

estados qu^anti os (

0 e

1

s~ao omplexos), quando medido, so podemos obter um bit de

informa ~ao. A medi ~ao de um qubit ini ialmente emum estado

0

j0i+

1

j1i dara omo

resultado o bit 0, om probabilidade j

0 j

2

, ou o bit 1, om probabilidade j

1 j

2

, ou seja,

num aparato de medi ~ao,os resultados 0 e 1 seriam registrados om probabilidadesj

0 j 2 ej 1 j 2

nos respe tivosdete tores. Depoisdeuma medi ~ao,ao ontrariodeum bit lassi o

que mantem o seu estado, o estado de um qubit e alterado para o estado j0i ou j1i, de

a ordo om as respe tivas probabilidades. Ou seja, medirum qubitaltera, emgeral, seu

estado.

Emum omputador lassi o,bitss~aoagrupadosem onjuntos hamadosregistradores.

Ent~ao,se um bit pode armazenar um dos dois numeros 0 ou1, um registrador de n bits

pode armazenar 2 n

numeros diferentes (f0;1;:::;2 n

1g),um por vez.

Emum omputadorqu^anti o,umregistradordenqubits,porsuavez,podearmazenar

2 n

numerosdiferentes aomesmo tempo. Porexemplo, om 2qubits podemosrepresentar

oestado: j i=j 1 ij 2 i =( (1) 0 j0i+ (1) 1 j1i)( (2) 0 j0i+ (2) 1 j1i) = (1) 0 (2) 0 j0ij0i+ (1) 0 (2) 1 j0ij1i+ (1) 1 (2) 0 j1ij0i+ (1) 1 (2) 1 j1ij1i  (1) 0 (2) 0 j0ij0i+ (1) 0 (2) 1 j0ij1i+ (1) 1 (2) 0 j1ij0i+ (1) 1 (2) 1 j1ij1i (2.4)  0 j0i+ 1 j1i+ 2 j2i+ 3 j3i (2.5) = 3 X x=0 x jxi (2.6) onde (j) i indi a o oe iente i

(24)

2.2 Pro essamento da Informa ~ao

Em um omputador lassi o, o pro essamento da informa ~ao e realizado por

dispo-sitivos hamados de ir uitos logi os,que s~aoagrupamentosde dispositivosmais simples

onhe idosporportas logi as. Umaportalogi aopera sobreoestadodosbitsdaentrada,

obtendoum outro estadonasada orrespondendo asua \tabeladaverdade". Por

exem-plo, a porta logi a NOT inverte na sada o estado do bit da entrada (a = 1 a): se o

bit da entrada (a) estiver no estado 0, ent~ao o bit 1 e gerado na sada (a), e vi e-versa.

A porta AND tem dois bits na entrada (a e b) e gera uma sada, , dada por = ab.

Comas portas logi asNOT e ANDe possvel onstruir ir uitoslogi os apazes de

om-putar qualquer fun ~ao f :f0;:::;2 m

1g ! f0;:::;2 n

1g teori amente omputavel [36℄

.

Representando as portas NOT eAND omo naFigura1

a 1 a

a

b

ab

Figura1: Portas NOT eAND, respe tivamente

e one tando as portas umas asoutras por os, podemos representar os ir uitoslogi os

atraves de um diagrama. Por exemplo, o diagrama da Figura 2 representa um ir uito

logi o que realiza (ou omputa) a fun ~ao f(a;b) = ab, onde  e a opera ~ao adi ~ao

modulo 2 (mod 2) 2 . a b ab

Figura2: Cir uito que omputa a fun ~aoadi ~aomodulo2.

2.3 Portas de Um Qubit

Emum omputadorqu^anti oopro essoesimilar,ouseja,podemos onstruir

(teori a-mente) ir uitosqu^anti os, ques~aoagrupamentosde dispositivosmais simples hamados

portas qu^anti as, que realizam opera ~oes unitarias sobre um registrador qu^anti o. Uma

portaqu^anti a simplesapli auma opera ~aounitariaU (de nidaporuma matrizunitaria

22) 3

sobreum qubit noestadoj i fazendo-oevoluir para oestadoUj i. Porexemplo,

aporta qu^anti a X,des rita pelamatriz:

X =  0 1 1 0  (2.7) 2

Naaritmeti amodular, aopera ~aomodulo2ede nida omoorestordadivis~aoeu lidianadeum

numerompor 2: m=k2+r,ondekeuminteiro. Ent~ao,dizemosquer=mmod2.

3

Uma matriz unitariaU etodaaquelaquesatisfazaseguintepropriedade: UU y

=I =U y

(25)

orresponde aporta logi aNOT: Xj0i=  0 1 1 0  j0i=  0 1 1 0  1 0  =  0 1  =j1i (2.8) Xj1i=  0 1 1 0  j1i=  0 1 1 0  0 1  =  1 0  =j0i (2.9)

A matriz quedes reve aporta X perten e a um grupo espe ial de matrizes na

Com-puta ~ao Qu^anti a, as matrizes de Pauli. As matrizesde Paulis~aoquatro:

I = 0   1 0 0 1  X = 1 = x   0 1 1 0  Y = 2 = y   0 i i 0  Z = 3 = z   1 0 0 1  (2.10)

A import^an ia das matrizesde Pauliseravista mais a frente.

Examinando-se as matrizes de Pauli, per ebe-se que nem todas as portas possuem

orrespondentes lassi as. Outrosexemplosdeportasqu^anti assemequivalentes lassi as

s~ao: H = 1 p 2  1 1 1 1  S =  1 0 0 i  T =  1 0 0 e i=4  (2.11)

A porta H, hamada de Hadamard, tem o seguinte efeito sobre os estados da base

omputa ional: Hj0i= 1 p 2  1 1 1 1  1 0  = 1 p 2  1 1  = j0i+j1i p 2 Hj1i= 1 p 2  1 1 1 1  0 1  = 1 p 2  1 1  = j0i j1i p 2 ; (2.12)

ouseja,levaumestadodabaseemumasuperposi ~aodeestadose,seapli adanovamente,

levaa superposi ~aoao estadooriginal.

2.4 Rota ~oes Asmatrizes dePauli ( x ; y ; z

;)maisamatrizidentidade(I)formamumabase para

o onjuntodos operadores (matrizes)unitariosde dimens~ao2,ouseja, qualqueroperador

unitario U (22) pode ser expresso atraves de uma de omposi ~ao linear nessa base, a

menosde uma faseglobal (e i ): U =u o I+i~v~ (2.13) onde u o  e um es alar (real), ~v = (v x ;v y ;v z

), um vetor real, e o vetor ~  (

x ; y ; z ). Observe que: ~v~=v  +v  +v  (2.14)

(26)

eo produto es alarentre osvetores~v e~.

U pode ser rees rito omo:

U = os(=2)I +isen (=2)(~n~)=e i ~n~

; (2.15)

onde~neum vetor real unitarioparaleloa~v, e , o ^angulode ~n om o eixopolar.

Ent~ao, de 2.13 e 2.15, podemosdeduzir que qualquer operador unitariode dimens~ao

2pode ser interpretado omouma rota ~aodeum vetorde  radianosemtornodoeixo~n.

A partirda Equa ~ao 2.15, podemos desta ar tr^es asos espe iais de rota ~ao,que s~ao

asrota ~oes emtornodoseixosx,y ez, hamadas deoperadores de rota ~ao,edadaspelas

seguintes equa ~oes:

R x ()e iX=2 = os  2 I isen  2 X =  os  2 isen  2 isen  2 os  2  (2.16) R y ()e iY=2 = os  2 I isen  2 Y =  os  2 sen  2 sen  2 os  2  (2.17) R z ()e iZ =2 = os  2 I isen  2 Z =  e i=2 0 0 e i=2  (2.18)

2.4.1 De omposi ~ao em Rota ~oes

Utilizando os operadores de rota ~ao de nidos a ima, podemos mostrar que qualquer

operadorunitarioU de dimens~ao2podeser de ompostoemumasequ^en iadeoperadores

de rota ~ao,seguida de um deslo amento de fase:

U =e i R z ( )R y ( )R z (Æ) (2.19)

onde , , e Æ s~aonumeros reais.

Igualmente, tambem epossvelfazer uma de omposi ~ao nos eixos xe y:

U =e i R x ( )R y ( )R x (Æ) (2.20)

2.5 Portas Controladas de Dois Qubits

As portasX eH s~aoportasqu^anti as simplesqueapli amopera ~oes qu^anti as sobre

umuni oqubit. Apesardo onjuntode portasqu^anti assimplesserin nito(onumerode

matrizesunitarias22e in nito),esse onjunton~aoeuniversal,ouseja,n~aoesu iente

para onstruir ir uitosqu^anti os querepresentam opera ~oes qu^anti assobre umnumero

nqualquerdequbits(matrizesunitariasnn). Paratanto,epre isoautiliza ~aodeportas

qu^anti as de multiplosqubits ujo representante prin ipale aporta NOT- ontrolada ou,

omoemais onhe idanaliteratura,porta CNOT.Esta porta apli aumaopera ~aosobre

(27)

des ritapela matriz44 mostrada abaixo: 2 6 6 4 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 3 7 7 5 (2.21)

e ujaatua ~aose pro essa daseguinteforma: se oqubitde ontrole a esta noestadoj0i,

oestado jbi do qubit alvopermane e inalterado. Se oqubit de ontrole a esta noestado

j1ioestadojbi doqubit alvoealteradopara jbai. A opera ~aosobre oqubitalvopode

ser expressa omo X a

jBi, onde X e a porta X e o sobres rito \a" e o valor do bit de

ontrole. O diagramadaFigura 3representa aporta CNOT.

jai

jbi

jai

jbai

Figura3: Porta CNOT

PodemosgeneralizaraportaNOT- ontroladaparaumaportaU- ontroladasobredois

qubits, onde U e uma opera ~ao unitaria sobre um simples qubit, e uja a ~ao e des rita

pelodiagramada Figura4.

jai jbi jai U a jbi

Figura4: Porta U- ontrolada

2.6 Computa ~ao Reversvel

No naldos anos70,os ientistas ome aramaquestionarasimpli a ~oesqueaFsi a

teria sobre a Computa ~ao. Ini ialmente, a termodin^ami a da omputa ~ao lassi a era

o alvo prin ipal dos esfor os, om quest~oes sobre o mnimo de energia ne essaria para

realizaruma dada omputa ~ao,ouquanto aloroapagamentodeum bitdissiparia,entre

outras [47℄

.

Osmodelosde omputadoresresultantesdessaspesquisasserviram omoexperimentos

teori os ideais querevelaram algumas onex~oes intrigantes entre a reversibilidade logi a 4

e a termodin^ami a. Charles Bennett [8℄

, da IBM, mostrou que qualquer opera ~ao logi a

irreversvelteria que dissipar uma erta quantidade mnima de energia.

4

Seumaopera ~aoereversvel,ent~aopode-seobteroestadoanteriorasuaapli a ~aoapartirdoestado

(28)

Em 1982, Ed Fredkin e Tommaso To oli provaram que era possvel onstruir

si a-menteumaportalogi a lassi auniversalereversvel [25℄

. AportaapresentadaporFredkin

eTo oli levou onome do segundo. A porta To oli erepresentada pela Figura5.

a

b

Figura5: Porta To oli

A a ~aorealizada peladaporta To olipode ser des ritapela matrizabaixo:

2 6 6 6 6 6 6 6 6 6 6 4 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 3 7 7 7 7 7 7 7 7 7 7 5 (2.22)

AportaTo olipode serusadaparaimplementartodasasopera ~oesbooleanas(AND,

NAND, OR, NOT), assim omo a opera ~ao FANOUT. Por exemplo, para omputar a

opera ~aoNAND, olo a-se osdois bits deentrada omo asentradas aeb daportaTo oli

eprepara-seumbitnoestado1asso iadoaentrada (bitan illaoudetrabalho). Asada

do NAND e lida na sada do ir uito. A opera ~ao FANOUT pode ser implementada

preparando-se um bit de trabalho no estado 1 para a entrada a, um bit de trabalho no

estado0 naentrada , eobitque sequer opiarnaentrada b. A sada ontera a opia.

Assim, um ir uito lassi o qualquer pode ser e ientemente simulado usando-se um

ir uitoreversvel onsistindo apenas de portas To oli ebits de trabalho [36℄

.

Ent~ao, esses trabalhos mostraram que a Computa ~ao Classi a pode ser realizada de

formatotalmentereversvel, a arretando, portanto, um gasto mnimode energia.

2.7 Computa ~ao Qu^anti a

ComojafoiditonaSe ~ao2.3, asportasqu^anti asimplementamoperadores unitarios,

ou seja, operadores que satisfazem a propriedade UU y

= I =U y

U. Isso impli a que, se

existeooperadorunitarioU,ent~aoexiste umoperadorunitarioU y

querealizaaopera ~ao

inversa. Ou seja, se U e apli ado a um estado j i, teremos um resultado j

o

i na sada.

Apli ando,agora, ooperador U y

aj

o

(29)

Classi amente, um ir uito para omputar uma fun ~ao n-aria 5

f onsistiria em um

aglomerado de portas om n entradas x

1 ;:::;x n e uma sada y=f(x 1 ;:::;x n ).

En-tretanto, um ir uito qu^anti o n~ao pode omputar uma fun ~ao dessa forma pois uma

opera ~ao qu^anti a e unitaria e portanto reversvel. Um omputador qu^anti o pre isa de

2 registradores: um para guardar o estado da entrada e outro para o estado da sada,

alem de bits extras de trabalho. A omputa ~ao de uma fun ~ao seria determinada por

uma opera ~ao unitaria U

f

que agiria sobre os dois registradores (a menos dos bits de

trabalho), preservando aentrada:

U

f

(jxijyi)=jxijyf(x)i (2.23)

Podemos observar quese y = 0,

U

f

(jxij0i)=jxij0f(x)i=jxijf(x)i (2.24)

Suponhaqueseprepareumregistradorqu^anti oj idemqubitsemumasuperposi ~ao

de todos os valores de entrada (2 m

) utilizando m portas Hadamard, omo na Figura 6.

Apli andoU

f

aj ij0i, omo naFigura 7,obtemos:

U f (j ij0i)=U f ( 1 2 m=2 2 m 1 X x=0 jxij0i) = 1 2 m=2 2 m 1 X x=0 jxijf(x)i (2.25)

Ouseja,s~ao omputadostodosos2 m

valoresf(0);f(1);:::;f(2 m

1)aomesmotempo

om uma uni a apli a ~ao de U

f

. Essa ara tersti a de poder al ular varios valores de

f(x)aomesmotempoe hamadade paralelismoqu^anti o. O ir uitodaFigura7sintetiza

ades ri ~aoa ima. No entanto,este paralelismo por siso n~aose on retiza emvantagem

poisaomedirasadado ir uito(oresultado da omputa ~ao) obtemosapenasovalorda

fun ~ao em um ponto, que n~ao re ete toda a informa ~ao ontida na superposi ~ao. Uma

maneira de se obter uma informa ~ao global sobre a fun ~ao e fazendo uso do fen^omeno

dainterfer^en ia,que, junto om o fen^omenoda superposi ~ao, onstitui abase dos atuais

algoritmosqu^anti os.

1 2 n=2 P 2 n 1 x=0 jxi

Figura 6: Cir uito quep~oeregistrador no estado 1 2 n=2 P 2 n 1 x=0 jxi. 5

Uma fun ~ao n-aria e uma fun ~ao ujo domnio tem dimens~ao n, ou seja, uma fun ~ao om n

(30)

1 2 m=2 P 2 m 1 x=0 jxijf(x)i

Figura7: Computandovalorde f para todos osvalores de x.

2.8 Portas Qu^anti as Universais

Na Computa ~ao Classi a, existem onjuntos de portas logi as a partir das quais e

possvel se onstruir um ir uito para implementar qualquer fun ~ao booleana. Esses

onjuntos s~ao hamados de onjuntos de portas universais. Por exemplo, o onjunto

formadopelas portas AND eNOT mais aopera ~aofanout ( opia)e universal. Na

Com-puta ~aoQu^anti a,existem tambem onjuntos de portasuniversais, porem,nem sempree

possvelseimplementarafun ~aodesejada omexatid~ao. 

Asvezesepossvelapenasobter

uma aproxima ~ao da fun ~ao. Entretanto, o grau de aproxima ~ao pode ser ontrolado

arbitrariamente [6,36℄

.

A seguir, ser~ao mostrados alguns onjuntos de portas qu^anti as universais, a partir

dos quais se pode de ompor(aproximada ou exatamente) qualquer opera ~ao unitariade

qualquer dimens~aoemuma sequ^en ia de portas de nidas por esses onjuntos.

2.8.1 Universalidade de Hadamard e as Portas de Fase

A porta Hadamarde asportas de fase  de nidas abaixo:

=  1 0 0 e i  (2.26)

podem ser ombinadas para implementar exatamente qualquer opera ~ao unitaria sobre

um qubit [21℄

. Pode-se ver que as portas de fase implementam rota ~oes sobre o eixo z

(v.Equa ~ao2.18).

2.8.2 De omposi ~ao de C(U)

Existe uma forma de se de ompor qualquer opera ~ao unitaria U de um qubit

on-trolada por outro qubit (C(U)) em uma sequ^en ia de portas de um qubit e de portas

CNOT.NielseneChuang [36℄

mostraramque,paraumoperadorunitarioqualquerU sobre

um uni o qubit, existem operadores unitarios A, B e C sobre um uni o qubit tais que

ABC =I e e i

(31)

Fazendo-se A=R z ( )R y ( =2) (2.27) B =R y ( =2)R z ( (Æ+ )=2) (2.28) C=R z ((Æ )=2) (2.29)

onde , eÆ s~ao ^angulos de rota ~ao emtorno do eixosz, y e z respe tivamente. Temos

ent~ao que: ABC =I (2.30) etambem: e i AXBXC =e i R z ( )R y ( )R z (Æ)=U (2.31) pelaequa ~ao 2.20.

Com este resultado,epossvelse realizara seguinte de omposi ~ao:

=

Figura8: De omposi ~aode porta U ontrolada

Ou seja,qualquer opera ~aosobre dois qubits dotipo C(U) pode ser realizada

exata-mente por uma sequ^en ia de 4 portas de um qubitmais 2portas CNOT.

2.8.3 De omposi ~ao de C 2

(U)

Para se de ompor qualquer opera ~ao unitaria U de um qubit ontrolada por dois

qubits (C 2

(U))usa-se umpro edimentoum pou o diferente. Aopera ~aoC 2

(U) pode ser

de omposta em portas CNOT e portas de um qubit ontroladas por um qubit C(V) e

C(V y

),onde V 2

=U. A Figura9 mostraessa de omposi ~ao:

Figura 9: De omposi ~ao de porta U ontroladapor2 qubits

Ou seja, qualquer opera ~ao sobre tr^es qubits do tipo C 2

(U) pode ser realizada

(32)

Assim, a portas Hadamard, as portas de fase e a porta CNOT formam um onjunto

in nitoeuniversalde portas. Pode-semostrarquequalquer opera ~aounitariaden qubits

pode ser implementada exatamente om O(4 n

n) portas desse onjunto [21℄

.

2.8.4 De omposi ~ao em Produto de Matrizes de Dois Nveis

Este pro edimentose apli aa qualquer opera ~aounitariade m qubits (param >1),

ea de omp~oe emportas C m 1 NOT e C m 1 ( ~ U).

O pro edimento onsiste no seguinte: a partir da matriz (de m bits) U, faz-se a

de omposi ~aodesta em matrizesde dois nveisde formaque:

U n :::U 2 U 1 U =I (2.32)

Em seguida, de omp~oe-se ada uma dessas matrizes U

i

em ir uitos ompostos por

C m 1 NOTs e C m 1 ( ~ U i

)s por um pro edimento que n~ao sera detalhado aqui (v. Nielsen

eChuang [36℄

para detalhes), resultando emum ir uito omo oda Figura10.

Figura10: Constru ~ao de operadorunitariode dois nveis U.

Repare que alguns ontroles s~ao representados por bolas vazias. Isto indi a que o

ontrole e ativado pelo qubitj0i emvez doj1i usual.

Pode-se notar que, neste ponto, a uni a porta basi a usada na de omposi ~ao dos

ir uitos tem sido a C n

NOT (porta NOT ontrolada por n qubits). As outras portas

usadass~aoportas C n

(U) (porta unitariaU ontrolada porn qubits)ou U, ondeU opera

sobre um qubit. Na se ~ao que segue, sera apresentada uma forma de se aproximar a

implementa ~aode uma portaqu^anti a de umqubitusando-se apenasasportas qu^anti as

basi as T eH.

2.8.5 Universalidade por Aproxima ~ao

Embora, omo visto a ima, possamos ter onjuntos in nitos universais de portas

qu^anti as (e.g.,CNOT e portas de um qubit), a implementa ~aodessas portas n~aoelivre

deerros. Porem, podemoster um onjuntodis retode portas quepodem serusadas para

realizar omputa ~ao qu^anti a universal de uma maneira livrede erros utilizando odigos

orretores de erros.

(33)

disponvel,implementado. De ne-seo erro quando V e implementadoemvez de U por

E(U;V)max

j i

k(U V)j ik (2.33)

onde omax e sobre todos os estadosqu^anti os normalizadosj i noespa o de estados.

Se varias portas s~ao apli adasemsequ^en ia, tem-se:

E(U m U m 1 :::U 1 ;V m V m 1 :::V 1 ) m X j=1 E(U j ;V j ) (2.34)

2.8.5.1 Universalidade de Hadamard, =8 e CNOT

Considere as portas que implementam as opera ~oes T e HTH. T e, om uma fase

global,uma rota ~aode =4 radianos sobre oeixo z.^ Enquanto que HTH e uma rota ~ao

de =4 sobre o eixo x .^ Compondo estas duas opera ~oes resulta em (a diferen a de uma

faseglobal): exp  i  8 Z  exp  i  8 X  = h os  8 I isen  8 Z ih os  8 I isen  8 X i = os 2  8 I i h os  8 (X +Z)+sen  8 Y i sen  8 (2.35)

queeuma rota ~aosobre um eixo~n =( os  8 ;sen  8 ; os  8

), om vetor unitario

orrespon-dente n ,^ eporum ^angulo de nido por os ( 

2

) os 2 

8

. Ou seja,usando apenas portas

Hadamard e =8 pode-se onstruir R

^ n

().

A partir disso, tem-se que:

E(R ^ n ( );R ^ n () n )<  3 ; (2.36)

onde eo erro maximopermitido.

Agora ja se pode veri ar que qualquer opera ~ao de um qubit pode ser aproximada

om pre is~ao arbitraria usando apenas portas Hadamard e =8. 

E fa il ver que, para

qualquer : HR ^ n ( )H =R ^ m ( ) (2.37)

onde m^ eum vetor unitarionadire ~ao( os  8 ; sen  8 ; os  8 ),ou seja, perpendi ular a ^n.

Disto,segue que:

E(R ^ m ( );R ^ m () n )<  3 (2.38) e,da: U =R ^ n ( )R ^ m ( )R ^ n (Æ) (2.39)

om uma fase global, que pode ser desprezada ( omparar om (2.19)). Combinando os

resultados (2.36)e (2.38), resulta: E(U;R ^ n ( ) n 1 HR ^ n ( ) n 2 HR ^ n (Æ) n 3 ) =E(U;R ^ n ( ) n1 R ^ m ( ) n2 R ^ n (Æ) n3 ) < (2.40)

(34)

Ou seja, dados um operador unitario U qualquer de um qubit, e uma taxa de erro

 > 0, e possvel aproximar U dentro de  usando um ir uito omposto uni amente de

portas Hadamarde =8.

Assim, omaportaHadamard,aporta=8emaisaportaCNOT,pode-se

implemen-tarqualquer opera ~ao unitariasobre um numeroqualquer de qubits om grau arbitrario

de pre is~ao. Um outro onjunto de portas universais equivalente e o onjunto formado

pelas portas Hadamard, Fase (S),CNOT e To oli. Todas essas portas podem ser

imple-mentadas de maneiratolerante afalhas [36℄

.

2.9 Medi ~ao

Emum ir uito lassi o,quandosedeseja saberovalorde umbit, bastarealizaruma

leitura do bit espe i ado. Este e um pro esso simples, sem problemas, pois a leitura

de um bit n~ao altera seu estado. Porem, em um qubit em estado de superposi ~ao, por

exemplo, j i=aj0i+bj1i, n~ao ha maneirade se saber osvalores de a ou de b. A uni a

formade se obter alguma informa ~aosobre o qubite realizando uma medi ~ao. Realizar

umamedi ~aoe fazerum teste noqubit, queresultaraemuma modi a ~aodoseu estado

para um dos estados da base, j0i ou j1i na base omputa ional, que e o resultado da

medi ~ao(note-se que osresultados podemser outros,se for usadauma base diferenteda

omputa ionalna medi ~ao). Apos a medi ~ao, n~ao ha omo se saber os valores originais

doqubit(valores de a eb).

Asmedi ~oesqu^anti ass~aodes ritasporum onjuntofM

m

gdeoperadoresdemedi ~ao.

Esses operadores agem sobre o espa o de estados sendo medidos. Ondi e m se refere

aos resultados das medi ~oes que possam o orrer noexperimento. Se o estado dosistema

qu^anti oforj iimediatamenteantesdamedi ~ao,ent~aoaprobabilidadedequeoresultado

m o orrae dada por

p(m)=h jM y m M m j i; (2.41)

eo estado dosistema apos amedi ~aoe

j o i= M m j i q h jM y m M m j i : (2.42)

Os operadores de medi ~aosatisfazema equa ~ao de ompletude,

X m M y m M m =I (2.43) 2.9.1 Medi ~ao Projetiva

Um aso espe ial importante de medi ~ao e a lasse de medi ~oes onhe ida omo

medi ~oes projetivas. Uma medi ~ao projetiva e des rita por uma observavel (M), um

operador hermitiano 6

no espa o de estados do sistema sendo observado. A observavel

(35)

tem aseguintede omposi ~aoespe tral: M = X M mP m (2.44) ondeP m 

e oprojetorsobre o autoespa o de M om autovalorm. Ospossveis resultados

damedi ~ao orrespondemaos autovalores(m) daobservavel. Medindo-se oestado j i,a

probabilidadede se obter oresultado medada por:

p(m)=h jP

m

j i (2.45)

e o estado do sistema, orrespondente ao resultado m, imediatamente apos a medi ~ao,

sera: j o i= P m j i p p(m) (2.46) 2.9.2 POVM 

As vezes n~ao se esta interessado nos estados apos a medi ~ao, mas sim nas

probabi-lidades dos possveis resultados. Para asos assim, a medi ~ao POVM e espe ialmente

 util.

Dado um onjuntode operadores positivos 7

fQ

m

g ujosomatorioe a identidade:

X

m Q

m

=I (2.47)

hamamos de POVM (positive operator-valued measure) ao tipo medi ~ao des rita por

esses operadores de medi ~ao.

Os operadores Q

m

podem ser obtidosdos operadores de medi ~ao:

Q m =M y m M m (2.48) 2.10 Estados Mistos

O estado j i de um sistema qu^anti o e dito ser um estado puro se ele e onhe ido

om exatid~ao. Caso ontrario, ou seja, se apenas uma distribui ~ao de probabilidades

f(p

i ;j

i

i)ge onhe ida, o estado do sistema e dito ser uma mistura estatsti a, e e

ha-mado de estado misto (ou misturado). Uma maneira e iente de se representar estados

mistose atraves do on eito de operador-densidade (ou matriz-densidade). O

operador-densidade tambem pode representar estados puros, pois e uma formula ~ao

matemati a-mente equivalenteaovetor de estados.

O operador-densidade para um estadopuro j i,e de nido omo:

=j ih j (2.49)

(36)

Para um estado misto, arepresenta ~ao e daseguinteforma: = X i p i j i ih i j (2.50) onde os j i

i s~ao estadosde um onjunto de possveis estadosem que ada um deles tem

uma probabilidadep

i

de ser o estado dosistema.

Um operador-densidade  possui as seguintes propriedades:

 Tra o de e igual a1 (tr()=1);

 e positivo.

Uma formade sesaber seo operador-densidade representa um estadopuro ou misto

e al ulando-se seus autovalores:

 se um dos autovalores for 1 (e, obviamente, os outros forem 0, pois os autovalores

somama 1),ent~aoo estadoepuro;

 emtodos os outros asos, o estadoemisto. [28℄

Para seapli ar um operador U a um operador-densidade (ou, apli aruma porta U a

um estado misto)segue-se aequa ~ao:

= X i p i j i ih i j ! U X i p i Uj i ih i jU y =UU y (2.51) 2.10.1 Tra o Par ial

Umadas apli a ~oesmais importantes dooperador-densidadee omoferramentapara

des reversubsistemas de um sistemaqu^anti o omposto. Esta des ri ~aoepropor ionada

pelooperador-densidade reduzido, que obtemos atravesda opera ~ao do tra o par ial,

ex-pli adaa seguir.

Suponha que tenhamos os sistemas fsi os A e B, ujo estado e des rito por um

operador-densidade AB

. Ooperador-densidadereduzido para osistemaAede nido por

 A tr B ( AB ) (2.52) onde tr B

e um mapa de operadores onhe ido omo tra o par ial sobre o sistema B. O

tra opar ial e de nido por:

tr B (ja 1 iha 2 jjb 1 ihb 2 j)ja 1 iha 2 jtr(jb 1 ihb 2 j) (2.53) onde ja 1 i e ja 2

i s~ao dois vetores no espa o de estados de A, jb

1 i e jb

2

i s~ao dois vetores

no espa o de estados de B, e tr e a opera ~ao tra o, ou seja, a soma dos elementos da

(37)

2.10.2 Canais Qu^anti os

Um problema basi o tanto Computa ~ao Qu^anti a quanto na Informa ~ao Qu^anti a e

transporte seguro e sem erros de informa ~ao entre dois pontos. Ate mesmo o

armaze-namentoda informa ~ao qu^anti a pode ser problemati o. Esses problemas se d~aoporque

o sistema n~ao e totalmenteisolado do ambiente, sofrendo interfer^en ias externas | por

exemplo,transporte de um qubit de informa ~aoemum foton atravesde uma bra oti a,

ondepode haver rudo porirregularidadesna bra, oumesmopelaabsor ~aodofoton em

algumponto doper urso [28℄

.

Imagine um sistemaqu^anti o (uma part ula de spin 1=2 ou um foton)que entre em

um\tubo"(designa ~aode um meiofsi omediador, omo,porexemplo,uma bra oti a)

om estado j i. Dizemos que o anal e perfeito se o mesmo estado j i emerge na outra

extremidadedotubo,paraqualquer j inaentrada. Porem, setivermosumaperturba ~ao

tal que o resultado na sada seja Uj i, onde U e um operador unitarioque depende do

ampo magneti o mas e independente daentrada j i, ent~ao este anal e hamado anal

unitario,e e ilustradonaFigura 11abaixo.

Figura 11: Canal qu^anti o unitario

Se, poroutro lado, a perturba ~ao varia aleatoriamente om o tempo, ausando uma

mudan aemseu estado, n~aose pode des revera sada do analemtermos de um estado

puro para uma dada entrada j i, mas sim em termos de um operador-densidade , que

depende do estado ini ial 

0 .



E omum se modelar este anal omo um anal linear da

seguinteforma ilustradanaFigura 12.

Figura12: Canalqu^anti o linear

Na entrada, tem-se o sistema (part ula) A, representado por 

0

, e o ambiente E,

representado por 

env

. A intera ~ao entre o sistema A, transportando a informa ~ao, e o

ambienteEeent~aorepresentadapelooperadorunitarioT (o anal). Apli ando-seotra o

par ialsobre oambientenasadado analobtem-seum operador-densidadereduzidoque

des reve o estado do sistema na sada do anal, desprezando-se o ambiente, de a ordo

om aequa ~ao abaixo: "( )=tr  T(  )T y  (2.54)

(38)

A opera ~ao"e hamadade superoperador porqueeummapeamentolinear de

(39)

3 Requisitos Gerais para um

Novo Simulador

A de ni ~ao de requisitos e o primeiro passo para se desenvolver um sistema

om-puta ional. Os requisitos expressam as ne essidades fun ionais e n~ao-fun ionais tanto

do liente quanto dos usuarios poten iais do sistema. Tendo-se de nido os requisitos, e

possvelplanejarosistema ommaiore i^en ia,utilizando-seumametodologiaadequada

para tanto.

Neste aptulo, ser~ao apresentados os requisitos gerais (re ursos a serem ofere idos)

desejaveispara um novo simulador de ir uitos qu^anti os, tantodo pontode vista

fun i-onal quantodo n~ao-fun ional.

3.1 Re ursos do Sistema

Para que sepossa atingir osobjetivos de nidos no Captulo 1deste trabalho, onovo

simuladordeve ofere eros seguintes re ursos omrela ~aoafun ionalidade, ausabilidade

ea do umenta ~ao:

3.1.1 Re ursos de Fun ionalidade

Os requisitos gerais de fun ionalidadedevem ontribuir para se atingir oobjetivo de

permitir ao usuario modelar e simular algoritmos e anais qu^anti os. Como foi visto no

Captulo 2,as fun ionalidadesne essarias para tal devemser:

Estados puros e mistos: o usuariodeve poder representar os estados do seu sistema

atravesdekets(estadospuros)ouatravesdematrizes-densidade(estadosmistos)de

formaquesejapossvelmodelaresimulartantoalgoritmosquanto anaisqu^anti os.

Medi ~ao: o usuario deve poder simular a realiza ~ao de uma opera ~ao de medi ~ao em

qualquer ponto do ir uito e utilizando qualquer tipo ( lasse) de medi ~ao, omo

de nido naSe ~ao 2.9.

Tra o par ial: para simular a intera ~ao de um sistema qu^anti o om o ambiente e

permitirposteriormenteaanaliseapenasdosistema,desprezando oambiente, omo

(40)

Erros: para que seja possvel estudar os efeitos de erros o orridos durante um

experi-mento,aferramentadevepermitiragera ~aodeerrosopera ionais(errosnaopera ~ao

das portas) ede erros de des oer^en ia (erros devidos ainterfer^en ias doambiente),

alemde permitir asimula ~aolivrede erros.

Portas: para permitir que o usuario possa implementar qualquer opera ~ao unitaria, a

ferramenta deve disponibilizar um onjunto de portas basi as universais, alem de

permitirqueousuario rieportaspersonalizadasde maneiraquepossaimplementar

opera ~oes unitarias arbitrarias exatas.

Bibliote as: para que ousuariopossa armazenare reutilizarasportas personalizadas,

aferramenta deve permitir a ria ~aoeedi ~aode bibliote as de portas.

3.1.2 Re ursos de Usabilidade

Os requisitos gerais de usabilidade devem ontribuir para se atingir o objetivo de

permitiraousuarioutilizaraferramentade formafa ileintuitiva. Paratal,aferramenta

deve ter uma interfa e dousuarioque ofere a osseguintes re ursos:

Intera ~ao: a ferramenta deve ofere er, e o usuariodeve poder manipular diretamente,

representa ~oesgra asdeportassobreumagraderepresentandoapla ado ir uito.

Visualiza ~ao de estados: aferramentadeve permitirumavisualiza ~aoapropriadado

estado do sistema nas formas de braket, matriz-densidade e histograma, quer no

nalda simula ~aoou emqualquer pontodesta.

Edi ~ao: o usuario deve poder editar o ir uito utilizando as opera ~oes de: opiar,

re- ortare olar portas e grupos de portas.

Desfazer: o usuariodeve poder retro eder oudesfazer qualquer a ~ao queele possa ter

realizadonopro esso de edi ~aodo ir uito (undo).

3.1.3 Re ursos de Do umenta ~ao

Osrequisitosgerais dedo umenta ~aodevem ontribuirpara a ompreens~aoda

arqui-teturado sistema e doseu pro esso de desenvolvimento. Para tal, a ferramenta deve vir

a ompanhada daseguintedo umenta ~ao:

Pro esso de desenvolvimento: des ri ~ao do pro esso de desenvolvimento da

ferra-menta, expli ando desde a fase de obten ~ao de requisitos ate a implementa ~ao da

ferramenta.

Arquitetura do sistema: diagrama des revendo a arquitetura do sistema, om seus

blo os prin ipais, eas rela ~oes estre eles.

Modelo on eitual: diagramas detalhados dos blo os onstituntes do diagrama de

(41)

Diagrama de lasses: diagramas des revendo em detalhes (metodos e atributos) as

lasses(objetos) do sistemae asrela ~oes entre elas.

Manual do usuario: do umento des revendo omo utilizara ferramentaemformade

ajuda on-line napropria ferramenta.

3.1.4 Outros Requisitos

Alem dos requisitos gerais listadosa ima, outros requisitosse fazem importantes:

Extensibilidade: a ferramenta devera ser fa ilmente extensvel, de maneira a que

vers~oes posteriores aprimeira vers~aopossam in orporar novas fun ionalidades

reu-tilizandoo odigo existente.

Linguagem de programa ~ao: aferramentadeveraser implementadaemuma

lingua-gemquepermitaa elerarodesenvolvimento,evitando,porexemplo,problemas om

ager^en ia de objetos namemoria, e que atenda tambem aorequisito de

extensibi-lidade.

Plataforma: a ferramenta deve ser multiplataformade maneira a poder ser utilizada

porum universo maiorde usuarios.

Estrategia de al ulo: aferramentadeverafazerusodeumpa oteexternopararealizar

os al ulos, e onomizando-se tempo no desenvolvimento e garantindo-se

(42)

4 Pro esso de Desenvolvimento

Neste aptuloedes ritoopro essodedesenvolvimentoutilizadoparaa onstru ~aodo

simulador de ir uitos qu^anti os doravante denominado Zeno. Considerando o prin pio

daindepend^en iadodialogo,adotou-se umaarquitetura emdoismodulos(fun ionalede

intera ~ao), possibilitando aado ~aode pro essos de desenvolvimento diferentes para ada

um deles, partindodaanalise datarefa. Para omodulo fun ional adotou-se um pro esso

simpli adobaseadonoPro essoUni ado [33℄

,eparaomodulodeintera ~aoadotou-seum

pro esso de desenvolvimento baseado na metodologia MEDITE [30℄

. A es olha do nome

\Zeno"para osimuladorde ir uitos qu^anti os desenvolvidoneste trabalhofoi motivada

pelo arater paradoxal que a Computa ~aoqu^anti a apresenta emrela ~aoa Computa ~ao

Classi a emanalogia aoparadoxo de Zen~ao [4℄

.

4.1 Prin pio da Independ^en ia do Dialogo

Asprimeirasabordagensde on ep ~aodesistemasinterativostinhamumatend^en iaa

\misturar"fortementeo odigodainterfa e omo odigoqueimplementaafun ionalidade

dosistema. Adi uldade de modi a ~aoproibiauma abordagemiterativa,prati amente

impedindodeselevarem ontaasopini~oesdeespe ialistasem omuni a ~aoeosresultados

daobserva ~aodo usuariodurantea on ep ~ao eo desenvolvimentoda interfa e.

Ent~ao,umasolu ~aoparaumaabordagemiterativadodesenvolvimentodosistemaea

separa ~aomodularentreo odigoqueimplementao omponentefun ional(apli a ~ao)eo

odigoqueimplementao omponenteresponsavelpelaintera ~ao omousuario(interfa e).

A Figura 13 mostra esta abordagem gra amente. O omponente fun ional de ne a

fun ionalidadedo sistema,ou seja, asfun ~oes que osistema disponibilizapara o usuario

realizar suas tarefas. O omponente de intera ~ao e o software responsavel pelo dialogo

entre o usuario eo sistema. Essa de omposi ~ao deve permitir se on eber, desenvolver e

modi arosmodulos/ omponentesindependentementeumdooutro

[19,20,22℄

. Oprin pio

daindepend^en iado dialogo,termo onsagrado para ara terizaressa de omposi ~ao,tem

setornadoum prin pioessen ialarespeitarnopro essode on ep ~aoedesenvolvimento

de sistemas interativos, pelas seguintes raz~oes: a possibilidade de um desenvolvimento

independente eiterativodos modulos ede utiliza ~aode pro ssionaise/ou onhe imentos

Referências

Documentos relacionados

O intuito deste trabalho é estabelecer uma ferramenta capaz de analisar os dados de consumo de um consumidor de energia elétrica e fazer um estudo de viabilidade para instalação

 Rendimentos de trabalho por conta própria, os quais são os auferidos no exercício, de forma independente, de profissão em que predomine o carácter

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

Principais mudanças na PNAB 2017  Estratégia Saúde da Família/Equipe de Atenção Básica  Agentes Comunitários de Saúde  Integração da AB e Vigilância 

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

Para tanto, será apresentado uma fundamentação teórico-metodológica utilizada em pesquisas em História da Educação Matemática e os participantes poderão

No sentido de reverter tal situação, a realização deste trabalho elaborado na disciplina de Prática enquanto Componente Curricular V (PeCC V), buscou proporcionar as

Contudo por razões que são desconhecidas o processo da morte celular induzido pela ablação androgénia não consegue eliminar todas as células malignas, e a progressão para