Noções básicas sobre a computação quântica

A computação quântica mantém a promessa de resolver alguns dos maiores desafios do nosso planeta - nas áreas de meio ambiente, agricultura, saúde, energia, clima, ciência de materiais e muito mais. Para alguns desses problemas, a computação clássica é cada vez mais desafiada à medida que o tamanho do sistema cresce. Quando projetados para dimensionar, os sistemas quânticos provavelmente terão recursos que excedem os dos supercomputadores mais poderosos de hoje. À medida que a comunidade global de pesquisadores quânticos, cientistas, engenheiros e líderes empresariais colaboram para avançar o ecossistema quântico, esperamos ver o impacto quântico acelerar em todos os setores.

Dica

Se você quiser acelerar sua jornada de computação quântica, marcar Código com o Azure Quantum, um recurso exclusivo do site do Azure Quantum. Aqui, você pode executar exemplos internos Q# ou seus próprios Q# programas, gerar um novo Q# código de seus prompts, abrir e executar seu código no VS Code para a Web com um clique e fazer perguntas ao Copilot sobre computação quântica.

Por que usar computadores quânticos?

A ideia de um computador quântico nasceu da dificuldade de simular sistemas quânticos em um computador clássico. Na anos 1980, Richard Feynman e Yuri Manin sugeriram independentemente que o hardware baseado em fenômenos quânticos poderia ser mais eficiente para a simulação de sistemas quânticos do que computadores convencionais.

Há várias maneiras de entender por que a mecânica quântica é difícil de ser simulada. O mais simples é ver que a questão, em um nível quântico, está em uma infinidade de configurações possíveis (conhecidas como estados).

A computação quântica cresce exponencialmente

Considere um sistema de elétrons em que há $40$ locais possíveis. Portanto, o sistema pode estar em qualquer uma das configurações de $2^{40}$ (já que cada local pode ter ou não um elétron). Armazenar o estado quântico dos elétrons em uma memória de computador convencional exigiria mais de $130$ GB de memória! Se permitirmos que as partículas estejam em qualquer uma das $41$ posições, haveria o dobro de configurações em $2^{41}$ o que, por sua vez, exigiria mais $de 260$ GB de memória para armazenar o estado quântico.

Este jogo de aumento do número de locais não pode ser jogado indefinidamente. Se quisermos armazenar o estado convencionalmente, excederemos rapidamente as capacidades de memória das máquinas mais poderosas do mundo. Com algumas centenas de elétrons, a memória necessária para armazenar o sistema excede o número de partículas no universo; portanto, não há esperança de nossos computadores convencionais simularem a dinâmica quântica delas.

Transformando dificuldade em oportunidade

A observação desse crescimento exponencial nos levou a fazer uma pergunta poderosa: podemos transformar essa dificuldade em uma oportunidade? Especificamente, se a dinâmica quântica teria a dificuldade de simular o que aconteceria se tivéssemos criado um hardware com efeitos quânticos como operações fundamentais? Poderíamos simular sistemas quânticos de partículas interagindo usando uma máquina que explora exatamente as mesmas leis da física? E poderíamos usar essas máquinas para investigar outras tarefas que estão ausentes de partículas quânticas, mas são cruciais para nós? Essas perguntas levaram à gênese da Computação Quântica.

Em 1985, David Deutsch mostrou que um computador quântico poderia simular com eficiência o comportamento de qualquer sistema físico. Essa descoberta foi a primeira indicação de que computadores quânticos poderiam ser usados para resolver problemas intratáveis em computadores clássicos.

Em 1994, Peter Shor descobriu um algoritmo quântico para fatorar inteiros que são executados exponencialmente mais rápido do que o algoritmo clássico mais conhecido. Resolver a fatoração possibilita a capacidade de quebrar muitos de nossos sistemas de criptografia de chave pública subjacentes à segurança do comércio eletrônico atualmente, incluindo a Criptografia de Curva Elíptica e RSA. Essa descoberta despertou um enorme interesse pela computação quântica e levou ao desenvolvimento de algoritmos quânticos para muitos outros problemas.

Desde então, algoritmos de computador quântico rápidos e eficientes foram desenvolvidos para muitas de nossas tarefas clássicas duras: simular sistemas físicos em química, física e ciência de materiais, pesquisar um banco de dados não ordenado, resolver sistemas de equações lineares e aprendizado de máquina.

O que é um qubit?

Assim como os bits são o objeto fundamental das informações na computação clássica, qubits (bits quânticos) são o objeto fundamental das informações na computação quântica.

