Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Modelagem Matemática, Notas de estudo de Matemática

Modelos para aplicação...

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 23/01/2010

thimoteo-martins-rodrigues-1
thimoteo-martins-rodrigues-1 🇧🇷

4.4

(13)

11 documentos

1 / 72

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Notas em Matemática Aplicada 8
Editado por
Eliana X.L. de Andrade
Universidade Estadual Paulista - UNESP
São José do Rio Preto, SP, Brasil
Rubens Sampaio
Pontifícia Universidade Católica do Rio de Janeiro
Rio de Janeiro, RJ, Brasil
Geraldo N. Silva
Universidade Estadual Paulista - UNESP
São José do Rio Preto, SP, Brasil
Sociedade Brasileira de Matemática Aplicada e Computacional
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48

Pré-visualização parcial do texto

Baixe Modelagem Matemática e outras Notas de estudo em PDF para Matemática, somente na Docsity!

Notas em Matemática Aplicada 8

Editado por

Eliana X.L. de Andrade

Universidade Estadual Paulista - UNESP

São José do Rio Preto, SP, Brasil

Rubens Sampaio

Pontifícia Universidade Católica do Rio de Janeiro

Rio de Janeiro, RJ, Brasil

Geraldo N. Silva

Universidade Estadual Paulista - UNESP

São José do Rio Preto, SP, Brasil

Sociedade Brasileira de Matemática Aplicada e Computacional

iv

  1. Uma Introdução à Computação Quântica Renato Portugal, Carlile Campos Lavor, Luiz Mariano Carvalho e Nelson Maculan
  2. Aplicações de Análise Fatorial de Correspondências para Análise de Dados Dr. Homero Chaib Filho, Embrapa
  3. Modelos Matemáticos baseados em autômatos celulares para Geoprocessamento Marilton Sanchotene de Aguiar, Fábia Amorim da Costa, Graçaliz Pereira Dimuro e Antônio Carlos da Rocha Costa
  4. Computabilidade: os limites da Computação

Regivan H. N. Santiago e Benjamín R. C. Bedregal

  1. Modelagem Multiescala em Materiais e Estruturas

Fernando Rochinha e Alexandre Madureira

  1. Modelagem em Biomatemática

1 - “Modelagem matemática do comportamento elétrico de neurônios e algumas aplicações” 2 - “Redes complexas e aplicações nas Ciências” 3 - “Possíveis níveis de complexidade na modelagem de sistemas biológicos” Coraci Malta, 1 - Reynaldo D. Pinto, 2 - José Carlos M. Mombach e 3 - Henrique L. Lenzi, Waldemiro de Souza Romanha e Marcelo Pelajo-Machado

  1. A lógica na construção dos argumentos

Angela Cruz e José Eduardo de Almeida Moura

UMA INTRODUÇÃO À COMPUTAÇÃO

QUÂNTICA

Renato Portugal - LNCC

[email protected]

Carlile Campos Lavor - UERJ

[email protected]

Luiz Mariano Carvalho - UERJ

[email protected]

Nelson Maculan - UFRJ

[email protected]

Sociedade Brasileira de Matemática Aplicada e Computacional

São Carlos - SP, Brasil 2004

Prefácio

Apresentamos um estudo introdutório à computação quântica. Esse é um domínio recente que combina três áreas bem conhecidas: matemática, física e computação. Vamos nos concentrar em aspectos matemáticos da computação quântica. Ape- sar de desejável, nenhum conhecimento prévio sobre física ou computação é ne- cessário. Quanto à matemática, a principal exigência é um curso básico de álgebra linear. O texto está dividido em quatro capítulos. No Capítulo 1, fazemos uma breve exposição sobre computadores clássicos (Seção 1.1) e apresentamos os conceitos básicos usados no texto (Seção 1.2). Comparamos, rapidamente, computadores clássicos e quânticos na Seção 1.1 (essa discussão será mais útil para aqueles com algum conhecimento de computação). A Seção 1.2 é fundamental para todo o livro e deverá ser consultada constantemente. No Capítulo 2, descrevemos alguns dos circuitos quânticos que serão utilizados nos capítulos seguintes. Nos Capítulos 3 e 4, cremos, está a nossa principal contri- buição: produzir um texto em português que estimule o estudante de graduação, em qualquer área de ciências exatas, a estudar o assunto. Nesses capítulos, descrevemos os dois algoritmos mais divulgados em computação quântica: o algoritmo de Grover (Capítulo 3) e o algoritmo de Shor (Capítulo 4). O quarto capítulo é denso e, por isso, exigirá uma leitura mais atenta. No entanto, o texto tem todas as definições e referências necessárias para a compreensão desse algoritmo fundamental. Existem ótimos livros sobre o assunto em língua inglesa (veja a bibliografia). O mais famoso, já um clássico, é o livro de Michael A. Nielsen e Isaac L. Chuang [16]. Uma tradução para a língua portuguesa está sendo concluída pelo Prof. Ivan dos Santos Oliveira Júnior, do Centro Brasileiro de Pesquisas Físicas (CBPF). Para futuras edições melhoradas de nosso trabalho, gostaríamos de receber críti- cas e sugestões por parte dos leitores. Finalmente, agradecemos o apoio da Sociedade Brasileira de Matemática Apli- cada e Computacional (SBMAC), do Programa Institutos do Milênio (Informação Quântica), da FAPERJ, do CNPq e, em particular, ao Prof. Rubens Sampaio, pelo incentivo.

