SynthesisΒΆ

The tweedledum library implements several synthesis algorithms. These take as input a function in terms of some representation and return a reversible or quantum circuit. The following table lists all synthesis algorithms that are currently provided in tweedledum.

Function
Description
Expects
Returns

cnot_patel

CNOT Patel synthesis for linear circuits.
Linear matrix
{CNOT} network

dbs

Reversible synthesis based on functional decomposition.
Permutation
Quantum or reversible circuit

diagonal_synth

Synthesis of diagonal unitary matrices.
List of angles in diagonal unitary matrix
{CNOT, Rz} network

esop_phase_synth

ESOP-phase synthesis.
Boolean function
Quantum circuit

gray_synth

Gray synthesis for {CNOT, Rz} networks.
List of parities and rotation angles to synthesize
{CNOT, Rz} network

linear_synth

Linear synthesis for small {CNOT, Rz} networks.
List of parities and rotation angles to synthesize
{CNOT, Rz} network

tbs

Transformation-based reversible logic synthesis.
Permutation
Reversible circuit