Retropropagação de operadores
Este pacote implementa a retropropagação por operadores (OBP) para reduzir a profundidade dos circuitos nos cálculos de valor esperado. Essa técnica propaga uma observável de trás para frente através dos portões no final de um circuito quântico, o que resulta em um circuito mais simples, em troca de um aumento no número de bases de medição da observável. À medida que um operador é retropropagado ao longo de um circuito, o tamanho do observável cresce exponencialmente, resultando em uma sobrecarga de recursos tanto clássica quanto quântica. No entanto, para alguns circuitos, a distribuição resultante das observáveis de Pauli é mais concentrada do que o escalonamento exponencial do pior caso, o que significa que alguns termos do hamiltoniano com coeficientes pequenos podem ser truncados para reduzir a sobrecarga quântica. O erro resultante dessa ação pode ser controlado para se encontrar um equilíbrio adequado entre precisão e eficiência.
Existem várias maneiras de realizar a retropropagação de operadores; este pacote utiliza um método baseado na teoria da perturbação de Clifford, que tem a vantagem de que a sobrecarga decorrente da retropropagação de várias portas é determinada pelo fato de essa porta não ser Cliffordiana. Isso resulta em maior eficiência para algumas famílias de circuitos em relação aos métodos baseados em redes tensoriais para OBP, que atualmente apresentam altos sobrecargas clássicas, mesmo nos casos em que a sobrecarga quântica permanece moderada.
Este pacote é adequado para estimar valores esperados de circuitos quânticos gerais e observáveis de Pauli; no entanto, para circuitos de alta magia (muito não-Clifford), o erro observável resultante do truncamento provavelmente se tornará proibitivo antes que o observável tenha sido propagado por uma parte significativa do circuito. Para circuitos próximos ao modelo de Clifford, pode ser possível propagar o sinal por uma parte muito maior do circuito, mantendo limites de erro relativamente pequenos.
Introdução
Um guia simples para ajudá-lo a começar rapidamente a usar este pacote está disponível no guia de início rápido.
Exemplos de Caso de Uso
Essa técnica tem sido utilizada para implementar circuitos de Trotter de menor profundidade para a evolução temporal de um modelo de spin de 2D [1].
Discussão técnica
-
Um único ponto de entrada: a função
backpropagateexecuta o OBP. -
Dois controles independentes sobre o equilíbrio entre profundidade e precisão:
OperatorBudgetlimita o quanto a variável observável pode aumentar durante a retropropagação.TruncationErrorBudgetlimita a magnitude do erro que pode ocorrer durante a retropropagação.
-
A eficácia depende do grau de Clifford do circuito: para circuitos de alta magia (ou seja, muito não-Clifford), os termos adicionados ao observável tendem a ter coeficientes maiores, de modo que se incorre em mais erros de truncamento mais cedo, limitando a economia de profundidade sob um orçamento de erro fixo. Os circuitos do tipo “Near-Clifford” podem ser truncados de forma mais agressiva e submetidos a uma retropropagação mais profunda, dentro do mesmo orçamento.
-
Totalmente introspectável: cada execução retorna um objeto
OBPMetadataque registra as contagens de Pauli por fatia, as contagens do grupo QWC e o erro de truncamento acumulado, complot_*utilitários para visualizar o crescimento do operador e o erro em função da profundidade do circuito — útil para ajustar os orçamentos antes de alocar tempo na QPU.
contribuindo
O guia do desenvolvedor está disponível em CONTRIBUTING.md, na raiz do repositório deste projeto. Ao participar, espera-se que você respeite o código de conduta do Qiskit.
Utilizamos os tickets d GitHub para acompanhar solicitações e bugs.
Citando este pacote
Caso utilize este pacote em sua pesquisa, use o arquivo CITATION.bib no repositório deste projeto para citar a(s) referência(s) apropriada(s).
Licença
Política de descontinuação
Este pacote segue o sistema de versionamento semântico. Ocasionalmente, podemos realizar alterações significativas com o objetivo de melhorar a experiência do usuário. Sempre que possível, manteremos as interfaces antigas e as marcaremos como obsoletas, desde que possam coexistir com as novas. Cada melhoria significativa, alteração que implique incompatibilidade ou descontinuação será documentada nas notas de lançamento.
Referências
-
- Fuller et al., “Computação quântica aprimorada por meio da retropropagação de operadores ”, npj Quantum Inf. 12, 51 (2026). [ arXiv ]