Computação quântica
Um computador quântico é um computador real ou teórico que explora fenômenos quânticos como sobreposição e entrelaçamento de maneira essencial. Acredita-se amplamente que um computador quântico poderia realizar alguns cálculos exponencialmente mais rápido do que qualquer computador clássico. Por exemplo, um computador quântico de grande escala poderia quebrar alguns esquemas de encriptação amplamente utilizados e ajudar físicos na realização de simulações físicas. No entanto, as implementações atuais de hardware de computação quântica são em grande parte experimentais e adequadas apenas para tarefas especializadas.
Imagem: Governo do Estado de São Paulo · BY · Openverse
Na computação clássica o computador é baseado na arquitetura de Von Neumann, que faz uma distinção clara entre elementos de processamento e armazenamento de dados, isto é, possui processador (CPU) e memória (RAM) destacados por um barramento de comunicação, sendo o seu processamento inerentemente sequencial. As operações são realizadas sobre bits, que só podem existir em um de dois estados definidos: 0 ou 1. Essa arquitetura tem sido a base de toda a revolução digital, permitindo avanços extraordinários ao longo de décadas. Entretanto os computadores atuais possuem limitações fundamentais, como por exemplo na área de Inteligência Artificial (IA), onde não existem computadores com potência ou velocidade de processamento suficiente para suportar uma IA avançada, especialmente em tarefas de otimização combinatória e amostragem de distribuições de probabilidade complexas. Problemas que envolvem um grande número de variáveis e interações, como a simulação precisa de moléculas para o desenvolvimento de novos fármacos ou materiais, rapidamente se tornam impossíveis para máquinas clássicas devido à explosão exponencial do espaço de estados a ser explorado. Dessa forma surgiu a necessidade da criação de um computador alternativo dos usuais que resolvesse problemas de IA, ou outros como a fatoração em primos de números muito grandes (que ameaça a criptografia moderna), logaritmos discretos e, crucialmente, a simulação de problemas da própria Física Quântica, uma tarefa para a qual os computadores clássicos são inerentemente inadequados.
Imagem: Governo do Estado de São Paulo · BY · Openverse
A pesquisa para o desenvolvimento da computação quântica iniciou-se já na década de 50, quando cientistas começaram a pensar em aplicar as leis da física e da mecânica quântica nos computadores. Contudo, as ideias eram ainda embrionárias e dispersas. O campo começou a tomar forma nas décadas seguintes, culminando em propostas formais e avanços teóricos que estabeleceram as bases para a área como a conhecemos hoje. Esta linha do tempo mostra os principais marcos:
Imagem: Governo do Estado de São Paulo · BY · Openverse
A mecânica quântica é considerada a mais bem sucedida teoria física. Pois desde a sua criação no início do século XX até os dias atuais, ela tem sido aplicada com precisão inigualável em diversos ramos, desde a física de partículas, atômica e molecular até a astrofísica e matéria condensada. A computação quântica se baseia em três de seus mais contraintuitivos, porém poderosos, fenômenos: superposição, emaranhamento e interferência.
Qubits e Superposição
Na computação clássica, a unidade fundamental de informação é o bit, que pode assumir o valor 0 ou 1. Na computação quântica a unidade de informação básica é o Bit quântico ou q-bit (quantum bit). O fato da computação quântica ser tão poderosa está no fato de que além de assumir '0' ou '1' como na computação clássica, um qubit pode existir em uma superposição de ambos os estados. Isso significa que ele pode ser uma combinação linear dos estados '0' e '1' ao mesmo tempo. Parece estranho algo assumir os dois estados diferentes ao mesmo tempo, mas a experiência mental do Gato de Schrödinger, na qual um gato está simultaneamente vivo e morto até ser observado, pode dar um sentido intuitivo à situação.
Emaranhamento Quântico
O emaranhamento é talvez o fenômeno mais misterioso e poderoso da mecânica quântica. Quando dois ou mais qubits estão emaranhados, seus destinos se tornam intrinsecamente ligados, não importando a distância que os separe. O estado de um qubit emaranhado não pode ser descrito independentemente do estado do outro. Se medirmos o estado de um qubit e o encontrarmos como '0', sabemos instantaneamente que o estado do outro será '0' (ou '1', dependendo de como foram emaranhados), e vice-versa. Albert Einstein famosamente descreveu isso como "ação fantasmagórica à distância". No contexto da computação, o emaranhamento é um recurso crucial que permite correlações complexas entre qubits, sendo essencial para a execução de algoritmos quânticos como o de Shor e para o teletransporte quântico.
Interferência Quântica
Assim como ondas de luz ou som podem interferir construtiva (reforçando-se) ou destrutivamente (cancelando-se), os estados quânticos também podem exibir interferência. Os algoritmos quânticos são projetados de forma inteligente para manipular a fase dos estados em superposição, de modo que os caminhos computacionais que levam às respostas erradas sofram interferência destrutiva e se anulem, enquanto os caminhos que levam à resposta correta sofram interferência construtiva e sejam amplificados. No final do cálculo, a medição tem uma probabilidade muito alta de colapsar para o estado que representa a solução correta.
Representação Matemática
O q-bit é descrito por um vetor de estado em um sistema quântico de dois níveis, o qual é matematicamente equivalente a um vetor em um espaço vetorial complexo de duas dimensões, conhecido como espaço de Hilbert. Usa-se a notação bra-ket de Paul Dirac para representá-los: Esses dois estados, | 0 ⟩ {\displaystyle |0\rangle } e | 1 ⟩ {\displaystyle |1\rangle } , formam uma base ortonormal para este espaço, chamada de base computacional. Assim, o estado geral de um q-bit, | ψ ⟩ {\displaystyle |\psi \rangle } , pode ser representado como uma superposição linear desses estados base: onde α (alfa) e β (beta) são coeficientes chamados de amplitudes de probabilidade. Eles são números complexos e a regra da mecânica quântica dita que a soma dos quadrados de seus módulos deve ser igual a 1, o que representa a certeza de que o qubit, ao ser medido, será encontrado em um dos dois estados. Matematicamente, isso é expresso como | α | 2 + | β | 2 = 1 {\displaystyle |\alpha |^{2}+|\beta |^{2}=1} . O valor de | α | 2 {\displaystyle |\alpha |^{2}} representa a probabilidade de se medir o estado | 0 ⟩ {\displaystyle |0\rangle } , e | β | 2 {\displaystyle |\beta |^{2}} é a probabilidade de se medir o estado | 1 ⟩ {\displaystyle |1\rangle } .
Imagem: Governo do Estado de São Paulo · BY · Openverse
Construir e controlar um computador quântico é um dos maiores desafios da engenharia e da física experimental moderna. Os qubits são extremamente frágeis e suscetíveis à decoerência, que é a perda de suas propriedades quânticas devido à interação com o ambiente (ruído, variações de temperatura, campos eletromagnéticos, etc.). Para a manipulação dos estados quânticos, mantendo a coerência pelo maior tempo possível, utiliza-se principalmente técnicas ópticas (lasers) e de micro-ondas. Estes dispositivos constituem-se as portas lógicas quânticas. As principais abordagens físicas para a criação de qubits incluem:
Tecnologias de Qubits
Para armazenar os q-bits, além das técnicas já mencionadas, como as armadilhas de íons (íon trap) e armadilhas de átomos neutros (neutral atom trap), outras tecnologias estão em desenvolvimento. Outra classe de processamento de informação quântica é baseada na ressonância magnética nuclear (RMN). Neste caso a informação quântica é armazenada nos spins nucleares dos átomos em moléculas e as portas lógicas manipulam essa informação usando a radiação eletromagnética. Um pósitron ou elétron podem ter um spin 'para cima', 'para baixo' e os dois ao mesmo tempo, representando os estados do qubit. Os momentos magnéticos nucleares fazem um movimento natural de precessão na presença de campos magnéticos. Os estados quânticos dos núcleos podem ser manipulados irradiando os núcleos com pulsos de rádio frequência sintonizados na frequência de precessão destes.
Imagem: Governo do Estado de São Paulo · BY · Openverse
Assim como na computação clássica, na computação quântica utiliza-se circuitos para descrever uma sequência de operações. Um circuito quântico é um modelo de computação que descreve um algoritmo quântico passo a passo. Os componentes de um diagrama de circuito quântico são:
Portas Quânticas Fundamentais
Na computação clássica, é possível realizar qualquer operação lógica utilizando somente portas NAND. O mesmo princípio de universalidade existe em circuitos quânticos. Um conjunto de portas quânticas é dito universal se qualquer operação quântica pode ser aproximada com uma sequência finita dessas portas. Um conjunto universal comum inclui as portas: Hadamard (H), CNOT, Fase (S) e π / 8 {\displaystyle \pi /8} (T). Exemplos de portas quânticas: No caso clássico, a porta NOT troca o 1 por 0 e vice-versa. A generalização para o caso quântico é dada por um operador X {\displaystyle X} que satisfaz X | 0 ⟩ = | 1 ⟩ {\displaystyle X|0\rangle =|1\rangle } e X | 1 ⟩ = | 0 ⟩ . {\displaystyle X|1\rangle =|0\rangle .} Com isso, verifica-se facilmente que a representação matricial do operador X {\displaystyle X} é dada por:
Imagem: Governo do Estado de São Paulo · BY · Openverse
No mundo da computação quântica, estamos sempre buscando maneiras de tornar nossos computadores mais rápidos e eficientes para resolver problemas específicos. Existem diferentes tipos de programas, chamados de algoritmos, que podem ajudar nisso. Alguns desses algoritmos, que exploram as propriedades quânticas, funcionam de maneira diferente e podem oferecer vantagens exponenciais ou polinomiais sobre os programas normais que usamos em nossos computadores todos os dias.
Pilares dos Algoritmos Quânticos
O progresso em achar algoritmos quânticos normalmente foca no modelo de circuito quântico, apesar de exceções como o algoritmo adiabático quântico existirem. Algoritmos quânticos podem ser grosseiramente categorizados pela quantidade de aumento na velocidade de processamento alcançada sobre o correspondente algoritmo clássico.
Algoritmo de Shor
O algoritmo quântico mais famoso, desenvolvido por Peter Shor em 1994, resolve o problema de fatoração de números inteiros em tempo polinomial, o que é exponencialmente mais rápido que os melhores algoritmos clássicos conhecidos. O problema da fatoração é encontrar os fatores primos de um número N. Classicamente, a dificuldade deste problema aumenta exponencialmente com o número de dígitos de N. O algoritmo de Shor utiliza a Transformada Quântica de Fourier para encontrar o período de uma função, o que pode ser usado para deduzir os fatores de N. Isso tem implicações profundas para a criptografia de chave pública, já que muitos sistemas de segurança atuais, como o RSA, dependem da dificuldade computacional de fatorar grandes números.
Algoritmo de Grover
Desenvolvido por Lov Grover em 1996, este algoritmo fornece uma aceleração quadrática para problemas de busca em um banco de dados não estruturado. Imagine procurar por um nome específico em uma lista telefônica que não está em ordem alfabética. Enquanto um algoritmo clássico exigiria, em média, O(N/2) e no pior caso O(N) operações para encontrar um item em uma lista de N itens, o algoritmo de Grover pode fazê-lo em aproximadamente O(√N) operações. Embora a aceleração seja "apenas" quadrática e não exponencial, ela é aplicável a uma vasta gama de problemas de otimização e busca.
Algoritmo Adiabático e Computação Quântica Adiabática
O algoritmo quântico adiabático funciona com base no teorema adiabático da física, que afirma que se um sistema quântico começa em seu estado de mais baixa energia (estado fundamental) e a sua Hamiltoniana é alterada de forma suficientemente lenta, ele permanecerá em seu estado fundamental ao longo da evolução. Os computadores quânticos adiabáticos, como os da D-Wave, são relativamente mais simples de serem produzidos, mas sua aplicação também é bem mais limitada, sendo projetados especificamente para problemas de otimização. Um dos exemplos de usos desses computadores é ao calcular rotas ótimas em logística. Primeiro, é encontrada uma Hamiltoniana final (potencialmente complicada) cujo estado fundamental descreve a solução do problema de interesse. Em seguida, o sistema é preparado com uma Hamiltoniana inicial simples, cujo estado fundamental é fácil de criar. Por fim, a Hamiltoniana simples é evoluída adiabaticamente (lentamente) para a Hamiltoniana complicada desejada. Pelo teorema adiabático, o sistema permanece no estado fundamental, então, no final, o estado do sistema descreve a solução do problema. Foi demonstrado que a computação quântica adiabática é polinomialmente equivalente à computação quântica convencional no modelo de circuito, embora as implementações práticas tenham focos diferentes.
Imagem: Governo do Estado de São Paulo · BY · Openverse
Os engenheiros de computação geralmente descrevem a operação de um computador moderno em termos de eletrodinâmica clássica. Nesses computadores "clássicos", alguns componentes (como semicondutores e geradores de números aleatórios) podem depender do comportamento quântico; no entanto, como não estão isolados do seu ambiente, qualquer informação quântica eventualmente decoere rapidamente. Embora os programadores possam depender da teoria das probabilidades ao projetar um algoritmo randomizado, noções da mecânica quântica, como sobreposição e interferência de ondas, são amplamente irrelevantes na análise de programas. O termo "clássico" em computação clássica refere-se, portanto, ao modelo computacional, não ao fato de a física microscópica do hardware ser, em última análise, quântica ou não. Um computador digital convencional pode ser descrito por estados e regras de transição clássicos: a memória armazena bits, enquanto os elementos lógicos transformam uma configuração de bits em outra. Este comportamento computacional não está vinculado à eletrônica e pode ser abstraído através da ideia de uma máquina de Turing, um dispositivo mecânico que realiza transformações determinísticas num estado finito. Em princípio, as mesmas regras de transição clássicas podem ser implementadas por algum dispositivo mecânico completamente clássico, possivelmente com uma desaceleração fixa no tempo físico. Se uma computação clássica utiliza aleatoriedade, isto pode ser modelado como acesso a bits clássicos aleatórios, em vez de como informação quântica coerente. Um computador quântico, por outro lado, usa estados quânticos coerentes, de modo que a sobreposição, a fase relativa e a interferência são parte da própria computação, não tendo contraparte clássica.
Informação quântica
Assim como o bit é o conceito básico da teoria da informação clássica, o qubit é a unidade fundamental da informação quântica. O mesmo termo qubit é usado para se referir a um modelo matemático abstrato e a qualquer sistema físico que seja representado por esse modelo. Um bit clássico, por definição, existe em um de dois estados físicos, que podem ser denotados como 0 e 1. Um qubit também é descrito por um estado, e dois estados, frequentemente escritos como | 0 ⟩ {\displaystyle |0\rangle } e | 1 ⟩ {\displaystyle |1\rangle } , servem como as contrapartes quânticas dos estados clássicos 0 e 1. No entanto, os estados quânticos | 0 ⟩ {\displaystyle |0\rangle } e | 1 ⟩ {\displaystyle |1\rangle } pertencem a um espaço vetorial, o que significa que podem ser multiplicados por constantes e somados, e o resultado é novamente um estado quântico válido. Tal combinação é conhecida como uma sobreposição de | 0 ⟩ {\displaystyle |0\rangle } e | 1 ⟩ {\displaystyle |1\rangle } .
Operadores unitários
O estado desta memória quântica de um qubit pode ser manipulado aplicando portas lógicas quânticas, de forma análoga a como a memória clássica pode ser manipulada com portas lógicas clássicas. Uma porta importante tanto para a computação clássica quanto para a quântica é a porta NOT, que pode ser representada por uma matriz X := ( 0 1 1 0 ) . {\displaystyle X:={\begin{pmatrix}0&1\\1&0\end{pmatrix}}.} Matematicamente, a aplicação de tal porta lógica a um vetor de estado quântico é modelada com multiplicação de matrizes. Assim A matemática das portas de um único qubit pode ser estendida para operar em memórias quânticas de múltiplos qubits de duas maneiras importantes. Uma maneira é simplesmente selecionar um qubit e aplicar essa porta ao qubit alvo, deixando o restante da memória inalterado. Outra maneira é aplicar a porta ao seu alvo apenas se outra parte da memória estiver num estado desejado. Essas duas escolhas podem ser ilustradas usando outro exemplo. Os possíveis estados de uma memória quântica de dois qubits são
Imagem: Governo do Estado de São Paulo · BY · Openverse
A computação quântica ainda está em sua infância, mas tem o potencial de revolucionar diversos campos:
Imagem: Governo do Estado de São Paulo · BY · Openverse
Apesar do enorme potencial, a estrada para a computação quântica em larga escala e tolerante a falhas é longa e repleta de desafios significativos:
Imagem: Governo do Estado de São Paulo · BY · Openverse
Atualmente estamos na era dos computadores quânticos NISQ (Noisy Intermediate-Scale Quantum), com máquinas contendo de 50 a alguns milhares de qubits ruidosos e sem correção de erros. O foco principal da pesquisa é encontrar algoritmos que possam oferecer uma vantagem quântica em problemas específicos, mesmo com as limitações do hardware atual. As principais iniciativas incluem:


