Você está na página 1de 20

1

UNIVERSIDADE LICUNGO

FACULDADE DE CIENCIAS E TECNOLOGIA

CURSO DE INFORMÁTICA

YURAN BULHA

Proposta a Projecto de Pesquisa sobre Computação Quântica e


Teoria de Computação

Beira

2021
2

YURAN BULHA

Computação Quântica e Teoria de Computação


Orientador: dr. Leonel Silima

Beira

2021
3

Conteúdo

Epigrafe ....................................................................................................................................... 4

Justificativa .................................................................................................................................. 6

Objetivo Geral.............................................................................................................................. 6

Objetivos específicos .................................................................................................................... 6

Metodologia e abordagem da pesquisa ........................................................................................... 7

Estrutura do trabalho..................................................................................................................... 7

Materiais e Métodos ..................................................................................................................... 8

Plano de estudo ............................................................................................................................ 9

Plano de Trabalho e Cronograma de Execução ............................................................................... 9

1. Capitulo I - Conceitos básicos da Computação Quântica ........................................................ 10

1.1. Breve Histórico ............................................................................................................... 10

1.2. Maquinas de Turing quânticas e Circuitos quânticos .......................................................... 10

1.3. Algoritmos quânticos de Deutsch e Deutsh-Josza............................................................... 11

1.4. Algoritmos de Shor.......................................................................................................... 11

1.5. Algoritmos de Grover ...................................................................................................... 11

2. Capitulo II- Características de um sistema computacional quântico......................................... 11

2.1. Bits quânticos.................................................................................................................. 12

2.2. Registradores quânticos ................................................................................................... 12

2.3. Circuitos quânticos .......................................................................................................... 13

2.4. Algoritmos quânticos ....................................................................................................... 15

2.5. Computabilidade ............................................................................................................. 16

2.6. Complexidade computacional........................................................................................... 17

Conclusão .................................................................................................................................. 18

Refrencias Bibliograficas ............................................................................................................ 20


4

Epigrafe

O que sabemos é uma gota; o que ignoramos é um oceano.


Isaac Newton
5

Introdução

Este trabalho apresenta uma proposta para um projecto de pesquisa na área da ciência
da computação mais especificamente refere-se a computação quântica e visa criar um plano
de estudo e cronograma de actividades de pesquisa.

Os sub-temas em ciência da computação são abrangentes e não foram exaustivamente


abordados durante o desenvolvimento do trabalho embora apresenta tópicos bem específicos
com descrições em termos de álgebra linear de alguns processos físicos e computacionais.

Essa proposta de projecto tem intuito de estabelecer um cronograma de actividades,


um plano de estudo e um plano de trabalho semelhantemente ao projecto de pesquisa feito
por Alex Bredariol Grilo sob orientação do Prof. Dr. Arnaldo Vieira Moura no Instituto de
Computação — Universidade Estadual de Campinas.

A semelhança destes pesquisadores, o autor desse trabalho também detém curiosidade


em pesquisar sobre computação quântica e teoria da computação. Tendo já tido conhecimento
prévio em tópicos de mecânica quântica e teoria da computação esse tema esta adequado
como objecto de estudo e pesquisa para o presente trabalho.

Pressuponho que o leitor tenha conhecimento prévio e básico em tópicos de


matemática, física e teoria da computação para melhor compreensão.

Os computadores estão na base da revolução do que a era da informação impõe na


sociedade nas últimas décadas. Hoje a informação tornou-se de livre acesso e gratuita em
diversas plataformas ou em sites online, o conhecimento é quase ilimitado, com artigos de
conteúdos ricos que se multiplicam exponencialmente ano após ano.

Computação Quântica é um tema recente, que aplica-se das descobertas da física


quântica para o desenvolvimento de aplicações computacionais. Proposto teoricamente na
década de 80, somente recentemente conseguiu-se desenvolver computadores que utilize de
forma satisfatória a estrutura quântica da matéria nos processos de computação. A D-wave,
uma empresa canadense foi a primeira a construir um computador quântico comercial em
2011 quando anunciou a D-wave One com 128 qubits. Ainda hoje, constitui-se numa
importante linha de pesquisas a ideia de criar sistemas computacionais quânticos com
tamanho reduzido ou mesmo portáteis.
6

