Skip to main content
IBM Quantum Platform

MCXSynthesisNDirtyI15

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

GitHub

Bases: HighLevelSynthesisPlugin

Plugin de síntesis para una puerta X multicontrolada basado en el artículo de Iten et al. (2016).

Véase [1] para más detalles.

El nombre de este plugin es :mcx.n_dirty_i15 que puede usarse como clave en un HLSConfig para utilizar este método con HighLevelSynthesis.

Para una puerta X multicontrolada con k4k\ge 4 qubits de control, este método de síntesis requiere k2k - 2 qubits auxiliares sucios adicionales. El circuito sintetizado consta de 2k12 * k - 1 qubits y como máximo 8k68 * k - 6 puertas CX. Para k3k\le 3 se utilizan en su lugar circuitos explícitos eficientes.

El complemento admite las siguientes opciones específicas:

  • num_clean_ancillas: El número de qubits auxiliares limpios disponibles.
  • num_dirty_ancillas: El número de qubits auxiliares sucios disponibles.
  • fase_relativa: Cuando se establece en True, el método aplica la puerta X multicontrolada optimizada hasta una fase relativa, de forma que, por el lema 8 de [1], las fases relativas de action part se cancelan con las fases de reset part.
  • action\only: cuando se establece en True, el método sólo aplica el action part del lema 8 de [1].

Referencias

  1. Iten y otros. et al., Circuitos cuánticos para isometrías, Phys. Rev. A 93, 23 de marzo de 2018 (2016), arXiv:1501.06911

Métodos

run

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

GitHub

Ejecuta la síntesis para la puerta MCX dada.

¿Le ha resultado útil esta página?
Informe de un error, de una errata o solicite contenido en GitHub.