Skip to main content
IBM Quantum Platform

MCXSynthesisNDirtyI15

class qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesisNDirtyI15

GitHub

Bases : HighLevelSynthesisPlugin

Plugin de synthèse pour une porte X multi-contrôlée basé sur l'article de Iten et al. (2016).

Voir le [point 1] pour plus de détails.

Le nom de ce plugin est :mcx.n_dirty_i15 qui peut être utilisé comme clé sur un objet pour utiliser cette méthode HLSConfig pour utiliser cette méthode avec HighLevelSynthesis.

Pour une porte X multicontrôlée avec k4k\ge 4 qubits de contrôle, cette méthode de synthèse nécessite k2k - 2 qubits auxiliaires sales supplémentaires. Le circuit synthétisé se compose de 2k12 * k - 1 qubits et d'au plus 8k68 * k - 6 portes CX. Pour k3k\le 3, des circuits efficaces explicites sont utilisés à la place.

Le plugin prend en charge les options suivantes, spécifiques au plugin :

  • num_clean_ancillas : Nombre de qubits auxiliaires propres disponibles.
  • num_dirty_ancillas : Nombre de qubits auxiliaires sales disponibles.
  • relative_phase : Lorsqu'elle est définie sur True, la méthode applique la porte X multicontrôlée optimisée jusqu'à une phase relative, de manière à ce que, par le lemme 8 de [1], les phases relatives de action part s'annulent avec les phases de reset part.
  • action_only : lorsqu'elle vaut True, la méthode n'applique que le action part du lemme 8 de [1].

Références

  1. Iten et al. et al., Circuits quantiques pour les isométries, Phys. Rév. A 93, 23 mars 2018 (2016), arXiv:1501.06911

Méthodes

run

run(high_level_object, coupling_map=None, target=None, qubits=None, **options)

GitHub

Exécutez la synthèse pour la porte MCX donnée.

Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.