`unitary()`: project nearly-unitary matrices onto the closest unitary
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 55/100
Rechercherichtung
Start by reading src/circuit.rs around line 144 to see how unitary() checks matrices and how it represents them. The issue suggests projecting accepted matrices with a polar decomposition or one Newton step; confirm the available matrix operations and relevant tests before choosing an approach. Done means accepted nearly-unitary matrices are projected to the closest unitary without changing the API.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
What you want to do
unitary() accepts matrices that are up to 1e-9 away from unitary (src/circuit.rs:144) and uses them
as given. Each such gate scales the norm by up to 1 ± 1e-9, which adds up over long circuits.
Implementation notes
After the check passes, replace U with its closest unitary, U·(U†U)^(−1/2). For 2×2 that's a
closed-form polar decomposition, or a single Newton step U ← ½(U + U^{−†}), which is enough at
this tolerance.
What it could look like
No API change.
Contributing
- I would like to open a pull request for this (see CONTRIBUTING.md).
- Vorherrschende Sprache
- Rust
- Sterne
- 1
- Forks
- 0
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus kaiwave/qsengine
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 54/100
Alle Issues in kaiwave/qsengine
Ähnliche Issues
-
area:models enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug frontend ui
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
aosama/astronomical#1973 ·
Maintainer antworten meist innerhalb von 1 Tag