Autores: Sergey Bravyi Andrew W. Cross Jay M. Gambetta Dmitri Maslov Patrick Rall Theodore J. Yoder Resumo O acúmulo de erros físicos , , impede a execução de algoritmos em larga escala em computadores quânticos atuais. A correção de erros quânticos promete uma solução codificando qubits lógicos em um número maior de qubits físicos, de modo que os erros físicos sejam suprimidos o suficiente para permitir a execução de uma computação desejada com fidelidade tolerável. A correção de erros quânticos torna-se praticamente realizável assim que a taxa de erro físico estiver abaixo de um valor limite que depende da escolha do código quântico, do circuito de medição de síndrome e do algoritmo de decodificação . Apresentamos um protocolo de correção de erros quânticos ponta a ponta que implementa memória tolerante a falhas com base em uma família de códigos de paridade de baixa densidade (LDPC - low-density parity-check) . Nossa abordagem atinge um limite de erro de 0,7% para o modelo de ruído padrão baseado em circuito, comparável ao código de superfície , , , que, por 20 anos, foi o código principal em termos de limite de erro. O ciclo de medição de síndrome para um código de comprimento em nossa família requer qubits auxiliares e um circuito de profundidade 8 com portas CNOT, inicializações de qubits e medições. A conectividade de qubit necessária é um grafo de grau 6 composto por dois subgrafos planares disjuntos de arestas. Em particular, mostramos que 12 qubits lógicos podem ser preservados por quase 1 milhão de ciclos de síndrome usando um total de 288 qubits físicos, assumindo uma taxa de erro físico de 0,1%, enquanto o código de superfície exigiria quase 3.000 qubits físicos para atingir tal desempenho. Nossas descobertas colocam demonstrações de memória quântica tolerante a falhas de baixo overhead ao alcance de processadores quânticos de curto prazo. 1 2 3 4 k n 5 6 7 8 9 10 n n Principal A computação quântica atraiu atenção devido à sua capacidade de oferecer soluções assintoticamente mais rápidas para um conjunto de problemas computacionais em comparação com os melhores algoritmos clássicos conhecidos . Acredita-se que um computador quântico escalável em funcionamento possa ajudar a resolver problemas computacionais em áreas como descoberta científica, pesquisa de materiais, química e design de medicamentos, entre outras , , , . 5 11 12 13 14 O principal obstáculo para a construção de um computador quântico é a fragilidade da informação quântica, devido a várias fontes de ruído que a afetam. Como o isolamento de um computador quântico de efeitos externos e seu controle para induzir uma computação desejada entram em conflito um com o outro, o ruído parece ser inevitável. As fontes de ruído incluem imperfeições em qubits, materiais utilizados, aparatos de controle, erros de preparação de estado e medição, e uma variedade de fatores externos que vão desde fatores artificiais locais, como campos eletromagnéticos espúrios, até aqueles inerentes ao Universo, como raios cósmicos. Veja ref. para um resumo. Enquanto algumas fontes de ruído podem ser eliminadas com melhor controle , materiais e blindagem , , , várias outras fontes parecem ser difíceis, se não impossíveis, de remover. O último tipo pode incluir emissão espontânea e estimulada em íons aprisionados , , e a interação com o banho (efeito Purcell) em circuitos supercondutores — cobrindo ambas as tecnologias quânticas líderes. Assim, a correção de erros torna-se um requisito fundamental para a construção de um computador quântico escalável em funcionamento. 15 16 17 18 19 20 1 2 3 A possibilidade de tolerância a falhas quânticas está bem estabelecida . A codificação redundante de um qubit lógico em muitos qubits físicos permite diagnosticar e corrigir erros medindo repetidamente síndromes de operadores de verificação de paridade. No entanto, a correção de erros só é benéfica se a taxa de erro do hardware estiver abaixo de um certo valor limite que depende de um protocolo de correção de erros particular. As primeiras propostas para correção de erros quânticos, como códigos concatenados , , , focaram em demonstrar a possibilidade teórica de supressão de erros. À medida que a compreensão da correção de erros quânticos e das capacidades das tecnologias quânticas amadureceram, o foco mudou para encontrar protocolos práticos de correção de erros quânticos. Isso resultou no desenvolvimento do código de superfície , , , que oferece um alto limite de erro próximo a 1%, algoritmos de decodificação rápidos e compatibilidade com os processadores quânticos existentes que dependem da conectividade de qubits em malha quadrada bidimensional (2D). Pequenos exemplos do código de superfície com um único qubit lógico já foram demonstrados experimentalmente por vários grupos , , , , . No entanto, aumentar a escala do código de superfície para 100 ou mais qubits lógicos seria proibitivamente caro devido à sua baixa eficiência de codificação. Isso despertou interesse em códigos quânticos mais gerais conhecidos como códigos LDPC (low-density parity-check) . O progresso recente no estudo de códigos LDPC sugere que eles podem alcançar tolerância a falhas quânticas com uma eficiência de codificação muito maior . Aqui, focamos no estudo de códigos LDPC, pois nosso objetivo é encontrar códigos e protocolos de correção de erros quânticos que sejam eficientes e possíveis de demonstrar na prática, dadas as limitações das tecnologias de computação quântica. 4 21 22 23 7 8 9 10 24 25 26 27 28 6 29 Um código de correção de erros quânticos é do tipo LDPC se cada operador de verificação do código atua apenas em poucos qubits e cada qubit participa em poucas verificações. Várias variantes de códigos LDPC foram propostas recentemente, incluindo códigos de superfície hiperbólicos , , , produto de hipergrafo , códigos de produto balanceados , códigos de dois blocos baseados em grupos finitos , , , e códigos de Tanner quânticos , . Estes últimos foram mostrados , serem assintoticamente ‘bons’ no sentido de oferecerem uma taxa de codificação constante e distância linear: um parâmetro que quantifica o número de erros corrigíveis. Em contraste, o código de superfície tem uma taxa de codificação assintoticamente zero e apenas distância da raiz quadrada. Substituir o código de superfície por um código LDPC de alta taxa e alta distância poderia ter implicações práticas importantes. Primeiro, o overhead de tolerância a falhas (a razão entre o número de qubits físicos e lógicos) poderia ser notavelmente reduzido. Segundo, códigos de alta distância mostram uma diminuição muito acentuada na taxa de erro lógico: à medida que a probabilidade de erro físico cruza o valor limite, a quantidade de supressão de erro alcançada pelo código pode aumentar em ordens de magnitude, mesmo com uma pequena redução na taxa de erro físico. Essa característica torna os códigos LDPC de alta distância atraentes para demonstrações de curto prazo que provavelmente operarão no regime próximo ao limite. No entanto, acreditava-se anteriormente que superar o código de superfície para modelos de ruído realistas, incluindo erros de memória, de porta e de preparação de estado e medição, pode exigir códigos LDPC muito grandes com mais de 10.000 qubits físicos . 30 31 32 33 34 35 36 37 38 39 40 39 40 31 Aqui apresentamos vários exemplos concretos de códigos LDPC de alta taxa com algumas centenas de qubits físicos equipados com um circuito de medição de síndrome de baixa profundidade, um algoritmo de decodificação eficiente e um protocolo de tolerância a falhas para abordar qubits lógicos individuais. Esses códigos mostram um limite de erro próximo a 0,7%, apresentam excelente desempenho no regime próximo ao limite e oferecem uma redução de 10 vezes no overhead de codificação em comparação com o código de superfície. Os requisitos de hardware para realizar nossos protocolos de correção de erros são relativamente moderados, pois cada qubit físico é acoplado por portas de dois qubits com apenas seis outros qubits. Embora o grafo de conectividade de qubit não seja localmente incorporável em uma grade 2D, ele pode ser decomposto em dois subgrafos planares de grau 3. Como argumentaremos abaixo, tal conectividade de qubit é adequada para arquiteturas baseadas em qubits supercondutores. Nossos códigos são uma generalização dos códigos de bicicleta propostos por MacKay et al. e estudados com mais profundidade nas refs. , , . Nomeamos nossos códigos de bicicleta bivariada (BB - bivariate bicycle) porque eles são baseados em polinômios bivariados, como detalhado nos . Estes são códigos estabilizadores do tipo Calderbank–Shor–Steane (CSS) , que podem ser descritos por uma coleção de operadores de verificação (estabilizadores) de seis qubits compostos por Pauli e . Em um nível geral, um código BB é semelhante ao código toróide bidimensional . Em particular, os qubits físicos de um código BB podem ser dispostos em uma grade bidimensional com condições de contorno periódicas de modo que todos os operadores de verificação sejam obtidos de um único par de verificações e por meio de deslocamentos horizontais e verticais da grade. No entanto, em contraste com os estabilizadores de plaqueta e vértice que descrevem o código toróide, os operadores de verificação dos códigos BB não são geometricamente locais. Além disso, cada verificação atua em seis qubits em vez de quatro. Descreveremos o código por um grafo de Tanner tal que cada vértice de representa um qubit de dados ou um operador de verificação. Um vértice de verificação e um vértice de dados são conectados por uma aresta se o operador de verificação -ésimo atua não trivialmente no qubit de dados -ésimo (aplicando Pauli ou ). Veja a Fig. para exemplos de grafos de Tanner de códigos de superfície e BB, respectivamente. O grafo de Tanner de qualquer código BB tem grau de vértice seis e espessura de grafo igual a dois, o que significa que ele pode ser decomposto em dois subgrafos planares disjuntos de arestas ( ). Conectividade de qubit de espessura 2 é adequada para qubits supercondutores acoplados por ressonadores de micro-ondas. Por exemplo, duas camadas planares de acopladores e suas linhas de controle podem ser acopladas ao lado superior e inferior do chip que hospeda os qubits, e os dois lados acoplados. 41 35 36 42 Métodos 43 44 X Z 7 X Z G G i j i j X Z 1a,b 29 Métodos , Grafo de Tanner de um código de superfície, para comparação. , Grafo de Tanner de um código BB com parâmetros [] incorporado em um toro. Cada aresta do grafo de Tanner conecta um vértice de dados e um de verificação. Qubits de dados associados aos registradores ( ) e ( ) são mostrados por círculos azuis e laranjas. Cada vértice tem seis arestas incidentes, incluindo quatro arestas de curto alcance (apontando para norte, sul, leste e oeste) e duas arestas de longo alcance. Mostramos apenas algumas arestas de longo alcance para evitar poluição visual. As arestas tracejadas e sólidas indicam dois subgrafos planares que abrangem o grafo de Tanner, veja os . , Esboço de uma extensão de grafo de Tanner para medir e seguindo a ref. , conectando-se a um código de superfície. A auxiliar correspondente à medição pode ser conectada a um código de superfície, permitindo operações de carga-armazenamento para todos os qubits lógicos por meio de teletransporte quântico e algumas unitárias lógicas. Este grafo de Tanner estendido também tem uma implementação em uma arquitetura de espessura 2 por meio das arestas e ( ). a b q L q R Métodos c 50 A B Métodos Um código BB com parâmetros [[ , , ]] codifica qubits lógicos em qubits de dados oferecendo uma distância de código , o que significa que qualquer erro lógico abrange pelo menos qubits de dados. Dividimos qubits de dados em registradores ( ) e ( ) de tamanho /2 cada. Cada verificação atua em três qubits de ( ) e três qubits de ( ). O código depende de qubits auxiliares de verificação para medir a síndrome de erro. Dividimos qubits de verificação em registradores ( ) e ( ) de tamanho /2 que coletam síndromes dos tipos e , respectivamente. No total, a codificação depende de 2 qubits físicos. A taxa de codificação líquida é, portanto, = /(2 ). Por exemplo, a arquitetura padrão do código de superfície codifica = 1 qubit lógico em = 2 qubits de dados para um código de distância- e usa − 1 qubits de verificação para medições de síndrome. A taxa de codificação líquida é ≈ 1/(2 2), que rapidamente se torna impraticável, pois somos forçados a escolher uma grande distância de código, devido, por exemplo, aos erros físicos estarem próximos do valor limite. Em contraste, os códigos BB têm taxa de codificação ≫ 1/ 2, veja a Tabela para exemplos de códigos. Até onde sabemos, todos os códigos mostrados na Tabela são novos. O código de distância-12 [] pode ser o mais promissor para demonstrações de curto prazo, pois combina grande distância e alta taxa de codificação líquida = 1/24. Para comparação, o código de superfície de distância-11 tem uma taxa de codificação líquida = 1/241. Abaixo, mostramos que o código BB de distância-12 supera o código de superfície de distância-11 para o intervalo de taxas de erro experimentalmente relevante. n k d k n d d n q L q R n q L q R n n q X q Z n X Z n r k n k n d d n r d r d 1 1 r r Para evitar o acúmulo de erros, deve-se ser capaz de medir a síndrome de erro com frequência suficiente. Isso é realizado por um circuito de medição de síndrome que acopla qubits de dados no suporte de cada operador de verificação com o qubit auxiliar respectivo por meio de uma sequência de portas CNOT. Os qubits de verificação são então medidos, revelando o valor da síndrome de erro. O tempo necessário para implementar o circuito de medição de síndrome é proporcional à sua profundidade: o número de camadas de portas compostas por CNOTs não sobrepostas. Como novos erros continuam a ocorrer enquanto o circuito de medição de síndrome é executado, sua profundidade deve ser minimizada. O ciclo completo de medição de síndrome para um código BB é ilustrado na Fig. . O ciclo de síndrome requer apenas sete camadas de CNOTs independentemente do comprimento do código. Os qubits de verificação são inicializados e medidos no início e no final do ciclo de síndrome, respectivamente (veja os para detalhes). O circuito respeita a simetria de deslocamento cíclico do código subjacente. 2 Métodos Ciclo completo de medições de síndrome que depende de sete camadas de CNOTs. Fornecemos uma visão local do circuito que inclui apenas um qubit de dados de cada registro ( ) e ( ). O circuito é simétrico sob deslocamentos horizontais e verticais do grafo de Tanner. Cada qubit de dados é acoplado por CNOTs com três qubits de verificação *X* e três qubits de verificação *Z*: veja os para mais detalhes. q L q R Métodos O protocolo completo de correção de erros executa c ≫ 1 ciclos de medição de síndrome e, em seguida, chama um decodificador: um algoritmo clássico que recebe como entrada as síndromes medidas e produz uma estimativa do erro final nos qubits de dados. A correção de erros é bem-sucedida se a estimativa e o erro real coincidirem módulo um produto de operadores de verificação. Neste caso, os dois erros têm a mesma ação em qualquer estado lógico (codificado) aplicado. Assim, aplicar o inverso do erro estimado retorna os qubits de dados ao estado lógico inicial. Caso contrário, se o erro estimado e o erro real diferirem por um operador lógico não trivial, a correção de erros falha, resultando em um erro lógico. Nossos experimentos numéricos são baseados na propagação de crenças com um decodificador de estatísticas ordenadas (BP-OSD - belief propagation with an ordered statistics decoder) proposto por Panteleev e Kalachev . O trabalho original descreveu o BP-OSD no contexto de um modelo de ruído de brinquedo com apenas erros de memória. Aqui mostramos como estender o BP-OSD para o modelo de ruído baseado em circuito, veja as para detalhes. Nossa abordagem segue de perto as refs. , , , . N 36 36 Informações Suplementares 45 46 47 48 Uma versão ruidosa do circuito de medição de síndrome pode incluir vários tipos de operações defeituosas, como erros de memória em qubits de dados ou de verificação ociosos, portas CNOT defeituosas, inicializações e medições de qubits. Consideramos o modelo de ruído baseado em circuito no qual cada operação falha independentemente com probabilidade . A probabilidade de um erro lógico L depende da taxa de erro , dos detalhes dos circuitos de medição de síndrome e do algoritmo de decodificação. Seja L( c) a probabilidade de erro lógico após a realização de c ciclos de síndrome. Definimos a taxa de erro lógico como . Informalmente, L pode ser vista como a probabilidade de erro lógico por ciclo de síndrome. Seguindo a prática comum, escolhemos c = para um código de distância- . A Figura 10 p p p P N N p N d d