Skip to main contentIBM Quantum Documentation

Circuit Synthesis

qiskit.synthesis¶


Evolution Synthesis

EvolutionSynthesis()Interface for evolution synthesis algorithms.
ProductFormula(order[, reps, ...])Product formula base class for the decomposition of non-commuting operator exponentials.
LieTrotter([reps, insert_barriers, ...])The Lie-Trotter product formula.
SuzukiTrotter([order, reps, ...])The (higher order) Suzuki-Trotter product formula.
MatrixExponential()Exact operator evolution via matrix exponentiation and unitary synthesis.

Linear Function Synthesis

synth_cnot_count_full_pmh(state[, section_size])Synthesize linear reversible circuits for all-to-all architecture using Patel, Markov and Hayes method.
synth_cnot_depth_line_kms(mat)Synthesize linear reversible circuit for linear nearest-neighbor architectures using Kutin, Moulton, Smithline method.

Permutation Synthesis

synth_permutation_depth_lnn_kms(pattern)Synthesize a permutation circuit for a linear nearest-neighbor architecture using the Kutin, Moulton, Smithline method.
synth_permutation_basic(pattern)Synthesize a permutation circuit for a fully-connected architecture using sorting.
synth_permutation_acg(pattern)Synthesize a permutation circuit for a fully-connected architecture using the Alon, Chung, Graham method.

Clifford Synthesis

synth_clifford_full(clifford[, method])Decompose a Clifford operator into a QuantumCircuit.
synth_clifford_ag(clifford)Decompose a Clifford operator into a QuantumCircuit based on Aaronson-Gottesman method.
synth_clifford_bm(clifford)Optimal CX-cost decomposition of a Clifford operator on 2-qubits or 3-qubits into a QuantumCircuit based on Bravyi-Maslov method.
synth_clifford_greedy(clifford)Decompose a Clifford operator into a QuantumCircuit based on the greedy Clifford compiler that is described in Appendix A of Bravyi, Hu, Maslov and Shaydulin.
synth_clifford_layers(cliff[, ...])Synthesis of a Clifford into layers, it provides a similar decomposition to the synthesis described in Lemma 8 of [1].

CNOTDihedral Synthesis

synth_cnotdihedral_full(elem)Decompose a CNOTDihedral element into a QuantumCircuit.
synth_cnotdihedral_two_qubits(elem)Decompose a CNOTDihedral element on a single qubit and two qubits into a QuantumCircuit.
synth_cnotdihedral_general(elem)Decompose a CNOTDihedral element into a QuantumCircuit.

Discrete Basis Synthesis

SolovayKitaevDecomposition([...])The Solovay Kitaev discrete decomposition algorithm.
Was this page helpful?