Justificativa

A lei de moore estabelece que a cada 18 meses o número de transistores dos chips
teria um aumento de 100%, pelo mesmo custo. Porem chegara a um limite físico em que não
poderá se miniaturizar mais os chips, um limite dos quais computadores quânticos não
possuem. Por conta do fato de computadores quânticos lidarem com algoritmos quânticos
para computarem informação através de circuitos quânticos aleatórios, estes acabam lidando
directamente com propriedades da mecânica quântica como superposição, emaranhamento,
tunelamento quântico etc.

Um computador quântico possui múltiplos estados possíveis para cada qubit de


informação o que torna processos complexos passiveis de serem computados com relativa
facilidade em relação aos demais computadores digitais mais avançados como os
supercomputadores. Problemas como previsão do tempo, fatorizar números primos grandes,
analise química e inteligência artificial são mais simples de computar nesta arquitectura
quântica do que na digital clássica Porem nem todo problema fica mais eficiente com
computadores quânticos.

Objetivo Geral

O objetivo deste trabalho é entender a importância da Computação Quântica para a


Teoria da Computação, estudando inicialmente seus conceitos básicos e posteriormente
alguns tópicos mais avançados que tenham relevância teórica. Pretende-se, também,
contribuir com o tema escrevendo uma monografia em língua portuguesa sobre todo o
conteúdo estudado.

Objetivos específicos

Os objetivos desta proposta são:

 Estudar os conceitos básicos da Computação Quântica relevantes para Teoria da


Computação
7

 Estudar o custo computacional de algoritmos clássicos em relação aos algoritmos


quânticos
 Implementar o simulador quântico para Python (Qsystem)
 Entender a ameaça de ataques quânticos a geradores de números pseudo-aleatórios

Metodologia e abordagem da pesquisa

A metodologia empregue foi a pesquisa bibliográfica. O tipo de pesquisa quanto a


natureza e fundamental. Este trabalho foi possível após extensa pesquisa em periódicos
científicos, pesquisas em plataformas da Google como Google Académico e até mesmo da
Google Research. A Google Research disponibiliza milhares de artigos científicos ligados a
ciência da computação. A Google Académico permite ao pesquisador usufruir duma
ferramenta que ajuda a encontrar artigos com selo académico. Artigos com conteúdos
actualizados e alta credibilidade uma vez que a ferramenta aplica filtros para seleccionarem
artigos com aprovação no meio académico.

Estrutura do trabalho

Podemos, conceitualmente, dividir este trabalho em dois capítulos. Primeiramente


serão estudados os conceitos básicos da Computação Quântica.

Este estudo servirá para entender o contexto em que a Computação Quântica está
inserida e possibilitará o aprofundamento dos estudos seguintes. Após essa etapa inicial,
serão estudados a fundo alguns tópicos da Computação Quântica especialmente relevantes
para a Teoria da Computação.

Para se chegar ao estado da arte nas pesquisas sobre o tema proposto será necessário
estudar alguns conceitos mais avançados em algumas áreas tais como álgebra linear,
computabilidade e complexidade computacional. Logo, esta primeira etapa é importante, pois
dará ao candidato familiaridade suficiente com temas tais como circuitos quânticos e
algoritmos quânticos, fundamentais para prosseguir nos estudos.

Ainda durante a fase inicial, serão estudados de maneira introdutórias temas mais
avançados da Computação Quântica.
8

Para efeitos de uma lista inicial, pretende-se estudar

(i) aplicações algorítmicas dos passeios quânticos,


(ii) as classes de complexidade computacional quânticas e autômatos finitos
quânticos, junto com as linguagens regulares quânticas reconhecidas por estes.

As técnicas e algoritmos englobados levam a alguns dos resultados mais recentes sobre
algoritmos quânticos que apresentam ganho exponencial em complexidade de tempo em
relação a algoritmos clássicos.

Já no item (ii), serão estudados pontos referentes aos limites do poder computacional dos
modelos quânticos.