Os Autores

Rio de Janeiro, 21 de junho de 2004.

vii

Capítulo 1

Conceitos Básicos

1.1 O Computador Clássico

Um computador clássico pode ser descrito de forma bastante genérica como uma máquina que lê um certo conjunto de dados, codificado em zeros e uns, executa cálculos e gera uma saída também codificada em zeros e uns. Zeros e uns são estados que podem ser representados fisicamente. No caso dos computadores clássicos, através do potencial elétrico: 0 é um estado de baixo potencial elétrico e 1 é um estado de alto potencial elétrico. Zeros e uns formam um número binário que pode ser convertido para a base decimal. Pensemos, então, num computador como um dispositivo que calcula uma função f : { 0 ,... , N − 1 } → { 0 ,... , N − 1 }, onde N = 2n^ (n é o número de bits usados na memória do computador). Sem perda de generalidade, consideremos que o domínio e a imagem de f são do mesmo tamanho. A cada conjunto de n bits de entrada, corresponde um único conjunto de n bits de saída, o que caracteriza f como uma função. Representamos o processo de cálculo na Figura 1.1, onde à esquerda, temos os bits de entrada e à direita, os de saída (o processo de cálculo ocorre da esquerda para a direita). Em geral, f é descrita por blocos elementares que podem ser implementados fisi- camente por transistores e outros componentes eletrônicos. Os blocos são as portas lógicas AND, OR e NOT, conhecidas como portas universais (na verdade, basta apenas a porta NOT e uma das duas outras portas, OR ou AND). Por exemplo, um exemplo de circuito que realiza a soma em aritmética módulo 2 de dois números, cada um com um bit, é apresentado na Figura 1.2. As entradas possíveis são 00, 01, 10 ou 11. As entradas são produzidas através de diferenças de potencial elétrico que geram corrente elétrica. Por sua vez, a corrente se propaga através dos fios, da esquerda para a direita, ativando as portas lógicas. Os símbolos de medida, à direita, representam que medidas de corrente são realizadas, indicando o valor de cada bit: 0 ou 1. O bit, na posição inferior, dá o resultado da operação. O fio para o bit da posição superior é desnecessário, sendo utilizado apenas para exibir a mesma quantidade de bits de entrada e saída.

1.1. O COMPUTADOR CLÁSSICO 3

a a

b a^ +^ b^ (mod 2)

Figura 1.3: Porta CNOT.

Generalizando a porta CNOT, usando dois bits de controle no lugar de apenas um, temos a porta Toffoli (Figura 1.4), que pode ser usada para obter a contrapar- tida reversível da porta AND.

a a

c c^ +^ ab^ (mod 2)

b b

Figura 1.4: Porta Toffoli.

O valor do bit inferior (o bit alvo) é invertido apenas se a e b valem 1. Caso contrário, nada é alterado. A seguir, descrevemos todas as possíveis entradas e as saídas correspondentes:

000 → 000 001 → 001 010 → 010 011 → 011 100 → 100 101 → 101 110 → 111 111 → 110

A porta AND pode ser representada por uma porta Toffoli colocando c = 0. A saída do bit inferior será, então, a AND b. Para obter o equivalente reversível para a porta OR, consulte [16]. Ainda na Figura 1.2, observe que há uma bifurcação de fios e não há problema algum em fazê-lo classicamente. Entretanto, isso não é possível em circuitos quân- ticos, devido ao teorema de “não clonagem” (veja [19], p. 162). Verifique que esse efeito pode ser obtido através de uma porta CNOT, colocando b = 0. Com isso, o valor do bit superior será duplicado. Consideremos, novamente, a Figura 1.1. Se o computador tem n bits de entrada, há 2 n^ entradas possíveis, e, para cada uma delas, há também 2 n^ saídas possíveis.

1.2. O COMPUTADOR QUÂNTICO 4

Com isso, o número de funções que pode ser obtido é (2n)^2

n , ou seja, 2 n^2

n

. Todas essas funções podem ser reduzidas a circuitos usando as portas universais [16, 18]. Uma questão fundamental é a “velocidade” com que um computador calcula essas funções. Isso dependerá do número de portas usadas no circuito que calcula f. Se o número de portas cresce polinomialmente com n, dizemos que o circuito é eficiente. Por outro lado, se o número de portas cresce exponencialmente com n, dizemos que o circuito é ineficiente. Esse é um método grosseiro de medida de eficiência, mas útil para a análise teórica quando n é grande. Todos os cálculos realizados em um computador clássico também podem ser efetuados em computadores quânticos. Basta substituirmos as portas irreversíveis clássicas pelas homólogas reversíveis quânticas. Entretanto, o atrativo da compu- tação quântica é a possibilidade de se ter algoritmos quânticos mais rápidos que os clássicos, para uma mesma classe de problemas. Para tanto, os algoritmos quânti- cos devem usar propriedades quânticas, não disponíveis nos computadores clássicos, como o paralelismo quântico e o emaranhamento.

1.2 O Computador Quântico

1.2.1 O bit quântico (q-bit)

Em computação quântica, utilizam-se estados quânticos em vez de estados clássicos. O bit é, então, substituído pelo bit quântico, o q-bit, e os valores 0 e 1 de um bit são substituídos pelos vetores | 0 〉 e | 1 〉, representados por

[
]

e | 1 〉 =

[
]

Essa notação, utilizada em mecânica quântica, é conhecida por notação de Dirac. A diferença entre um bit e um q-bit é que um q-bit genérico |ψ〉 pode também ser uma combinação linear dos vetores | 0 〉 e | 1 〉, ou seja,

|ψ〉 = α| 0 〉 + β| 1 〉, (1.1)

