Zum Hauptinhalt springen
Dieses Projekt befindet sich in der Beta-Phase. Einen Fehler gefunden? GitHub Issue erstellen. Frage oder Idee? In Discussions fragen — wir freuen uns über dein Feedback!
Wie ist die Übersetzungsqualität auf dieser Seite?

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 ist ein Paket zur Berechnung des Shaded Lightcones (SLC) [1] einer Observablen bezüglich eines Quanten-Circuits. Im Kontext der probabilistischen Fehlerauslöschung (PEC) ähneln Shaded Lightcones herkömmlichen binären Lightcones darin, dass das Nicht-Mitigieren von Fehlern außerhalb des Lightcones die Varianz (d. h. die Sampling-Kosten) senken kann. Lightcone-Shading erlaubt es, diese Strategie weiterzutreiben, indem den Pauli-Fehlergeneratoren innerhalb des kausalen Lightcones Skalen zugewiesen werden. Fehler mit kleineren Skalen haben weniger Einfluss auf die Observable; sie aus dem Rauschmodell abzuschneiden kann die Varianz (d. h. die Sampling-Kosten) auf Kosten eines gewissen Bias senken. Das Paket qiskit-addon-slc ermöglicht es Nutzern, Lightcone-Shading durchzuführen und den Kompromiss zwischen Sampling-Kosten und Bias zu steuern.

Erste Schritte​

Eine einfache Anleitung, die dir hilft, schnell mit diesem Paket zu starten, findest du in der Quickstart-Anleitung.

Anwendungsbeispiele​

Diese Technik wurde verwendet, um die Sampling-Kosten der probabilistischen Fehlerauslöschung (PEC) für Operator-Loschmidt-Echo-Experimente mit 56 Qubits auf einem IBM-Heron-Prozessor zu senken. [2].

Technische Diskussion​

Überblick über die Methode​

Shaded Lightcones werden in 5 Schritten berechnet und verwendet:

  1. Eine Schranke für die Wirkung jedes Pauli-Fehlerterms auf die Observable am Ende des Circuits berechnen (Vorwärtsschranke)

  2. Eine Schranke für die Wirkung jedes Pauli-Fehlerterms auf den Anfangszustand am Anfang des Circuits berechnen (Rückwärtsschranke)

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. Einen Bias-Beitrag für jeden Pauli-Fehlerterm anhand der Vorwärts-/Rückwärtsschranken und der Fehlerrate des Terms approximieren

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. Fehlerterme anhand ihrer Fehlerrate und Schranken priorisieren. Aus dem Rauschmodell die Terme abschneiden, die den geringsten Einfluss auf den Erwartungswert der Observablen haben, bis die vom Nutzer festgelegte Bias-Toleranz erreicht ist. Alternativ kann man dem Rauschmodell die wirksamsten Fehlerterme hinzufügen, bis das vom Nutzer festgelegte Budget für die Sampling-Kosten ausgeschöpft ist.

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. Das abgeschnittene Rauschmodell mitigieren. Mit dem Directed Execution Model von Qiskit Runtime ist es unkompliziert, Fehlerterme anzugeben, die beim PEC-Sampling ignoriert werden. Details findest du im Tutorial.

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.

Software-Funktionen​

  • Parallele asynchrone Schrankenberechnung

  • Rust-beschleunigte Propagation

  • Ermöglicht die Schrankenberechnung im Voraus (d. h. vor dem eigentlichen Noise Learning)

Bekannte Probleme​

  • Windows wird nicht unterstützt

  • InjectNoise(site=”before”) wird nicht unterstützt

  • Unterstützt kein feinkörniges Zusammenführen von Schranken

Zukünftige Arbeit​

  • Rust-beschleunigte Eigenwertberechnung zur Berechnung von Vorwärtsschranken

Mitwirken​

Der Quellcode ist auf GitHub verfügbar.

Der Entwicklerleitfaden befindet sich in CONTRIBUTING.md im Stammverzeichnis des Repositorys dieses Projekts. Mit deiner Teilnahme verpflichtest du dich, den Verhaltenskodex von Qiskit einzuhalten.

Wir verwenden GitHub Issues, um Anfragen und Fehler zu verfolgen.

Dieses Paket zitieren​

Wenn du dieses Paket in deiner Forschung verwendest, nutze die Datei CITATION.bib im Repository dieses Projekts, um die passende(n) Referenz(en) zu zitieren.

Lizenz​

Apache License 2.0

Deprecation-Richtlinie​

Wir folgen Semantic Versioning. Gelegentlich können wir Breaking Changes vornehmen, um die Nutzererfahrung zu verbessern. Wenn möglich, behalten wir alte Schnittstellen bei und markieren sie als veraltet, solange sie mit den neuen koexistieren können. Jede wesentliche Verbesserung, jeder Breaking Change und jede Deprecation wird in den Release Notes dokumentiert.

Mitwirken​

Der Quellcode ist auf GitHub verfügbar.

Der Entwicklerleitfaden befindet sich in CONTRIBUTING.md. Mit deiner Teilnahme verpflichtest du dich, den Verhaltenskodex von Qiskit einzuhalten.

Wir verwenden GitHub Issues, um Anfragen und Fehler zu verfolgen.

Referenzen​

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