Durante os estudos compreendidos na primeira fase serão levantados alguns tópicos


sobre os quais será desenvolvido um estudo mais aprofundado numa outra fase. Pretende-se,
em um primeiro momento, aprofundar os tópicos listados sob o item (ii). Não se espera,
entretanto, a resolução de conjecturas que resistem há décadas. Porém, pretende-se um
entendimento completo dos temas básicos de suporte, de forma a alcançar o estado da arte em
tópicos específicos.

Na outra fase pretende-se, também, melhor sintetizar alguns tópicos avançados ou mesmo
obter novos resultados parciais.

O projecto como um todo possui um cunho eminentemente teórico, e terá como um de


seus resultados a escrita de uma monografia, em língua portuguesa, abordando em detalhes os
tópicos estudados. As seções referentes à primeira parte do trabalho contribuirão para uma
introdução à Computação Quântica sob as lentes da Teoria da Computação. O texto referente
à segunda parte do trabalho irá aprofundar alguns temas pouco explorados na literatura da
área em língua portuguesa.

Materiais e Métodos

Para atingir os objectivos mencionados foi elaborado um plano de estudo inicial


utilizando-se a bibliografia tradicional na área de Computação Quântica. Esse plano de
estudo é referente à primeira fase do projecto. Regularmente, poderá ser feita reuniões com o
orientador para discutir o andamento do trabalho e os resultados obtidos. Durante essas
reuniões, serão levantados também tópicos que poderão ser estudados na segunda fase do
trabalho. Aliadas ao estudo continuado, teremos a escrita da dissertação e de artigos
9

científicos, bem como apresentações de tópicos seleccionados em seminários para a


comunidade local da Universidade UniLicungo.

Estas actividades ajudarão a consolidar os conhecimentos adquiridos. Pretende-se


também realizar um estágio de pesquisa em algum centro de excelência na área dos tópicos
sobre os quais será feito um estudo aprofundado. O suporte computacional necessário ao
projeto não será suprido.

A literatura indicada poderá ser obtida nas bibliotecas da Unicamp, da USP, no portal
de periódicos da Capes e na internet.

Plano de estudo

Para atingir os objectivos mencionados foi elaborado um plano de estudo inicial


utilizando-se a bibliografia tradicional na área de Computação Quântica. Esse plano de
estudo é referente à primeira fase do projecto.

Regularmente, serão feitas reuniões com o orientador para discutir o andamento do


trabalho e os resultados obtidos.

Aliadas ao estudo continuado, teremos a escrita da monografia e de artigos científicos,


bem como apresentações de tópicos seleccionados em seminários para a comunidade local do
Universidade Licungo. Estas actividades ajudarão a consolidar os conhecimentos adquiridos.

A literatura indicada poderá ser obtida nas bibliotecas da Unicamp, da USP, no portal
de periódicos da Capes e na internet

Plano de Trabalho e Cronograma de Execução

Esta seção descreve as actividades e suas respectivas durações para realização do


projecto.

Fase I

1. Introdução à Computação Quântica. Bits quânticos, portas e circuitos quânticos,


medições de bits quânticos, principais algoritmos quânticos Duração: 1 mês
2. Passeios quânticos e algoritmos quânticos recentes. Aplicações algorítmicas de
passeios quânticos e novos algoritmos quânticos Duração: 2 meses.
10

3. Complexidade Computacional Quântica. Classes de complexidade computacional


quânticas, relação entre classes de complexidade, limites da Computação Quântica.
Duração: 2 meses.
4. Autômatos quânticos e suas linguagens. Autômatos finitos quânticos, linguagens
regulares quânticas, autômatos de pilha quânticos Duração: 2 meses.
5. Dissertação e relatórios. Escrita das seções referentes à parte estudada na primeira fase
e de relatórios anuais para a Fapesp. Duração: 3 meses.
6. Artigos e seminários. Escrita de artigos científicos e preparação de seminários sobre os
tópicos estudados. Duração: 1 mês.

1. Capitulo I - Conceitos básicos da Computação Quântica

Neste capitulo consta um breve histórico da Computação Quântica e revisão da literatura


