Pular para o conteúdo principal
Este projeto está em fase beta. Encontrou um bug? Abra uma issue no GitHub. Tem uma pergunta ou ideia? Pergunte no Discussions — adoraríamos receber seu feedback!
Como está a qualidade da tradução nesta página?

Shaded lightcones (SLC)

Two copies of the same brickwork circuit ending in a measurement. On the left, a conventional lightcone is uniformly shaded yellow. On the right, a shaded lightcone fades from yellow to transparent according to how much each gate matters to the measured observable.

qiskit-addon-slc é um pacote para calcular o cone de luz sombreado (SLC) [1] de um observável em relação a um circuito quântico. No contexto do cancelamento probabilístico de erros (PEC), os cones de luz sombreados são semelhantes aos cones de luz binários convencionais no sentido de que não mitigar erros fora do cone de luz pode reduzir a variância (isto é, o custo de amostragem). O sombreamento do cone de luz permite levar essa estratégia além, atribuindo escalas aos geradores de erro de Pauli dentro do cone de luz causal. Erros aos quais se atribuem escalas menores têm menos efeito sobre o observável; truncá-los do modelo de ruído pode reduzir a variância (isto é, o custo de amostragem) ao custo de algum viés. O pacote qiskit-addon-slc dá aos usuários a capacidade de fazer o sombreamento do cone de luz e controlar o compromisso entre custo de amostragem e viés.

Primeiros passos​

Um guia simples para ajudar você a começar rapidamente com este pacote está disponível no guia de início rápido.

Exemplos de casos de uso​

Essa técnica foi usada para reduzir o custo de amostragem do cancelamento probabilístico de erros (PEC) em experimentos de eco de Loschmidt de operadores com 56 qubits em um processador IBM Heron. [2].

Discussão técnica​

Visão geral do método​

Os cones de luz sombreados são calculados e usados em 5 etapas:

  1. Calcular um limite para o efeito de cada termo de erro de Pauli sobre o observável no final do circuito (limite direto)

  2. Calcular um limite para o efeito de cada termo de erro de Pauli sobre o estado inicial no começo do circuito (limite inverso)

A three-qubit circuit with four unitary layers and a grid of error terms E1 to E12 between them. Error term E8 is highlighted. One arrow from E8 back to the initial state rho is labeled backward bound, and another arrow from E8 to the final observable A is labeled forward bound.

  1. Aproximar uma contribuição de viés para cada termo de erro de Pauli usando os limites direto/inverso e a taxa de erro do termo

Two 3-by-4 grids of numbered error terms, one shaded by backward bound and one by forward bound. Arrows from both point to a third grid labeled partition and merge, which combines the two sets of bounds and highlights term 8.

  1. Priorizar os termos de erro com base em sua taxa de erro e seus limites. Truncar do modelo de ruído os termos que têm o menor efeito sobre o valor esperado do observável até que a tolerância de viés especificada pelo usuário seja atingida. Alternativamente, pode-se adicionar os termos de erro mais impactantes a um modelo de ruído até que o orçamento de custo de amostragem especificado pelo usuário seja preenchido.

A row of numbered error terms sorted from most to least impactful, starting with term 8 and ending with terms 1, 2, 10 and 12. The last five terms, shaded darkest, are separated from the rest and labeled truncate.

  1. Mitigar o modelo de ruído truncado. Usando o modelo de execução dirigida do Qiskit Runtime, especificar termos de erro a ignorar durante a amostragem do PEC é simples. Veja o tutorial para mais detalhes.

The prioritized list of retained error terms, 8, 11, 7, 5, 6, 3 and 4, with an arrow pointing to a three-qubit circuit. Each retained term appears in the circuit as an inverse noise gate, labeled lambda inverse, between the unitary layers.

Recursos de software​

  • Cálculo de limites assíncrono e paralelo

  • Propagação acelerada com Rust

  • Permite o cálculo dos limites antecipadamente (isto é, antes do aprendizado de ruído propriamente dito)

Problemas conhecidos​

  • Windows não é suportado

  • InjectNoise(site=”before”) não é suportado

  • Não suporta mesclagem de limites de granularidade fina

Trabalhos futuros​

  • Cálculo de autovalores acelerado com Rust para calcular limites diretos

Contribuindo​

O código-fonte está disponível no GitHub.

O guia do desenvolvedor fica em CONTRIBUTING.md, na raiz do repositório deste projeto. Ao participar, espera-se que você respeite o código de conduta do Qiskit.

Usamos as issues do GitHub para rastrear solicitações e bugs.

Citando este pacote​

Se você usar 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​

Apache License 2.0

Política de descontinuação​

Seguimos o versionamento semântico. Ocasionalmente, podemos fazer mudanças incompatíveis para melhorar a experiência do usuário. Quando possível, manteremos as interfaces antigas e as marcaremos como descontinuadas, desde que possam coexistir com as novas. Cada melhoria substancial, mudança incompatível ou descontinuação será documentada nas notas de versão.

Contribuindo​

O código-fonte está disponível no GitHub.

O guia do desenvolvedor fica em CONTRIBUTING.md. Ao participar, espera-se que você respeite o código de conduta do Qiskit.

Usamos as issues do GitHub para rastrear solicitações e bugs.

Referências​

  1. Andrew Eddins, et al., Lightcone shading for classically accelerated quantum error mitigation, arXiv:2409.04401v1 [quant-ph].

  2. Samantha V. Barron, et al., Observable Estimation in the Absence of Classical Verification, arXiv:2607.25998 [quant-ph].