Vai al contenuto principale
Questo progetto è in fase beta. Hai trovato un bug? Apri una issue su GitHub. Hai una domanda o un'idea? Chiedi su GitHub Discussions — apprezziamo il tuo feedback!
Com'è la qualità della traduzione su questa pagina?

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 è un pacchetto per calcolare lo shaded lightcone (SLC) [1] di un'osservabile rispetto a un circuito quantistico. Nel contesto della probabilistic error cancellation (PEC), gli shaded lightcone sono simili ai lightcone binari convenzionali in quanto non mitigare gli errori fuori dal lightcone può ridurre la varianza (cioè il costo di campionamento). Lo shading del lightcone permette di spingere oltre questa strategia assegnando scale ai generatori di errore di Pauli all'interno del lightcone causale. Gli errori a cui sono assegnate scale minori hanno meno effetto sull'osservabile; troncarli dal modello di rumore può ridurre la varianza (cioè il costo di campionamento) al prezzo di un certo bias. Il pacchetto qiskit-addon-slc offre agli utenti la possibilità di eseguire lo shading del lightcone e controllare il compromesso tra costo di campionamento e bias.

Per iniziare​

Una semplice guida per iniziare rapidamente con questo pacchetto è disponibile nella guida rapida.

Esempi di casi d'uso​

Questa tecnica è stata usata per ridurre il costo di campionamento della probabilistic error cancellation (PEC) per esperimenti di operator Loschmidt echo con 56 qubit su un processore IBM Heron. [2].

Discussione tecnica​

Panoramica del metodo​

Gli shaded lightcone vengono calcolati e usati in 5 passaggi:

  1. Calcolare un limite sull'effetto di ogni termine di errore di Pauli sull'osservabile alla fine del circuito (limite forward)

  2. Calcolare un limite sull'effetto di ogni termine di errore di Pauli sullo stato iniziale all'inizio del circuito (limite backward)

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. Approssimare un contributo di bias per ogni termine di errore di Pauli usando i limiti forward/backward e il tasso di errore del termine

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. Assegnare priorità ai termini di errore in base al loro tasso di errore e ai limiti. Troncare dal modello di rumore i termini che hanno il minor effetto sul valore di aspettazione dell'osservabile finché non si raggiunge la tolleranza di bias specificata dall'utente. In alternativa, si possono aggiungere i termini di errore più influenti a un modello di rumore finché non si esaurisce il budget di costo di campionamento specificato dall'utente.

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. Mitigare il modello di rumore troncato. Con il directed execution model di Qiskit Runtime, specificare i termini di errore da ignorare durante il campionamento PEC è semplice. Consulta il tutorial per i dettagli.

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.

Funzionalità del software​

  • Calcolo asincrono parallelo dei limiti

  • Propagazione accelerata con Rust

  • Consente il calcolo dei limiti in anticipo (cioè prima dell'effettivo apprendimento del rumore)

Problemi noti​

  • Windows non supportato

  • InjectNoise(site=”before”) non supportato

  • Non supporta la fusione dei limiti a grana fine

Lavori futuri​

  • Calcolo degli autovalori accelerato con Rust per il calcolo dei limiti forward

Contribuire​

Il codice sorgente è disponibile su GitHub.

La guida per sviluppatori si trova in CONTRIBUTING.md nella radice del repository di questo progetto. Partecipando, ci si aspetta che tu rispetti il codice di condotta di Qiskit.

Usiamo le issue di GitHub per tracciare richieste e bug.

Citare questo pacchetto​

Se usi questo pacchetto nella tua ricerca, usa il file CITATION.bib nel repository di questo progetto per citare i riferimenti appropriati.

Licenza​

Apache License 2.0

Politica di deprecazione​

Seguiamo il versionamento semantico. Occasionalmente potremmo introdurre modifiche incompatibili per migliorare l'esperienza utente. Quando possibile, manterremo le vecchie interfacce e le segneremo come deprecate, finché possono coesistere con le nuove. Ogni miglioramento sostanziale, modifica incompatibile o deprecazione sarà documentata nelle note di rilascio.

Contribuire​

Il codice sorgente è disponibile su GitHub.

La guida per sviluppatori si trova in CONTRIBUTING.md. Partecipando, ci si aspetta che tu rispetti il codice di condotta di Qiskit.

Usiamo le issue di GitHub per tracciare richieste e bug.

Riferimenti​

  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].