em aspectos importantes de física quântica.

1.1.Breve Histórico

Na década de 80, Richard Feynman sugeriu que os computadores clássicos só


conseguiriam simular o funcionamento de sistemas quânticos com um custo exponencial em
termos de tempo computacional. Foi então proposto um computador que extrairia da estrutura
quântica da matéria seu poder computacional.

Paralelamente à evolução do estudo sobre como implementar na prática um computador


quântico, físicos, matemáticos e cientistas da computação passaram a pesquisar o ganho que
computadores quânticos poderiam trazer se fossem implementados na prática.

1.2.Maquinas de Turing quânticas e Circuitos quânticos

No final da década de 80, Deutsch descreveu as Máquinas de Turing Quânticas e


circuitos quânticos, duas importantes ferramentas que permitiram o desenvolvimento de
algoritmos quânticos compatíveis com qualquer concretização futura para computadores
quânticos. Posteriormente, Yao demonstrou que esses dois modelos são equivalentes.

No final da década de 90, Bernstein e Vazirani descreveram como construir uma Máquina de
Turing Quântica Universal, uma Máquina de Turing Quântica capaz de simular qualquer
Máquina de Turing Quântica.
11

1.3. Algoritmos quânticos de Deutsch e Deutsh-Josza

Na início da década de 90, foram desenvolvidos os algoritmos quânticos de Deutsch e de


Deutsch-Josza, os quais permitem descobrir características de funções desconhecidas de
forma mais eficiente quando comparados com algoritmos determinísticos clássicos, no
segundo caso com ganho exponencial na complexidade em tempo.

1.4. Algoritmos de Shor

A grande notoriedade da Computação Quântica, entretanto, ocorreu em 1994, quando


Shor apresentou algoritmos quânticos eficientes para os problemas de fatoração em números
primos e para se encontrar o logaritmo discreto [34]. Esses dois problemas são muito
importantes pois alguns dos métodos criptográficos mais utilizados actualmente assumem que
não há uma forma eficiente de resolvê-los. Portanto, existindo um computador quântico, este
tipo de criptografia seria facilmente quebrado.

1.5. Algoritmos de Grover

Outro algoritmo importante para computação quântica foi o algoritmo de buscas


apresentado por Grover. Procurar um elemento em uma base de dados não ordenada de n
elementos necessita de tempo O(n) no pior caso, tanto classicamente quanto
probabilisticamente. Grover apresentou um algoritmo quântico que realiza tal busca em
tempo O(√n). Tal ganho não é exponencial, porém a aplicabilidade do resultado é muito
importante, pois pode-se conseguir uma aceleração quadrática, portanto substancial, na
solução de problemas da classe NP.

Nos anos 2000, novos algoritmos quânticos foram desenvolvidos, alguns utilizando os
algoritmos anteriores como submódulos outros utilizando novas técnicas. Foram descobertos
também novos métodos para se encontrar limitantes quânticos para vários problemas, o que
veio auxiliar no avanço dos estudos na área de teoria de complexidade computacional .

2. Capitulo II- Características de um sistema computacional quântico

O capitulo 2 visa apresentar seus conceitos básicos. De posse destes, abordamos os


principais algoritmos quânticos conhecidos e finalizamos examinando questões de
computabilidade e complexidade computacional quântica. Nas subsecções deste capitulo,
12

apresento definições sobre bits quânticos, registradores quânticos, circuitos quânticos,


algoritmos quânticos, circuitos quânticos , computabilidade e complexidade computacional.

2.1. Bits quânticos (qubits)

Um bit clássico é unidade de informação básica de um sistema computacional clássico, e


que pode assumir os valores 0 ou 1 de forma exclusiva. Alternativamente, podemos
considerar que cada um desses valores é um vetor no espaço 2-dimensional em que o bit 0
corresponde ao vetor ( ) e o bit 1 corresponde ao vetor ( ) .

Já um bit quântico (qubit) é uma unidade de informação de um sistema quântico 2-


dimensional. Um qubit pode ser descrito como um elemento do espaço de Hilbert(1)
complexo 2-dimensional sobre o qual, arbitrariamente, escolhemos uma base ortonormal:

| 0i ≡ 1 0 e | 1i ≡ 0 1 . Os estados que um qubit pode assumir são então uma


superposição normalizada dos dois elementos da base: | ψi = α | 0i + β | 1i, onde α, β ∈ C, |α|
2 + |β| 2 = 1. Uma consequência direta desta definição é que um qubit pode assumir um
número infinito de estados. Porém, diferente dos bits clássicos, quando observamos o valor
de um qubit | ψi, efetuando uma medição, teremos | 0i com probabilidade |α| 2 ou | 1i com
probabilidade |β| 2 , e o qubit colapsa para o estado correspondente. Portanto, ainda que o
número possível de estados seja infinito, não é possível diferenciá- los com um número finito
de medições.

2.2. Registradores quânticos

Podemos, assim como na versão clássica, imaginar um sistema com n qubits, que seria
representado por um elemento do espaço de Hilbert 2 n -dimensional, caracterizado pelo
produto tensorial dos n espaços de Hilbert de cada qubit. O sistema resultante terá uma base
computacional com 2 n elementos, representadas por | 000....000}, | 000...001}, ..., |
111...110}, | 111...111}. Chamaremos esse conjunto de qubits de um registrador quântico.

Os estados de um registrador quântico são formados por superposições dos 2 n estados da


base e, da mesma forma que no caso de um único qubit, a cada elemento da base
computacional corresponderá uma amplitude complexa, sendo que a soma dos quadrados das
normas das amplitudes deve ser unitário.
13

Podemos resumir essas informações em

| ψi = i∈{0,1}n ai | ii, onde ai ∈ C, i ∈ {0, 1} n , e X i∈{0,1}n |ai | 2 = 1.

Podemos observar que numa abordagem mais direta para simular um sistema quân tico
classicamente, seria necessário armazenar o valor da amplitude de cada elemento da base.
Com isso, a quantidade de memória necessária cresce exponencialmente em relação ao
número de qubits no sistema. Sem mencionar o fato de que um número complexo ai é
representado por um par de números reais, e números reais não podem ser todos
completamente especificados em um computador digital (ou em uma Máquina de Turing).
Por esse motivo, suspeita-se que sistemas quânticos não podem ser representados em
computadores clássicos sem incorrer em um custo computacional exponencial. 2

2.3. Circuitos quânticos

Uma vez que qubits e registradores quânticos armazenam informação, veremos agora como
estes podem ser utilizados para realizar computações. Na computação clássica utilizamos
portas lógicas para manipular n bits de entrada e computar uma saída de m bits. Na
Computação Quântica, as manipulações de qubits são feitas através de portas quânticas. De
acordo com as leis da mecânica quântica, os sistemas quânticos evoluem através de
operadores unitários determinísticos. Portanto, uma porta quântica tem como entrada n qubits
e sobre eles realiza uma transformação linear unitária, devolvendo como saída os n qubits
alterados. Dado que computações quânticas são sempre unitárias, uma implicação direta é
que são também reversíveis, pois toda matriz unitária é invertível. A reversibilidade das
portas quânticas pode parecer, em um primeiro momento, restritiva, dado que portas lógicas
usuais, como as portas lógicas AND e OR, não são reversíveis — veja que se a saída de uma
porta AND for 0, não é possível identificar os valores de entrada. Porém sabe-se que
operações irreversíveis podem ser simuladas em portas quânticas, utilizando uma quantidade
polinomial de qubits adicionais Veremos agora algumas portas quânticas importantes e de
uso recorrente na computação quântica.

2.3.1. Porta de Hadamard

A porta de Hadarmard é uma porta de um qubit e pode ser representada pela seguinte matriz
unitária
14

[ ]

. Para registradores quânticos com mais qubits , pode-se aplicar a porta de Hadamard a cada
um dos bits individualmente. Isto produz o mesmo efeito que a porta de WalshHadamard,
representada pela matriz Wn, onde o valor da linha i e coluna j é:

( )

onde i · j denota o produto interno das representações binárias de i e j, modulo 2: i.e.