Um qubit é a unidade básica de informações na computação quântica. Os qubits desempenham um papel semelhante na computação quântica, pois os bits desempenham na computação clássica, mas se comportam de forma muito diferente. Os bits clássicos são binários e podem manter apenas uma posição de $0$ ou $1$, mas os qubits podem conter uma superposição de todos os estados possíveis. Isso significa que um qubit pode estar em um estado de $0$, $1$ ou qualquer superposição quântica dos dois. Há infinitas superposições possíveis de $0$ e $1$, e cada uma delas é um estado qubit válido.

Na computação quântica, as informações são codificadas na superposição dos estados $0$ e $1$. Por exemplo, com $8$ bits, poderíamos codificar $256$ valores diferentes, mas precisamos escolher um deles para codificá-lo. Com $8$ qubits, poderíamos codificar os $256$ valores ao mesmo tempo. Esse comportamento ocorre porque um qubit pode estar em uma superposição de todos os estados possíveis.

Para obter mais informações, consulte O qubit na computação quântica.

Como criar um computador quântico

Um computador quântico é um computador que aproveita os fenômenos mecânicos quânticos. Os computadores quânticos usam estados quânticos de matéria para armazenar e calcular informações. Eles podem &citar; cotação do programa&; interferência quântica para fazer coisas mais rápidas ou melhores do que computadores clássicos.

Ao criar um computador quântico, precisamos pensar em como criar os qubits e como armazená-los. Também precisamos pensar em como manipulá-los e como ler os resultados de nossos cálculos.

As tecnologias qubit mais usadas são qubits trapped-ion, qubits supercondutores e qubits topológicos. Para alguns métodos de armazenamento de qubits, a unidade que abriga os qubits é mantida a uma temperatura próxima de zero absoluto para maximizar sua coerência e reduzir a interferência. Outros tipos de hospedagem de qubits usam uma câmara de vácuo para ajudar a minimizar as vibrações e estabilizar os qubits. Os sinais podem ser enviados para os qubits usando uma variedade de métodos, incluindo microondas, laser e tensão.

Os cinco critérios para um computador quântico

Um bom computador quântico deve ter estes cinco recursos:

  1. Escalável: Ele pode ter muitos qubits.
  2. Inicializável: Ele pode definir os qubits para um estado específico (geralmente o $estado 0$ ).
  3. Resiliente: Ele pode manter os qubits no estado de superposição por um longo tempo.
  4. Universal: Um computador quântico não precisa executar todas as operações possíveis, apenas um conjunto de operações chamado conjunto universal. Um conjunto de operações quânticas universais é tal que qualquer outra operação pode ser decomposta em uma sequência delas.
  5. Confiável: Ele pode medir os qubits com precisão.

Esses cinco critérios geralmente são conhecidos como os critérios de Di Vincenzo para computação quântica.

Construir dispositivos que atendam a esses cinco critérios é um dos desafios de engenharia mais complicados já enfrentados pela humanidade. A Microsoft está em parceria com alguns dos melhores fabricantes de computadores quânticos em todo o mundo para fornecer acesso às soluções de computação quântica mais recentes por meio do Azure Quantum. Para obter mais informações, consulte a lista completa de provedores do Azure Quantum.

Para que a computação quântica e o Azure Quantum podem ser usados?

Um computador quântico não é um supercomputador que pode fazer tudo mais rapidamente. Na verdade, um dos objetivos da pesquisa de computação quântica é estudar quais problemas podem ser resolvidos por um computador quântico mais rápido do que um computador clássico e quão grande a aceleração pode ser.

Os computadores quânticos se dão excepcionalmente bem com problemas que exigem o cálculo de um grande número de combinações possíveis. Esses tipos de problemas podem ser encontrados em muitas áreas, como simulação quântica, criptografia, aprendizado de máquina quântico e problemas de pesquisa.

Para obter as informações mais recentes sobre a pesquisa de computação quântica da Microsoft, confira a página de Computação Quântica do Microsoft Research.

Estimativa de recursos

Os computadores quânticos disponíveis hoje estão habilitando experimentos e pesquisas interessantes, mas não conseguem acelerar os cálculos necessários para resolver problemas do mundo real. Enquanto o setor aguarda os avanços de hardware, os inovadores de software quântico estão ansiosos para progredir e se preparar para um futuro quântico. Criar algoritmos hoje que eventualmente serão executados nos computadores quânticos dimensionados tolerantes a falhas de amanhã é uma tarefa assustadora. Esses inovadores enfrentam perguntas como quais recursos de hardware são necessários? Quantos qubits físicos e lógicos são necessários e que tipo? Quanto tempo é o tempo de execução?

