Aula 02 - Computação Quântica - Introdução
Se gostarem do conteúdo dêem um joinha 👍 na página do Código Fluente no
Facebook
Link do código fluente no Pinterest
Meus links de afiliados:
Introdução
O termo
computação quântica costuma ser sucesso ultimamente na mídia.
A palavra "quantum" é bastante intrigante, e combinada com a promessa de poder computacional que supera tudo o que vimos até agora, a torna irresistível.
Mas, o que exatamente é a computação quântica?
Zeros, uns e ambos
Um computador clássico funciona com
0s e
1s.
Qualquer que seja a tarefa executada por ele: cálculo de uma soma, uma reserva de férias em uma agência de viagem, etc. Ele usa
zeros(0) e
uns(1).
O processo subjacente é sempre o mesmo: uma instância da tarefa é convertida em uma sequência de
0s e
1s (como
entrada), que é processada por um algoritmo.
Uma nova sequência de
0s e
1s aparece no final (como
saída), que codifica o resultado.
Por mais inteligente que um algoritmo possa parecer, tudo o que ele faz é manipular sequências de bits, onde cada bit é
0 ou
1.
No nível da máquina, essa dicotomia é representada usando circuitos elétricos que podem ser fechados, nesse caso uma corrente flui, ou abertos, nesse caso a corrente não passa.
Mundo Quântico
A computação quântica é baseada no fato de que, no mundo subatômico, as coisas não precisam ser tão claras como seria de esperar na nossa experiência macroscópica.
Pequenas partículas, como
elétrons ou
fótons, podem assumir simultaneamente estados que normalmente consideramos mutuamente exclusivos.
Eles podem, por exemplo, estar em vários lugares ao mesmo tempo, e no caso dos fótons, eles exibem simultaneamente dois tipos de
polarização.
Nunca vemos essa superposição de estados diferentes na vida cotidiana, porque de alguma forma desaparece quando um
sistema é
observado.
Quando você mede a localização de um
elétron ou a polarização de um
fóton, todas as alternativas possíveis, exceto uma, são eliminadas e você verá
apenas 1.
Ninguém sabe como isso acontece, mas, acontece.
Você pode descobrir mais sobre isso, veja a equação de Schrödinger.
Superposição
A
superposição nos livra das
restrições binárias.
Um
computador quântico trabalha com partículas que podem estar em
superposição.
Em vez de representar
bits, essas partículas representam
qubits, que podem assumir o valor
0,
1 ou
ambos simultaneamente.
"Se você faz algo com um sistema quântico, é como se estivesse mexendo com objetos que podem ser
simultaneamentes 0s e
1s", explica
Richard Jozsa, pioneiro da computação quântica na Universidade de
Cambridge.
Ação assustadora
Você pode argumentar que algo como superposição talvez possa ser alcançado usando apenas a física clássica comum, talvez processando
dois bits comuns ao mesmo tempo ou algo assim, nesse caso, a computação quântica não seria tão mais surpreendente do que a computação clássica.
A física quântica é superposição.
Se você observar um sistema com mais de um
qubit, os componentes individuais geralmente não são independentes um do outro.
Em vez disso, eles podem ser emaranhados.
Quando você mede um dos
qubits em um sistema emaranhado de dois
qubits por exemplo, o resultado, se você vê
0 ou
1, informa imediatamente o que você verá quando medir o outro
qubit.
As partículas podem ser emaranhadas mesmo se separadas no espaço, fato que levou
Einstein a chamar o emaranhado de "
ação assustadora à distância".
Emaranhamento
Emaranhamento significa que descrever um sistema de vários
qubits usando informações clássicas comuns, como
bits ou
números, não se resume a encadear as descrições dos
qubits individuais.
Em vez disso, você precisa descrever todas as correlações entre os diferentes
qubits.
À medida que você aumenta o número de
qubits, o número dessas correlações aumenta exponencialmente: para
n qubits, existem
2^n correlações.
Esse número explode rapidamente: para descrever um sistema de
300 qubits, você já precisaria de mais números do que os átomos existentes no universo que conhecemos.
A ideia é que, como não podemos processar informações contidas em um sistema de apenas algumas centenas de
qubits usando
bits clássicos, talvez um computador com
qubits possa executar tarefas que um computador com
bits clássicos nunca poderá.
Esta é a verdadeira razão pela qual os físicos pensam que a computação quântica é tão promissora.
No entanto, há um problema
Enquanto um algoritmo quântico pode receber
qubits emaranhados em superposição como entrada, a saída também costuma ser um estado quântico e esse estado geralmente muda assim que você tenta observá-lo.
"A natureza faz um truque aqui", diz
Jozsa.
"Ela atualiza um estado quântico, mas não permite que você obtenha todas as informações."
A arte da computação quântica é encontrar maneiras de obter o máximo de informações possível do
não observável.
Um exemplo de algoritmo quântico foi desenvolvido por
Jozsa em conjunto com outro pioneiro da computação quântica,
David Deutsch.
A tarefa que ele executa é um pouco curiosa, mas, pensaremos da seguinte maneira.
Imagine uma fila de pessoas esperando nos portões do céu para ver se serão deixadas entrar ou não.
Guardando esses portões está
São Pedro que, em deferência ao seu amor pela
ciência da computação, rotulou todas as pessoas com números escritos em binário.
| NÚMEROS EM DECIMAL |
NÚMEROS EM BINÁRIO |
| 0 |
000 |
| 1 |
001 |
| 2 |
010 |
| 3 |
011 |
| 4 |
100 |
| 5 |
101 |
| 6 |
110 |
| 7 |
111 |
Acontece exatamente 2^3 = 8 pessoas, o que significa que cada pessoa recebe sua própria sequência exclusiva de três
0s e
1s (veja a tabela acima).
Decisão de São Pedro
São Pedro registra suas decisões alocando um
1 para uma sequência de bits específica, se ele quiser deixar aquela pessoa entrar no céu e um
0, se não quiser deixar entrar.
Tecnicamente, essa alocação é chamada de função
booleana, uma regra que atribui a cada cadeia de bits um
0 ou
1.
As funções booleanas é fundamental na ciência da computação, e é por isso que nosso exemplo não é tão absurdo quanto parece.
Você não sabe o que
São Pedro vai decidir fazer com cada indivíduo, mas, você sabe que ele vai decidir da cabeça dele: se ele quiser deixar todo mundo entrar, a todas as cadeias de bits é atribuído
1, se ele deixar apenas metade das pessoas, metade das cadeias de bits recebe
0 e a outra metade
1.
Sua tarefa não é descobrir o que acontece com cada indivíduo, mas, se
São Pedro está de bom humor e deixa todo mundo entrar, ou se ele está de mau humor, decidindo deixar apenas metade das pessoas entrarem.
Quantos valores booleanos decidido por São Pedro, precisa ser procurado para descobrir qual das duas alternativas é sua escolha?
Se você trabalha como um computador clássico, no pior caso, terá que procurar a função
cinco vezes.
Isso ocorre porque, mesmo que você veja um
1 alocado nos primeiros registros das cadeias de
4 bits verificadas, ainda não pode ter certeza de que todas as cadeias de
4 bits vêm com um
1, ainda há a possibilidade de que sejam apenas
metade delas, então você precisa da
quinta consulta para ter certeza.
Em um
computador quântico, no entanto, pode-se procurar o valor da função para todas as oito pessoas
simultaneamente, portanto, você só precisa de
uma consulta.
"Pelo custo de executar o programa uma vez com essa entrada engraçada de superposição, o
computador quântico calcula de alguma forma, todos os valores de uma só vez", explica
Jozsa.
Essa vantagem do
quantum sobre a
computação clássica se torna ainda mais aparente quando há mais pessoas, para uma linha que consiste em
2^n indivíduos, um computador clássico precisaria procurar a função
(2^n-1) + 1 vezes, um número que cresce muito rapidamente com
n .
Simultaneidade
Um
computador quântico sempre precisaria procurar apenas uma vez.
Mas existe o
mistério da natureza, seus oito valores pesquisados simultaneamente serão codificados em um estado quântico que você não consegue ler de fato, uma vez que qualquer tentativa de medir
perturbará seu estado.
Felizmente, você não está tentando descobrir o que acontecerá com cada indivíduo em particular.
Você só quer saber se
São Pedro está se sentindo generoso ou rabugento.
"Essa é apenas uma pergunta do tipo
sim/não", diz
Jozsa.
Jozsa e
Deutsch mostraram que é possível executar uma operação extra no estado quântico, que provoca a informação simples que você procura nos lugares certos para que você possa lê-la (veja este
artigo para mais detalhe).
É um pouco como um castelo de cartas que entra em colapso assim que você olha para ele.
Você pode nunca ser capaz de vê-lo em toda a sua glória, mas, se foi construído da maneira certa, pode pelo menos ser capaz de obter algumas informações sobre como era a partir da pilha de cartas recolhidas.
E essa é uma das razões pelas quais os computadores quânticos são mais poderosos que os clássicos.
Para encontrar padrões ou estruturas simples em sistemas de muitos componentes, um computador clássico geralmente não tem escolha a não ser avaliar primeiro todos ou pelo menos muitos dos componentes individualmente.
Um computador quântico, por outro lado, pode avaliar todos eles simultaneamente.
E embora você não consiga ler todos esses valores individuais, muitas vezes é possível extrair informações suficientes para descobrir um padrão neles.
Jozsa e
Deutsch criaram esse algoritmo em
1992 e foi o primeiro a ser comprovado que funciona exponencialmente mais rápido do que qualquer algoritmo clássico projetado para executar a mesma tarefa.
Porém, se você está imaginando
Jozsa e
Deutsch como engenheiros quânticos trabalhando em um laboratório, não poderia estar mais longe da verdade.
Ambos são teóricos, eles usam o formalismo matemático que descreve a mecânica quântica e a ciência da computação teórica para descobrir o que uma combinação dos dois pode alcançar.
É um esforço puramente matemático.
Hoje já é possível testes práticos com computadores quânticos, a IBM tem um novo computador quântico de
53 qubit e é o maior de todos os tempos.
O 14º computador quântico da IBM é o mais poderoso até agora, um modelo com
53 qubits que formam o elemento fundamental de processamento de dados no coração do sistema.
O sistema,
disponível on-line para clientes de computação quântica em outubro de 2019, é um grande avanço em relação à última máquina IBM Q com
20 qubits e deve ajudar a promover o casamento de computadores clássicos com o reino louco da física quântica.
Em um artigo recente divulgado, o
Google revelou que havia construído um computador quântico que resolveu um problema que levaria
10.000 anos para os supercomputadores.
Além de IBM e Google, outras empresas como: Rigetti, Intel e Microsoft investem em computação quântica também.
Agora, as coisas estão prestes a ficar realmente emocionantes.
Valeu, ficamos por aqui. :)
Se tiverem curtido o conteúdo, dêem um joinha 👍 na página do Código Fluente no
Facebook
Link do código fluente no Pinterest
Novamente deixo meus link de afiliados:
Obrigado, até o próxima ;)