Portanto, com a porta de Walsh-Hadamard, é possível gerar uma sobreposição equiprovável


de todos os elementos da base computacional, ou seja, todas as amplitudes terão a mesma
norma. Com essa superposição pode-se, por exemplo, computar o valor de uma função em
todos os pontos da base computacional de forma balanceada.

2.3.2. Portas controladas

Uma porta U-controlada é uma porta quântica que tem como entrada x bits controladores e y
bits alvo. Se algum bit controlador for | 0i, os valores dos bits alvo permanecem inalterados.
Caso o valor de todos os bits controladores sejam | 1i, a porta quântica U atua sobre os bits
alvo. Vejamos um exemplo com um qubit de entrada e um qubit controlador. Seja

[ ]

a transformação desejada sobre o qubit alvo. Então a porta controlada, c(U ), seria
representada por

( ) [ ]

Portas controladas aparecem em vários algoritmos quânticos. Veremos a seguir uma porta
controlada especial.
15

Porta de Tofolli. A Porta de Tofolli ou a porta CCNOT é uma porta quântica de 3 qubits que
utiliza os 2 primeiros como controladores. Quando ambos tiverem o valor | 1i, o valor do
terceiro qubit é invertido. A Porta de Toffoli pode ser representada pelo mapeamento :

| }| }| } | }| }| }

A Porta de Toffoli é universal na computação clássica, ou seja, qualquer circuito clássico


pode ser implementado utilizando somente portas de Toffoli [17]. Como a porta de Tofolli
também é quântica, sabemos que todos os circuitos clássicos podem ser simulados em
computadores quânticos.

Oráculos.

Também conhecidos por "caixa-preta", oráculos calculam uma função característica


desconhecida. Seja uma função f(x) : {0, 1} n → {0, 1}. Um oráculo Uf terá o seguinte
comportamento: | }| } | }| ( )}, onde x é um registrador de n qubits e y é
um único qubit . Oráculos são amplamente utilizados em algoritmos quânticos voltados para
problemas de busca ou problemas de se extrair informações de funções desconhecidas.

2.4. Algoritmos quânticos

Algoritmos quânticos estão baseados no modelo computacional que utiliza a estrutura


quântica da matéria no processo de computação. Como já citado anteriormente, circuitos
quânticos e Máquinas de Turing Quânticas são formas equivalentes para se descrever um
algoritmo quântico, ficando a critério do autor utilizar a notação que achar mais adequada.
Um conceito importante para o desenvolvimento de algoritmos quânticos é o para8 lelismo
quântico. Como o estado de um registrador quântico reflete a superposição das amplitudes
dos elementos da base computacional do sistema, é possível aplicar uma operação sobre
todos esses elementos ao mesmo tempo e, assim, obter uma superposição dos resultados da
operação sobre os elementos da base computacional. Como o algoritmo irá tratar essa
superposição de resultados para extrair a informação desejada varia de caso para caso. Porém,
fica claro que esse é um grande diferencial da computação quântica perante a computação
clássica. Vários algoritmos quânticos e técnicas para desenvolvimento de algoritmos
quânticos foram desenvolvidos até hoje, e a explicação detalhada de todos estes é inviável
dada a limitação de espaço desta proposta. Vamos, então, comentar brevemente sobre os mais
importantes. Algoritmos de Shor. O grande salto da Computação Quântica se deu quando
16

Shor propôs algoritmos quânticos que computam fatores primos de grandes números e que
calculam o logaritmo discreto de um número, ambos com complexidade polinomial [34]. Os
melhores algoritmos clássicos conhecidos até o momento para resolver esses problemas
apresentam complexidade exponencial em tempo. Portanto, um computador quântico faria
com que problemas hoje considerados intratáveis pudessem ser resolvidos de forma eficaz.
Estes problemas são importantes pois são o cerne dos principais métodos criptográficos em
uso hoje em dia. Algoritmo de Grover. O Algoritmo de Grover resolve o problema de buscas
em um banco de dados desordenado, apresentando um ganho quadrático em relação aos
algoritmos clássicos. O ganho não é exponencial, como no caso dos algoritmos de Shor,
porém é possível aplicar seu resultado em muitos problemas importantes, inclusive a todos os
problemas da classe NP. Passeios quânticos. Análogo quântico aos passeios aleatórios, os
passeios quânticos descrevem o movimento de um caminhante condicionado a uma moeda
quântica, e tendo sua posição definida por uma sobreposição de estados. Um grande
diferencial dos passeios quânticos é que permitem trabalhar sobre estruturas muito
conhecidas como uma linha ou, mais genericamente, sobre um grafo qualquer. Diversos
algorit9 mos quânticos foram desenvolvidos utilizando o conceito de passeios quânticos
Alguns deles apresentam um ganho exponencial em complexidade de tempo em relação aos
algoritmos clássicos.

