MCXSynthesisNDirtyI15
class qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesisNDirtyI15
Basen: HighLevelSynthesisPlugin
Synthese-Plugin für ein mehrfach gesteuertes X-Gatter auf der Grundlage der Arbeit von Iten et al. (2016).
Siehe [1] für Einzelheiten.
Dieser Plugin-Name lautet:mcx.n_dirty_i15 , der als Schlüssel für ein Objekt verwendet werden kann HLSConfig objekt verwendet werden kann, um diese Methode mit HighLevelSynthesis.
Für ein mehrfach kontrolliertes X-Gatter mit Steuerqubits erfordert diese Synthesemethode zusätzliche schmutzige Hilfsqubits. Die synthetisierte Schaltung besteht aus Qubits und höchstens CX-Gattern. Für werden stattdessen explizit effiziente Schaltungen verwendet.
Das Plugin unterstützt die folgenden Plugin-spezifischen Optionen:
- num_clean_ancillas: Die Anzahl der verfügbaren sauberen Hilfsqubits.
- num_dirty_ancillas: Die Anzahl der verfügbaren schmutzigen Hilfsqubits.
- relative_phase: Bei der Einstellung
Truewendet die Methode das optimierte, mehrfach gesteuerte X-Gatter bis zu einer relativen Phase an, und zwar so, dass sich nach Lemma 8 von [1] die relativen Phasen deraction partmit den Phasen derreset partaufheben. - action_only: Bei
Truewendet die Methode nur dieaction partvon Lemma 8 von [1] an.
Referenzen
- Iten et al. et al., Quantenschaltungen für Isometrien, Phys. Rev. A 93, 23.03.2018 (2016), arXiv:1501.06911
Methoden
run
run(high_level_object, coupling_map=None, target=None, qubits=None, **options)
Führt die Synthese für das angegebene MCX-Gatter aus.