---
title: MCXSynthesisNoAuxHP24 (latest version)
description: API reference for qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesisNoAuxHP24 in the latest version of qiskit
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit/qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesisNoAuxHP24
---

# MCXSynthesisNoAuxHP24

*class* `qiskit.transpiler.passes.synthesis.hls_plugins.MCXSynthesisNoAuxHP24`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/2.5/qiskit/transpiler/passes/synthesis/hls_plugins.py#L1450-L1482)

Bases: [`HighLevelSynthesisPlugin`](/docs/api/qiskit/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin")

Synthesis plugin for a multi-controlled X gate based on the paper by Huang and Palsberg.

See \[1] for details.

This plugin name is :`mcx.noaux_hp24` which can be used as the key on an [`HLSConfig`](/docs/api/qiskit/qiskit.transpiler.passes.HLSConfig "qiskit.transpiler.passes.HLSConfig") object to use this method with [`HighLevelSynthesis`](/docs/api/qiskit/qiskit.transpiler.passes.HighLevelSynthesis "qiskit.transpiler.passes.HighLevelSynthesis").

For a multi-controlled X gate with $k$ control qubits this synthesis method requires no additional clean auxiliary qubits. The synthesized circuit consists of $k + 1$ qubits. The number of CX-gates is linear in $k$.

**References**

1. Huang and Palsberg, *Compiling Conditional Quantum Gates without Using Helper Qubits*, PLDI (2024), \<[https://dl.acm.org/doi/10.1145/3656436](https://dl.acm.org/doi/10.1145/3656436)>\`\_

## Methods

### run

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

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/2.5/qiskit/transpiler/passes/synthesis/hls_plugins.py#L1470-L1482)

Run synthesis for the given MCX gate.