2.5. Computabilidade

Na computação clássica, o estudo da computabilidade nos permitiu classificar os problemas


quanto ao modelo computacional necessário para resolvê-lo, caso isso seja possível. Esse
estudo foi estendido à Computação Quântica, definindo-se modelos quânticos análogos para
autômatos finitos determinísticos (AFDs), autômatos de pilha (APs) e Máquinas de Turing
determinísticas (MTs). Verificou-se, porém, que varia o modo como cada modelo
computacional quântico se relaciona com sua contrapartida determinística. É sabido que o
conjunto das linguagens aceitas por 1-QFAs (autômatos finitos quânticos que só se movem
em uma direção) é um subconjunto próprio daquelas aceitas por AFDs. Já no modelo em que
é permitido mover-se nos 2 sentidos da fita de entrada (os 2-QFAs), estes aceitam um
superconjunto próprio das linguagens aceitas por AFDs [24]. Quando partimos para o estudo
das linguagens livres de contexto (LLC), que são aceitas por APs, ainda não foi encontrada
uma relação entre estas e aquelas aceitas por autômatos de pilha quânticos (QAPs), as QLLC.
Sabe-se, por exemplo, que toda LLC não-ambígua é também uma QLLC e que há QLLCs
que não são LLC [30]. Porém ainda não se sabe se o conjunto das LLC é um subconjunto
17

próprio das QLLC, ou se há linguagens LLC que não são QLLC. No quesito
computabilidade, Máquinas de Turing determinísticas são equivalentes às Máquinas de
Turing Quânticas1 , dado que é possível obter uma que simule a outra, e vice-versa.

Assume-se aqui que as amplitudes de transição da Máquina de Turing Quântica podem ser
computadas exatamente e em tempo polinomial. 10

2.6. Complexidade computacional

Nesta subseção, trataremos da eficiência computacional dos algoritmos quânticos. Com o


Algoritmo de Shor, surgiu a questão da existência de algoritmos quânticos capazes de
resolver de maneira eficiente algum problema que só pode ser resolvido de maneira
ineficiente no modelo clássico. O estudo da complexidade computacional quântica se
desenvolveu, definindo classes de complexidade análogas àquelas associadas ao modelo
computacional probabilístico. Apesar desta evolução, ainda hoje restam muitas questões em
aberto sobre como essas novas classes se relacionam com a classes de complexidade
clássicas. Denomina-se BQP a classe dos problemas que são resolvíveis de maneira eficiente
no modelo computacional quântico. Consegue-se, de maneira direta, provar a seguinte
estrutura entre certas classes de complexidade: P ⊆ BPP ⊆ BQP ⊆ PSPACE, onde P e BPP
são as classes de problemas que podem ser resolvidos de forma eficiente nos modelos
computacionais determinísticos e probabilísticos, respectivamente, e PSPACE é a classe de
problemas que podem ser resolvidos utilizado-se uma quantidade de memória de tamanho
polinomial em relação ao tamanho da entrada do problema, no modelo computacional
clássico. Um importante problema em aberto em teoria da computação é a relação exata entre
as classes P e PSPACE. O estudo da complexidade quântica ganha relevância, pois BQP 6=
BPP implicaria em P 6= PSPACE. Ou seja, se for encontrado um problema que pode ser
resolvido de maneira eficiente em computadores quânticos, mas não em modelos
probabilísticos (ou determinísticos), o problema P ?= PSPACE, em aberto há décadas, estaria
resolvido. Outro problema em aberto de grande importância é a relação entre as classes BQP
e NP. Esta última pode ser entendida como a classe de problemas para os quais pode-se
verificar certificados de soluções no modelo determinístico e de maneira eficiente. A 11
importância deste problema reside no fato de que há muitos problemas importantes em NP os
quais não se sabe se podem ser resolvidos de maneira eficiente classicamente. Então,
18

