Skip to main contentIBM Quantum Documentation
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.

MCXSynthesis2DirtyKG24

class qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesis2DirtyKG24

GitHub

Bases: HighLevelSynthesisPlugin

Synthesis plugin for a multi-controlled X gate based on the paper by Khattar and Gidney (2024).

See [1] for details.

The plugin name is :mcx.2_dirty_kg24 which can be used as the key on an HLSConfig object to use this method with HighLevelSynthesis.

For a multi-controlled X gate with k3k\ge 3 control qubits this synthesis method requires 22 additional dirty ancillary qubits. The synthesized circuit consists of k+2k + 2 qubits and at most 24k4824 * k - 48 CX gates.

The plugin supports the following plugin-specific options:

  • num_clean_ancillas: The number of clean ancillary qubits available.

References

1. Khattar and Gidney, Rise of conditionally clean ancillae for optimizing quantum circuits arXiv:2407.17966


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.