Skip to main contentIBM Quantum Documentation

MCXSynthesis1CleanB95

class qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesis1CleanB95

GitHub

Bases: HighLevelSynthesisPlugin

Synthesis plugin for a multi-controlled X gate based on the paper by Barenco et al. (1995).

See [1] for details.

This plugin name is :mcx.1_clean_b95 which can be used as the key on an HLSConfig object to use this method with HighLevelSynthesis.

For a multi-controlled X gate with k5k\ge 5 control qubits this synthesis method requires a single additional clean auxiliary qubit. The synthesized circuit consists of k+2k + 2 qubits and at most 16k816 * k - 8 CX gates.

The plugin supports the following plugin-specific options:

  • num_clean_ancillas: The number of clean auxiliary qubits available.

References

  1. Barenco et. al., Phys.Rev. A52 3457 (1995), arXiv:quant-ph/9503016

Methods

run

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

GitHub

Run synthesis for the given MCX gate.

Was this page helpful?
Report a bug or request content on GitHub.