Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK Go to the latest version
Important

IBM Quantum Platform is moving and this version will be sunset on July 1. To get started on the new platform, read the migration guide.

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.