Você pode usar o Avaliador de Recursos do Azure Quantum para ajudar a responder a essas perguntas. Como resultado, você poderá refinar seus algoritmos e criar soluções que aproveitam computadores quânticos dimensionados quando eles ficam disponíveis.

Para começar, consulte Executar sua primeira estimativa de recurso.

Saiba mais sobre como avaliar os requisitos para dimensionar a vantagem quântica prática usando o Avaliador de Recursos do Azure Quantum em arXiv:2211.07629.

Simulação quântica

A mecânica quântica é a cotação subjacente &; aspas do sistema&operacional; do nosso universo. Ela descreve como se comportam os elementos constitutivos essenciais da natureza. Os comportamentos da natureza, como reações químicas, reações biológicas e formações de material, geralmente envolvem interações quânticas de muitos corpos. Para simular sistemas mecânicos quânticos intrinsecamente, como moléculas, a computação quântica é promissora, pois qubits (bits quânticos) podem ser usados para representar os estados naturais em questão. Exemplos de sistemas quânticos que podemos modelar incluem fotossíntese, supercondutividade e formações moleculares complexas.

Os Elementos Quânticos do Azure são criados para acelerar a descoberta científica. Reinvente sua produtividade de pesquisa e desenvolvimento com fluxos de trabalho de simulação otimizados para dimensionamento em clusters de HPC (Computação High-Performance do Azure), computação acelerada por IA, raciocínio aumentado usando IA, integração com ferramentas quânticas para começar a experimentar hardware quântico existente e acesso no futuro ao supercomputador quântico da Microsoft. Para obter mais informações, confira Desbloquear o poder do Azure para o Molecular Dynamics.

Aumentos de velocidade quânticos

Uma das metas da pesquisa de computação quântica é analisar quais problemas podem ser resolvidos mais rápido por um computador quântico do que por um computador clássico e de quanto pode ser o aumento na velocidade. Dois exemplos conhecidos são o algoritmo de Grover e o algoritmo de Shor, que produzem uma velocidade polinomial e exponencial, respectivamente, sobre seus equivalentes clássicos.

O algoritmo de Shor em execução em um computador quântico escalonável poderia interromper esquemas de criptografia clássicos, como o esquema Rivest–Shamir–Adleman (RSA), que é amplamente usado no comércio eletrônico para a transmissão segura de dados. Esse esquema é baseado na dificuldade prática de fatorar números primos usando algoritmos clássicos. A criptografia quântica promete a segurança das informações aproveitando a física básica em vez de suposições de complexidade.

Como o algoritmo de Shor para fatoração, o problema de mudança oculta é uma fonte natural de problemas para os quais um computador quântico tem uma vantagem exponencial sobre os algoritmos clássicos comuns. Isso pode ajudar a resolver problemas de desconvolução e permitir que encontremos padrões com eficiência em conjuntos de dados complexos. O que acontece é que um computador quântico pode, em princípio, computar convoluções em alta velocidade, o que, por sua vez, se baseia na capacidade do computador quântico de calcular transformações Fourier de forma extremamente rápida. Na galeria de exemplos do workspace do Azure Quantum, você encontrará um exemplo de notebook Jupyter de deslocamentos ocultos (é necessária uma conta do Azure).

O algoritmo de Glover acelera drasticamente a solução para pesquisas de dados não estruturados, executando a pesquisa em menos etapas do que qualquer algoritmo clássico. De fato, qualquer problema que permita que você marcar se um determinado valor $x$ é uma solução válida (uma &aspa; Sim ou nenhum problema&entre aspas;) pode ser formulado em termos do problema de pesquisa. Estes são alguns exemplos:

  • Problema de satisfabilidade booliana: o conjunto de valores $boolianos x$ uma interpretação (uma atribuição de valores a variáveis) que satisfaz a fórmula booliana fornecida?
  • Problema do vendedor viajante: x $$ descreve o loop mais curto possível que conecta todas as cidades?
  • Problema de pesquisa de banco de dados: a tabela de banco de dados contém um registro $x$?
  • Problema de fatorização de inteiro: o número $fixo N$ é divisível pelo número $x$?

Para obter um exame mais aprofundado do algoritmo de Grover, consulte o tutorial Implementar o algoritmo de Grover em Q#.

Como a computação quântica resolve problemas?

Os computadores quânticos são dispositivos mecânicos quânticos controláveis que usam as propriedades da física quântica para realizar cálculos. Para algumas tarefas computacionais, a computação quântica fornece aumentos de velocidade exponenciais. Eles são possíveis graças a três fenômenos da mecânica quântica: superposição, interferência e emaranhamento.

Superposição

