Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

qiskit.synthesis.synth_permutation_acg

synth_permutation_acg(pattern)

GitHub

Synthesize a permutation circuit for a fully-connected architecture using the Alon, Chung, Graham method.

This produces a quantum circuit of depth 2 (measured in the number of SWAPs).

This implementation is based on the Theorem 2 in the paper “Routing Permutations on Graphs Via Matchings” (1993), available at https://www.cs.tau.ac.il/~nogaa/PDFS/r.pdf.

Parameters

pattern (Union[list[int], np.ndarray]) – permutation pattern, describing which qubits occupy the positions 0, 1, 2, etc. after applying the permutation. That is, pattern[k] = m when the permutation maps qubit m to position k. As an example, the pattern [2, 4, 3, 0, 1] means that qubit 2 goes to position 0, qubit 4 goes to position 1, etc.

Returns

the synthesized quantum circuit.

Return type

QuantumCircuit

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