Propagarea înapoi a operatorilor
Acest pachet implementează propagarea înapoi a operatorilor (OBP) pentru reducerea adâncimii circuitelor în calculele valorilor de așteptare. Această tehnică propagă o observabilă înapoi prin porțile de la finalul unui circuit cuantic, ceea ce duce la un circuit mai puțin adânc, cu prețul unei creșteri a bazelor de măsurare a observabilei. Pe măsură ce un operator este propagat tot mai departe înapoi printr-un circuit, dimensiunea observabilei crește exponențial, rezultând un cost suplimentar de resurse atât clasice, cât și cuantice. Totuși, pentru unele circuite, distribuția rezultată a observabilelor Pauli este mai concentrată decât scalarea exponențială din cel mai rău caz, ceea ce înseamnă că unii termeni din Hamiltonian cu coeficienți mici pot fi trunchiați pentru a reduce costul suplimentar cuantic. Eroarea introdusă astfel poate fi controlată pentru a găsi un compromis potrivit între precizie și eficiență.
Există mai multe moduri în care se poate realiza propagarea înapoi a operatorilor; acest pachet folosește o metodă bazată pe teoria perturbațiilor Clifford, care are avantajul că „costul suplimentar” introdus de propagarea înapoi a diverselor porți este determinat de gradul de non-Clifford al porții respective. Acest lucru duce la o eficiență sporită pentru anumite familii de circuite, în comparație cu metodele OBP bazate pe rețele tensoriale, care în prezent au costuri clasice ridicate chiar și în cazurile în care costul cuantic rămâne modest.
Acest pachet este potrivit pentru estimarea valorilor de așteptare ale circuitelor cuantice generale și ale observabilelor Pauli; totuși, pentru circuitele cu „magie” ridicată (foarte non-Clifford), eroarea observabilei introdusă de trunchiere va deveni probabil prohibitivă înainte ca observabila să fi fost propagată printr-o porțiune semnificativă a circuitului. Pentru circuitele aproape Clifford, poate fi posibil să propagi printr-o parte mult mai mare a circuitului, menținând limite de eroare relativ mici.
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
Această tehnică a fost folosită pentru a implementa circuite Trotter de adâncime mai mică pentru evoluția în timp a unui model de spin 2D [1].
Discuție tehnică
-
Un singur punct de intrare: funcția
backpropagaterealizează OBP. -
Două controale independente asupra compromisului adâncime ↔ acuratețe:
-
OperatorBudgetlimitează cât de mult poate crește observabila în timpul propagării înapoi. -
TruncationErrorBudgetlimitează cât de multă eroare poate fi introdusă în timpul propagării înapoi.
-
-
Eficiența depinde de cât de Clifford este circuitul: pentru circuitele cu „magie” ridicată (adică foarte non-Clifford), termenii adăugați observabilei tind să aibă coeficienți mai mari, astfel că se acumulează mai multă eroare de trunchiere mai devreme, limitând economiile de adâncime sub un buget de eroare fix. Circuitele aproape Clifford pot fi trunchiate mai agresiv și propagate înapoi mai adânc cu același buget.
-
Complet introspectabil: fiecare rulare returnează un obiect
OBPMetadatacare înregistrează numărul de termeni Pauli pe felie, numărul de grupuri QWC și eroarea de trunchiere acumulată, cu funcții ajutătoareplot_*pentru a vizualiza creșterea operatorului și eroarea în raport cu adâncimea circuitului — util pentru reglarea bugetelor înainte de a consuma timp QPU.
Contribuții
Ghidul pentru dezvoltatori se află în CONTRIBUTING.md, la rădăcina depozitului acestui proiect. Participând, se așteaptă să respecți codul de conduită al Qiskit.
Folosim GitHub issues pentru urmărirea solicitărilor și a erorilor.
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ță
Politica de depreciere
Acest pachet respectă 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ât 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
-
- Fuller et al., “Improved quantum computation using operator backpropagation,” npj Quantum Inf. 12, 51 (2026). [arXiv]