Computação Quântica - Um guia sem fórmulas malucas, só conversa
Se você está lendo esse artigo é porque você, em algum momento, já ouviu falar sobre Computação Quântica (CQ). Mas você sabe exatamente o que ela é e o que ela faz?
Bom, talvez você tenha escutado (ou não) sobre: Superposição, Entrelaçamento e/ou Teletransporte Quântico e isso pareceu muito fantástico. Se não ouviu, não se preocupe: eu posso dizer o que é.
Embora o mundo quântico possa ser completamente fora do que nós, meros humanos, possamos entender, eu estou aqui para tentar te ajudar a entender, e compreender, uma pequena área que é a Computação Quântica, que chamarei, a partir de agora apenas de CQ.
Esse artigo é para os devs e pessoas que estão curiosas para entender o que de fato é a computação quântica e como ela vai transformar a nossa vida.
Oi, meu nome é Paulo, sou desenvolvedor fullstack com mais de 15 anos de experiência e atualmente estou fazendo Pós Graduação em Computação Quântica.
Minha jornada dentro da CQ começou há alguns anos atrás quando descobri sobre o computador quântico da IBM e o framework utilizado para trabalhar com ele, o QISKIT (Quantum Information Software Kit). Ele nada mais é do que um kit de desenvolvimento de software (SDK) de código aberto para computação quântica, desenvolvido pela IBM. Ele fornece ferramentas e bibliotecas para construir, simular e executar programas quânticos, tanto em simuladores como em hardware quântico real.
No início existia uma enorme empolgação de minha parte, e comecei a estudar e tentar entender tudo sobre o assunto. Até que me deparei com uma barreira quase que intransponível para mim.: a MATEMÁTICA.
Quem me conhece sabe que nunca fui um exímio aluno na escola. Hoje entendo que grande parte da minha dificuldade na época se dava pelo TDAH, e pela falta de entendimento dos professores em saber lidar, apropriadamente, com alunos com esse tipo de transtorno.. Então, a matemática da CQ se tornou minha maior “inimiga”.
Na época, eu deixei de lado e resolvi “não mexer nesse vespeiro”.
Mas, me tornei adulto, marido, pai e fui fortemente apoiado e estimulado pela minha esposa, a fazer as “pazes” com a matemática, a buscar uma área que eu gostasse e, assim pudesse fazer uma especialização.
Como todo “bom” TDAH, sempre tive vários focos e pouca profundidade. Mas consegui encontrar focos importantes para mim e, daí fazer imersões. São eles: Inteligência Artificial, Cibersegurança e Computação Quântica. Após eu conseguir definir isso, eu iniciei a busca de uma forma de utilizar meus três focos e reconstruir minha carreira.
A partir daí, decidi começar com a CQ como base para utilização nas áreas de IA e Cibersegurança.
Agora que você sabe um pouco sobre quem sou e como cheguei até esse ponto, vamos para a explicação de fato.
Chegamos num momento onde temos que dividir a computação clássica da quântica.
Na computação clássica nós trabalhamos com valores binários (0 e 1). São os famosos “bits”.. Esses bits passam por portas lógicas (AND, NOT, OR, XOR) para fazer o processamento desses valores e com isso “construir” o computador que conhecemos hoje. Como você deve ter entendido, um bit só pode assumir um dos dois valores. Ou ele é 0 ou ele é 1. Tudo bem até aqui? :)
Já na computação quântica nós vamos chamar os nossos bits de qubits (bits quânticos) e as nossas portas lógicas de portas quânticas (isso mesmo, sem muita criatividade).
Mas diferente do bit clássico que assume apenas 0 ou 1, um qubit pode ser 0, 1 ou 0 e 1 ao mesmo tempo.
Podemos usar como analogia o jogo de “cara ou coroa”. Quando você joga a moeda para cima, você não consegue determinar se é cara ou coroa, então podemos dizer que ela está em um estado quântico onde é cara e coroa ao mesmo tempo. Nós só vamos poder descobrir qual o resultado quando pegarmos a moeda na mão e revelarmos a moeda. Isso irá nos mostrar o resultado.
Quando fazemos isso com um qubit, nós dizemos que foi feita a medição desse qubit, mas com isso nós o colapsamos para o valor (0 ou 1) e a medição retorna apenas 1 dos valores. Importante realçar que, o valor desse qubit não irá alterar a menos que ele sofra uma nova transformação. É como se uma das faces da moeda “deixasse de existir”, mas ao jogar a moeda pra cima ela voltaria como uma das possibilidades. Esse efeito que acabei de descrever nós chamamos de Superposição, onde os dois valores têm chances reais de serem medidos, 50% cada.
Entrelaçamento e Teletransporte Quântico estão correlacionados.
Entrelaçamento significa que dois qubits estão de alguma forma conectados onde o estado de um é refletido no outro, bem como um espelho. Se um está no estado 0 o outro também está no estado 0. E assim, como quando nós fazemos a medição de um qubit e ele colapsa naquele valor, quando fazemos a medição de um dos dois (ou mais) qubits que estão entrelaçados todos eles colapsam/congelam para o mesmo valor. Ou seja, eles assumem valor/estado em que foi feita a medição. Fazendo uma analogia com a Marvel, podemos pegar como exemplo Bruce Banner e Hulk. Quando os dois começam a coabitar o mesmo corpo e a mente de Banner continua “acordada” no corpo de Hulk. Podemos dizer que eles estão entrelaçados.
Já sobre o Teletransporte Quântico, nós precisamos entender que os qubits entrelaçados não ficam conectados por um fio. Eles podem estar em diferentes pontos do universo e quando o estado de um é alterado, automaticamente o outro assume o mesmo estado.
Até aqui, parece tudo meio mágico ou “doido”, para você? Pois saiba, que é aí onde entra a CQ. Então, como ela muda o jogo?
Quando temos um problema dentro da computação clássica, nós precisamos testar todas as possibilidades uma a uma. Já na computação quântica nós conseguimos testar todas as possibilidades ao mesmo tempo. Fazendo novamente a analogia a Marcel, você pode imaginar um computador quântico como o Dr. Estranho prevendo todas as possibilidades para derrotar o Thanos em Vingadores: Guerra Infinita. Ahh..agora ficou mais fácil de novo, hein? Sigamos…
A computação quântica NÃO VAI substituir o dia a dia do de Fullstack ou Backend nos próximos anos, mas ela, sem sombra de dúvidas, se tornará uma ferramenta auxiliar e poderosa para resolver problemas extremamente complexos que o backend sozinho não consegue resolver bem.
Você talvez nunca precise escrever um circuito quântico no seu trabalho diário. Mas você vai usar os resultados dele.
Vai consumir uma API que usou Grover, ou uma análise de risco feita com QAOA (Quantum Approximate Optimization Algorithm - em português “Algoritmo de Otimização Quântica Aproximada”) ou uma recomendação que veio de um Kernel quântico.
E quando isso acontecer, você vai querer entender o que está acontecendo por trás.
Inicialmente as profissões que mais vão sentir esse impacto são:
Fintechs: precifiação de ativos, risco, carteira ótima
Logística: rotas e fluos complexos
IA/ML: otimização de modelos e kernels
Cibersegurança: novos modelos de chave, aleatoriedade
Bio/healthtech: descoberta de fármacos e simulações
Esse campo ainda precisa amadurecer e ele já está amadurecendo. Ainda nos encontramos em fase de laboratório, pesquisa e validação de conceitos. Por isso as empresas precisam de PhDs e pesquisadores, porque muitos problemas ainda exigem conhecimento de física e matemática avançada e não existem, ainda, ferramentas de alto nível consolidadas.
Mas o futuro é dos devs fluentes em frameworks quânticos, que saibam integrar o mundo clássico ao quântico. Algumas startups já começaram a pedir, para algumas vagas, conhecimento básico de Qiskit ou Pennylane.
Se você dominar Qiskit com mentalidade de produto, você terá espaço e um diferencial que pouquíssimos no mercado vão ter.
Se você acha isso improvável, lembre-se de como era a IA em 2010. Toda vaga exigia PhD em redes neurais. Já hoje qualquer dev que tenha conhecimento em PyTorch e Hugging Face já entra em produção. E com a CQ não vai ser diferente. A cada versão Qiskit está mais acessível, surgem ferramentas como PennyLane, TensorFlow Quantum, AWS Braket, que abstraem a física. Em breve podemos ter QaaS (Quantum as Service) com SDKs de alto nível.
Espero que você tenha compreendido até aqui o que é a computação quântica e como ela vai impactar a nossa vida num futuro muito próximo. E se você quiser entender mais sobre alguns termos que apresentei acima (Grover, QAOA, Kernel, Pennylane e outros), é só ficar atento que nos próximos artigos eu vou explicar eles e vamos criar o nosso primeiro circuito quântico e você poderá ter um “gostinho” do futuro. Comente o que você achou desse texto e o que você está achando da computação quântica (BEM LOKO).