Sari la conținutul principal
Acest proiect este în versiune beta. Ai găsit o eroare? Deschide un issue pe GitHub. Ai o întrebare sau o idee? Întreabă în Discussions — ne-ar plăcea să aflăm părerea ta!
Cum este calitatea traducerii pe această pagină?

Propagare Pauli

Pachetul pauli-prop oferă o interfață Python accelerată cu Rust pentru efectuarea propagării Pauli.

Propagarea Pauli este un cadru pentru aproximarea evoluției operatorilor în baza Pauli sub acțiunea altor operatori, cum ar fi porțile circuitelor cuantice și canalele de zgomot. Această abordare poate fi eficientă atunci când se așteaptă ca operatorii implicați să rămână rari în baza Pauli.

Subrutinele din acest pachet pot fi folosite pentru a implementa tehnici de atenuare a erorilor, precum lightcone shading [6] și propagated noise absorption [7], operator backpropagation [8] pentru reducerea adâncimii circuitelor, și simularea clasică a valorilor de așteptare [1-5].

Primii pași​

Un ghid simplu care te ajută să începi rapid cu acest pachet este disponibil în ghidul de pornire rapidă.

Exemple de cazuri de utilizare​

Propagarea Pauli poate fi folosită ca motor de nivel inferior pentru a implementa o varietate de tehnici. Câteva exemple în care a fost folosită sunt:

  • Lightcone shading pentru reducerea costului suplimentar de eșantionare al anulării probabilistice a erorilor (PEC) în atenuarea valorilor de așteptare într-un model Ising cu câmp transversal 1D și 2D [6] [qiskit-addon-slc documentație]

  • Absorbirea informațiilor modelului de zgomot într-o observabilă țintă pentru a atenua valorile de așteptare într-un model Ising cu câmp transversal 2D [7] [qiskit-addon-pna documentație]

  • Tăierea porților finale pentru a produce circuite Trotter cu adâncime mai mică pentru evoluția în timp a unui model de spin 2D [8] [qiskit-addon-obp documentație]

Discuție tehnică​

Detalii despre software​

  • Interfață Python accelerată cu Rust

  • Suport pentru simulări cu zgomot [ghid]

  • Posibilitatea de a trunchia termeni în timpul evoluției pe baza unei toleranțe absolute a coeficienților, a unui număr fix de termeni din operatorul în evoluție sau a unei combinații a ambelor

  • Posibilitatea de a efectua propagarea Pauli atât în cadrul Schrödinger, cât și în cel Heisenberg

  • Tehnică nouă pentru aproximarea conjugării unui operator sumă Pauli de către un alt operator Pauli. Această implementare euristică generează lacom contribuțiile la produs despre care se așteaptă să fie cele mai semnificative. Consultă Anexa B din [7] pentru mai multe informații.

  • Cu un singur fir de execuție

Cerințe de calcul​

Atât costul de memorie, cât și cel de timp ale rutinelor de propagare Pauli cresc în general odată cu dimensiunea până la care operatorului evoluat i se permite să crească.

propagate_through_rotation_gates(): Pe măsură ce operatorul Pauli este propagat în baza Pauli sub acțiunea unei secvențe de NN porți de rotație Pauli ale unui circuit cu MM qubiți, numărul de termeni va crește ca O(2N)\mathcal{O}(2^N) către un maxim de 4M4^M componente Pauli unice. Pentru a controla utilizarea memoriei, operatorul este trunchiat după aplicarea fiecărei porți, ceea ce introduce o anumită eroare proporțională cu mărimea coeficienților termenilor trunchiați. Cerințele de memorie sunt liniare în dimensiunea operatorului evoluat, iar timpul de rulare crește liniar atât cu dimensiunea operatorului, cât și cu numărul de porți.

propagate_through_operator(): Conjugă un operator în baza Pauli cu altul, acumulând lacom termeni în suma ∑i,j,kGi†OjGk\sum_{i,j,k}G^{\dagger}_iO_jG_k, unde i,j,ki,j,k sunt indici rari peste baza Pauli. Această implementare sortează coeficienții din fiecare operator în ordinea descrescătoare a mărimii, apoi caută în spațiul de indici 3D termenii cu cei mai mari coeficienți, pornind de la origine (0,0,0)(0,0,0) și acumulând triplete (i,j,k)(i,j,k) până la o limită specificată. Timpul petrecut cu căutarea poate fi adesea făcut neglijabil prin mărirea pasului de căutare în spațiul (i,j,k)(i,j,k), ceea ce oferă o accelerare cubică pentru această subrutină. În profilarea noastră, un timp semnificativ poate fi petrecut sortând operatorii și efectuând înmulțirea Pauli pentru a genera termenii noului operator.

Contribuie​

Codul sursă este disponibil pe GitHub.

Ghidul pentru dezvoltatori se găsește în CONTRIBUTING.md, în rădăcina depozitului acestui proiect. Participând, se așteaptă să respecți codul de conduită Qiskit.

Folosim GitHub issues pentru a urmări solicitările și erorile.

Citarea acestui pachet​

Dacă folosești acest pachet în cercetarea ta, folosește fișierul CITATION.bib din depozitul acestui proiect pentru a cita referința (referințele) potrivită(e).

Licență​

Apache License 2.0

Politica de depreciere​

Urmăm versionarea semantică. Ocazional putem face modificări incompatibile pentru a îmbunătăți experiența utilizatorului. Când este posibil, vom păstra interfețele vechi și le vom marca drept depreciate, atâta timp cât pot coexista cu cele noi. Fiecare îmbunătățire substanțială, modificare incompatibilă sau depreciere va fi documentată în notele de lansare.

Referințe​

  1. [Tomislav Begušić, Johnnie Gray, Garnet Kin-Lic Chan, Fast and converged classical simulations of evidence for the utility of quantum computing before fault tolerance, arXiv:2308.05077 [quant-ph].

  2. Nicolas Loizeau, et al., Quantum many-body simulations with PauliStrings.jl, arXiv:2410.09654 [quant-ph].

  3. Manuel S. Rudolph, et al., Pauli Propagation: A Computational Framework for Simulating Quantum Systems, arXiv:2505.21606 [quant-ph].

  4. Hrant Gharibyan, et al., A Practical Guide to using Pauli Path Simulators for Utility-Scale Quantum Experiments, arXiv:2507.10771 [quant-ph].

  5. Lukas Broers, et al., Scalable Simulation of Quantum Many-Body Dynamics with Or-Represented Quantum Algebra, arXiv:2506.13241 [quant-ph].

  6. Andrew Eddins, Minh C. Tran, Patrick Rall, Lightcone shading for classically accelerated quantum error mitigation, arXiv:2409.04401 [quant-ph].

  7. Andrew Eddins, et al., Computing noise-canceling observables via Pauli propagation, arXiv:2606.20441 [quant-ph].

8 Bryce Fuller, et al., Improved Quantum Computation using Operator Backpropagation, arXiv:2502.01897 [quant-ph].