Quantum Compilation

Drastically reduce the size of your circuits to allow them to run on next-generation quantum computing hardware. On this page, you will find explanations and implementations of important compilation passes and techniques.

What is Quantum Compilation?
A painting of a quantum circuit

(Clifford + T) Gate Set

This target gate set contains S, H, CNOT, and T gates for FTQC.

Pauli Product Measurement

Maps a (Clifford + T) circuit to Pauli product rotations and measurements.

Pauliopt: Holistic circuit resynthesis using phase polynomials

A holistic approach to phase polynomial based circuit resynthesis

One-qubit Synthesis

Creates a circuit with three rotations gates from a unitary 2x2 matrix.

Loop Boundary Optimization

Optimizes redundant operations across loop iterations without unrolling.

Parity Table

The parity table is a representation for the phase polynomial.

Phase Polynomial Intermediate Representation

See a modern overview of phase polynomials and how they are utilized in various contexts in quantum compilation.

RowCol Algorithm

Maps CNOT circuits to new optimized ones under constrained connectivity.

Two-qubit Synthesis

Creates a circuit with optimal CNOT gate count from a 4x4 unitary matrix U.

ZX-Calculus Intermediate Representation

ZX-calculus is a graphical language that can represent quantum circuits.

Diagonal unitary decomposition

Recursively decompose a diagonal unitary operator.

Select-U(2) Decomposition

See how to decompose a Select-applied/multiplexed U(2) operator or Pauli rotation.

PCPhase decomposition

Decompose projector-controlled phase operators into phase shifts.

Control logic decompositions

Discover a collection of decompositions for control logic.

Lazy Select

Remove complementary control nodes of Select operators.

Parity Matrix Intermediate Representation

The parity matrix describes a circuit containing only CNOT gates.

Partial Select

Remove redundant control nodes from a partial Select operator.

PermRowCol Algorithm

Maps CNOT circuits to new optimized ones under constrained connectivity and dynamic qubit allocation.

Start compiling with PennyLane