onde α e β são números complexos. Note que os vetores | 0 〉 e | 1 〉 formam uma base ortonormal do espaço vetorial C^2. Essa base é chamada de base computacional e o vetor |ψ〉 é chamado de superposição dos vetores | 0 〉 e | 1 〉, com amplitudes α e β. Em mecânica quântica, vetor é também chamado de estado. Usaremos os dois termos com o mesmo significado. A interpretação física do q-bit, em (1.1), é que ele está simultaneamente nos estados | 0 〉 e | 1 〉. Isso faz com que a quantidade de informação que pode ser ar- mazenada no estado |ψ〉 seja infinita. Entretanto, essa informação está no nível quântico. Para torná-la acessível, no nível clássico, precisamos fazer uma medida. A mecânica quântica diz que o processo de medida altera o estado de um q-bit, fazendo-o assumir o estado | 0 〉, com probabilidade |α|^2 , ou o estado | 1 〉, com proba- bilidade |β|^2 (isso significa que os valores α e β não podem ser conhecidos através

1.2. O COMPUTADOR QUÂNTICO 6

Para fins de representação, vamos desconsiderar o termo externo aos colchetes, exp(iγ), também chamado fator de fase global. Uma razão que permite essa sim- plificação é que o valor do quadrado do módulo das amplitudes de um q-bit não se altera, quando excluímos esse fator. Por exemplo:

|α|^2 = | exp(iγ) cos(θ/2)|^2 = | exp(iγ)|^2 | cos(θ/2)|^2 = | cos(θ/2)|^2 ,

o mesmo ocorrendo com |β|^2 (para um tratamento detalhado desse fato, con- sulte [16], p. 93). Ficamos, então, com uma representação de três parâmetros: dois explícitos, θ e ϕ, e um implícito, o comprimento do vetor, que é sempre igual a um. Esses parâmetros podem ser utilizados para obtermos uma representação polar no R^3 , da forma (^) 

x y z

cos ϕ sen θ sen ϕ sen θ cos θ

onde 0 ≤ θ ≤ π e 0 ≤ ϕ < 2 π. Usando essas convenções, a representação da base computacional, na esfera de Bloch (Figura 1.5), será:

 (^) e | 1 〉 =

Ou seja, | 0 〉 será o pólo norte da esfera e | 1 〉 será seu pólo sul.

x

y

z

Figura 1.5: Esfera de Bloch.

1.2. O COMPUTADOR QUÂNTICO 7

Dessa forma, todos os estados de um q-bit podem ser representados (a menos de um fator multiplicativo) na esfera de Bloch. Por exemplo, os estados √^12 (| 0 〉 + | 1 〉)

e √^12 (| 0 〉 − | 1 〉), que serão utilizados mais à frente, são representados por (1, 0, 0) e

(-1, 0, 0), respectivamente.

Exercício 1.2 Dê uma interpretação, em termos de amplitudes e probabilidades, para os estados representados na interseção entre o plano (x, y, 0) e a esfera de Bloch.

Insistimos que não se pode calcular exatamente os valores de |α| ou |β|, em (1.4), mesmo que haja uma grande quantidade de estados |ψ〉 de mesmo valor. Vejamos por quê. Após serem feitas repetidas medidas dos estados com valores iguais a |ψ〉, teremos apenas os resultados | 0 〉 ou | 1 〉. Através da quantidade de | 0 〉´s e | 1 〉´s encontrados, teremos um valor aproximado para os valores |α|^2 e |β|^2. Não podemos garantir sua exatidão, pois trata-se de probabilidades. E mais, se para sabermos o valor dos “coeficientes” de um simples q-bit, com uma precisão razoável, precisássemos de um número enorme de medidas repetidas de q-bits com mesmo valor, provavelmente haveria pouco interesse em computadores quânticos. Essa seria uma situação paradoxal, pois apenas medindo estados que forneçam os resultados | 0 〉 ou | 1 〉, não ultrapassaríamos os marcos da computação clássica. Ou seja, apesar da quantidade infinita de informação que um q-bit guardaria em potencial, apenas dois valores seriam acessados por nós. No entanto, há outro tipo de fenômeno que ocorre com um estado quântico, além daquele ocasionado por sua medida. A mecânica quântica também nos diz que a evolução no tempo de um sistema quântico isolado é descrita matematicamente por uma transformação linear [16]. Ora, sistemas quânticos isolados são descritos por vetores unitários, e, como sabemos da álgebra linear, as funções que transformam vetores unitários em vetores unitários do mesmo espaço vetorial são as transformações unitárias. Transformações lineares unitárias U podem ser definidas (há outras definições equivalentes) como aquelas que atendam à seguinte propriedade:

U †U = U U †^ = I,

onde U †=(U ∗)T^ , com ∗ indicando a conjugação complexa, e T indicando a trans- posição matricial. U †^ é denominada transformação adjunta de U. Desse ponto em diante, faremos referência indistintamente à transformação U e à matriz que a re- presenta usando a mesma notação, salvo indicação explícita. Usaremos, também, o termo operador com esse mesmo significado. Com isso, quando escrevermos U |ψ〉, estaremos falando tanto da aplicação de U , quanto da multiplicação da matriz U pelo estado |ψ〉. Resumindo: temos, então, duas interações básicas de um computador quântico com os dados de entrada: transformação unitária e medida. A primeira, atuando no nível quântico, e a segunda, fazendo a ligação entre o mundo quântico e o clássico.

1.2. O COMPUTADOR QUÂNTICO 9

Note que o produto tensorial não é comutativo. O produto tensorial pode ser estendido para matrizes quaisquer. Dadas as ma- trizes A ∈ Cm×n^ e B ∈ Cp×q^ , a matriz A ⊗ B ∈ Cmp×nq^ é definida por

A ⊗ B =

A 11 B A 12 B · · · A 1 nB A 21 B A 22 B · · · A 2 nB .. .

Am 1 B Am 2 B · · · AmnB

onde Aij é o elemento da linha i e da coluna j de A. De forma mais precisa, porém mais criptográfica, cada elemento da matriz A ⊗ B é definido por

(A ⊗ B)rs = Aij Bkl, (1.9)

onde r = (i − 1)p + k e s = (j − 1)q + l, com os índices variando da seguinte forma: 1 ≤ i ≤ m, 1 ≤ j ≤ n, 1 ≤ k ≤ p, 1 ≤ l ≤ q. Por exemplo, se

A =
[
]

e B =

então

A ⊗ B =
[
]

A seguir, damos algumas propriedades do produto tensorial que serão utilizadas ao longo do texto (considere z ∈ C, v, v 1 , v 2 ∈ Cn^ e w, w 1 , w 2 ∈ Cm):

  1. z(|v〉 ⊗ |w〉) = (z|v〉) ⊗ |w〉 = |v〉 ⊗ (z|w〉),
  2. (|v 1 〉 + |v 2 〉) ⊗ |w〉 = (|v 1 〉 ⊗ |w〉) + (|v 2 〉 ⊗ |w〉),
  3. |v〉 ⊗ (|w 1 〉 + |w 2 〉) = (|v〉 ⊗ |w 1 〉) + (|v〉 ⊗ |w 2 〉).

Exercício 1.3 Demonstre as propriedade 1, 2 e 3 do produto tensorial.

Dadas duas transformações lineares A e B, podemos definir um novo operador linear, A ⊗ B, por (A ⊗ B)(|u〉 ⊗ |w〉) = A|u〉 ⊗ B|v〉, (1.10)

desde que garantidas as dimensões corretas para possibilitar as multiplicações das matrizes pelos vetores. Ainda, introduzindo mais algumas notações, diremos que |ψ〉⊗n^ e A⊗n^ são os produtos tensoriais de |ψ〉, por ele próprio n vezes, e de A, por ela própria n vezes, respectivamente.

1.2. O COMPUTADOR QUÂNTICO 10

Vejamos, agora, a descrição de um estado genérico |ψ〉 de 2 q-bits. Esse será uma superposição dos estados | 00 〉, | 01 〉, | 10 〉 e | 11 〉 (estamos usando a notação simplificada para o produto tensorial entre dois estados de 1 q-bit), ou seja,

|ψ〉 = α| 00 〉 + β| 01 〉 + γ| 10 〉 + δ| 11 〉, (1.11)

onde |α|^2 + |β|^2 + |γ|^2 + |δ|^2 = 1. Visando a reduzir a notação, podemos considerar os zeros e uns que aparecem na equação (1.11) como números binários, e assim,

| 00 〉, | 01 〉, | 10 〉, | 11 〉

podem ser abreviados por | 0 〉, | 1 〉, | 2 〉, | 3 〉,

usando a notação decimal. É claro que o | 0 〉 acima não é o mesmo que aparece na definição de um q-bit, pois têm dimensões diferentes. Em cada caso, o contexto esclarecerá a que situação estamos nos referindo. Em geral, um estado |ψ〉 de n q-bits é uma superposição de 2 n^ estados da base computacional {| 0 〉, | 1 〉,... , | 2 n^ − 1 〉}, dada por

|ψ〉 =

(^2) ∑n− 1

i=

αi|i〉,

com as amplitudes αi atendendo a

(^2) ∑n− 1

i=

|αi|^2 = 1.

Como havíamos comentado anteriormente, a medição do estado genérico |ψ〉 produz um resultado |i 0 〉 com probabilidade |αi 0 |^2 , com 0 ≤ i 0 ≤ 2 n^ − 1. Usual- mente, a medida é realizada q-bit a q-bit, produzindo zeros e uns que são lidos em conjunto, gerando a saída |i 0 〉. Repetiremos, aqui, uma propriedade central do processo de medida. O estado |ψ〉, antes da medição, é inacessível, a não ser que ele pertença à base computacional. O procedimento de medida altera inevitavel- mente |ψ〉, forçando-o a um colapso para algum dos vetores da base computacional. Este colapso, como vimos, é não-determinístico, com probabilidades dadas pelos quadrados dos módulos das amplitudes de |ψ〉. Consideremos, agora, outro conceito fundamental em computação quântica: o emaranhamento. Um estado de 2 q-bits pode ou não ser o resultado do produto tensorial de estados de 1 q-bit. Vejamos. Considere os estados de 1 q-bit

|ϕ〉 = a| 0 〉 + b| 1 〉

e |ψ〉 = c| 0 〉 + d| 1 〉,