Imagine que você esteja fazendo exercícios físicos na sua sala de estar. Você gira todo o corpo para a esquerda e, em seguida, para a direita. Agora, você gira para a esquerda e para a direita ao mesmo tempo. Você não pode fazer isso (sem se dividir em dois, pelo menos). Obviamente, você não pode estar nesses dois estados ao mesmo tempo; não é possível estar voltado para a esquerda e para a direita ao mesmo tempo.

No entanto, se você for uma partícula quântica, poderá haver uma certa probabilidade de estar voltado para a esquerda E uma certa probabilidade de estar voltado para a direita, devido a um fenômeno conhecido como superposição (também conhecido como coerência).

Ao contrário das partículas clássicas, se dois estados A e B forem estados quânticos válidos de uma partícula quântica, qualquer combinação linear dos estados também será um estado quântico válido: $\text{estado}=\alpha qubit A + \beta B$.$$$$ Essa combinação linear dos estados $quânticos A$ e $B$ é chamada de superposição. Aqui, $\alpha$ e $\beta$ são as amplitudes de probabilidade de $A$ e $B$, respectivamente, de modo que $|\alpha|^{{2} + |\beta|^{2}= 1$.

Somente sistemas quânticos, como circuitos supercondutores, elétrons ou íons, podem existir nos estados de sobreposição que possibilitam o poder da computação quântica. Uma partícula quântica como um elétron tem sua própria propriedade "voltada para a esquerda ou para a direita", ou seja, girar, conhecida como para cima ou para baixo, de modo que o estado quântico de um elétron é uma sobreposição de &aspas; girar aspas&; e &aspas; spin down".

Em geral, e para tornar isso mais parecido com a computação binária clássica, se um sistema quântico puder estar em dois estados quânticos, esses estados serão referidos como estado 0 e estado 1.

Qubits e probabilidade

Os computadores clássicos armazenam e processam informações em bits, que podem ter um estado igual a 1 ou 0, mas nunca os dois. O equivalente na computação quântica é o qubit. Um qubit é qualquer sistema quântico que possa estar em uma sobreposição de dois estados quânticos, 0 e 1. Cada estado quântico possível tem uma amplitude de probabilidade associada. Somente depois de medir um qubit, seu estado é recolhido para o estado 0 ou 1, dependendo da probabilidade associada. Portanto, um dos possíveis estados é obtido com uma determinada probabilidade.

A probabilidade de o qubit sofrer um colapso para uma forma ou outra é determinada pela interferência quântica. A interferência quântica afeta o estado de um qubit para influenciar a probabilidade de determinado resultado durante a medida. Esse estado probabilístico é o aspecto no qual se destaca a eficiência da computação quântica.

Por exemplo, com dois bits em um computador clássico, cada bit pode armazenar 1 ou 0 e, portanto, juntos, você pode armazenar quatro valores possíveis, 00, 01, 10 e 11, mas apenas um deles de cada vez. Com dois qubits em superposição, no entanto, cada qubit pode ser 1 ou 0 ou ambos, de modo que você possa representar os mesmos quatro valores simultaneamente. Com três qubits, você pode representar oito valores; com quatro qubits, você pode representar 16 valores etc.

Para obter mais informações, consulte O qubit na computação quântica.

Emaranhamento

Possivelmente, o fenômeno mais interessante da mecânica quântica é a capacidade de dois ou mais sistemas quânticos se emaranharem. O emaranhamento é uma correlação quântica entre sistemas quânticos. Quando qubits se tornam emaranhados, eles formam um sistema global, de modo que o estado quântico de subsistemas individuais não pode ser descrito independentemente. Dois sistemas são emaranhados quando o estado do sistema global não pode ser gravado como uma combinação do estado dos subsistemas, em particular, dois sistemas são emaranhados quando o estado do sistema global não pode ser gravado como o produto tensor dos estados dos subsistemas. Um estado do produto não contém correlações.

Sistemas quânticos emaranhados mantêm essa correlação mesmo quando separados em grandes distâncias. Isso significa que qualquer operação ou processo que você aplicar a um subsistema correlacionará aos outros subsistemas também. Como há uma correlação entre os qubits emaranhados, a medição do estado de um qubit fornece informações sobre o estado do outro qubit; essa propriedade específica é muito útil na computação quântica.

Observação

Nem toda correlação entre medições de dois qubits significa que eles estão emaranhados. Além das correlações quânticas, também existem correlações clássicas. A diferença entre correlações clássicas e quânticas é sutil, mas é essencial para a aceleração fornecida por computadores quânticos. Para obter mais informações, consulte Noções básicas sobre correlações clássicas.

Se você quiser saber mais, confira o tutorial Explorando o emaranhamento quântico com Q#.

Próximas etapas