More standard gates
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 55/100
Piste de recherche
Start with src/gates.rs and the existing gate methods; the issue says single-qubit and controlled gates follow that pattern, while mcx uses control_mask and the multi-qubit rotations and cswap need the listed decompositions. Then inspect the drawer’s SYMBOLS table, the type stub, and the gates documentation page. Done means adding the requested gates and measure_all behavior, with each represented in those supporting files.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What you want to do
Build common circuits without writing unitary matrices by hand.
Implementation notes
- The single-qubit and controlled ones need only a matrix in
src/gates.rsand a method, the same
as existing gates.mcxmaps straight ontocontrol_mask. rzzis diagonal, so it is a phase that depends on the parity of the two bits. Without a two-qubit
kernel, decompose it as CX · RZ · CX.rxxandryyare the same with basis changes.cswap(c, a, b)(controlc, swapaandb) iscx(b, a), thenccx(c, a, b), thencx(b, a).- Add every gate to the drawer's
SYMBOLStable, the type stub and the gates docs page.
What it could look like
qc.sx(0); qc.sxdg(0)
qc.cy(0, 1); qc.ch(0, 1); qc.crx(0, 1, t); qc.cry(0, 1, t)
qc.rzz(0, 1, t); qc.rxx(0, 1, t); qc.ryy(0, 1, t)
qc.cswap(0, 1, 2)
qc.mcx([0, 1, 2, 3], 4) # any number of controls
qc.measure_all() # adds classical bits if needed, like Qiskit
Contributing
- I would like to open a pull request for this (see CONTRIBUTING.md).
- Langage dominant
- Rust
- Étoiles
- 1
- Forks
- 0
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de kaiwave/qsengine
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
enhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
-
Fold long circuit drawingsOuverteenhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
-
enhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
-
enhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 54/100
Toutes les issues de kaiwave/qsengine
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
docs good first issue php
Difficulté 1/5 1-3 heures Accessibilité débutants 90/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 67/100
Les mainteneurs répondent en général sous 1 jour
-
bug(core): partial tool arguments drop existing string content during a split surrogate pairOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
0xPlaygrounds/rig#3176 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Publish memtop on crates.ioOuvertepackaging
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
SalomonAvila/memtop#23 ·
Les mainteneurs répondent en général sous 1 jour