descobrir a relação entre essas duas classes de complexidade é equivalente a descobrir se um


computador quântico pode ou não resolver tais problemas de maneira eficiente

Conclusão

Na língua inglesa, há uma grande diversidade de livros e artigos sobre Computação Quântica.
A principal referência introdutória à Computação Quântica é o livro de Nielsen, que possui
uma abordagem mais ampla e cobre aspectos físicos, matemáticos e computacionais. Já os
livros de Yanofsky e Mermin apresentam uma abordagem voltada para cientistas da
computação. Pretende-se utilizar um enfoque semelhante ao adotado por estes dois últimos
volumes, estreitando ainda mais o foco para Teoria da Computação.

Na língua portuguesa, encontramos dois tipos de trabalhos. Em trabalhos como o de


Vignatti, Cardonha e Portugal encontra-se uma introdução à Computação Quântica em
linhas gerais, sendo que o segundo também cobre tópicos de complexidade computacional
quântica. Por outro lado, há também algumas teses e dissertações que focam alguns temas
específicos da Computação Quântica. Estes últimos, porém, requerem um conhecimento
prévio mais aprofundado do tema. Pretendemos, neste trabalho, mesclar essas duas
abordagens.

A Computação Quântica mescla duas grandes revoluções científicas do século 20: a ciência
da computação e a física quântica. A física quântica é a base teórica do transistor, do laser e
de outras tecnologias que possibilitaram a revolução da computação. Mas, no nível
algorítmico, o maquinário de computação de hoje ainda opera na lógica booleana "clássica".

Quantum Computing é o projeto de hardware e software que substitui a lógica booleana pela
lei quântica no nível algorítmico. Para certos cálculos, como optimização, amostragem,
pesquisa ou simulação quântica, isso promete acelerações dramáticas. A Google esta
particularmente interessados em aplicar a computação quântica à inteligência artificial e ao
aprendizado de máquina. Isso ocorre porque muitas tarefas nessas áreas dependem da solução
de problemas de otimização complexos ou da execução de amostragem eficiente.

Para que pudessem ser estudadas aplicações que exploram as características de um


computador quântico, mesmo ainda não existindo nenhum disponível para uso científico,
foram desenvolvidas ferramentas teóricas que descrevem seu funcionamento geral de forma
19

independente de uma implementação física. É com essas ferramentas que físicos,


matemáticos e cientistas da computação trabalham no desenvolvimento da Computação
Quântica e da Teoria da Informação Quântica.
20

Referencias Bibliográficas

(i) Ambainis e R. Spalek. Quantum algorithms for matching and network flow.Em
Proceedings of the 23rd International Symposium on Theoretical Aspects of
Computer
(ii) Science, pág. 172–183. Springer LNCS, 2006.
(iii)Andris Ambainis. Quantum lower bounds by quantum arguments. Em Proceedings of
the ACM Symposium on Theory of Computing, pág. 636–643, 2000.
(iv) Andris Ambainis. Quantum walks and their algorithmic applications. International
Journal of Quantum Information, 1:507, 2003.
(v) Andris Ambainis e Robert Špalek. Quantum algorithms for matching and network
(vi) flows. Em Proceedings of the 23rd Annual conference on Theoretical Aspects of
Computer
(vii) Science, STACS’06, pág. 172–183, Berlin, Heidelberg, 2006. Springer-Verlag.
(viii) https://www.scielo.br/scielo.php?script=sci_arttext&pid=S1806-
11172018000400406&lng=pt&tlng=pt
(ix) https://www.ictp-saifr.org/wp-content/uploads/2021/06/Fisica-em-Casa.pdf

Você também pode gostar