PennyLane
  • Why PennyLane
  • Getting Started
  • Documentation
  • Ecosystem
Install
Install
  1. Compilation/
  2. Control logic decompositions

Control logic decompositions

OverviewCompute/uncomputeGlobal phasesPhase shiftsLCU(QSVT)Resources

Controlled quantum gates are a fundamental building block for algorithm design and unitary synthesis. Essential techniques like linear combinations of unitaries, Select-applying a gate (qml.Select), or QROMs (demo) all use controlled gates.

Consequently, decomposing (groups of) controlled quantum gates is an important step in quantum compilation.

Inputs

  • Circuit description containing quantum control logic.

Outputs

  • Circuit description containing reduced quantum control logic. The reduction is typically seen in the number of control nodes and/or the number of controlled gates.

Covered decompositions

We show the following four decompositions:

  1. Control of a compute/uncompute pattern [1]
  2. Linear combination of QSVTs
  3. Controlled global phases [2]
  4. Flipped and controlled phase shifts

Examples

We give one brief example for each of the four techniques. See the respective tabs for more details and examples.

  • Controlled versions of a compute/uncompute pattern can be simplified. This allows us to skip control nodes like in the following example:

    0: ─╭RX(0.50)─╭●────╭●─╭RX(0.50)†─┤ = 0: ──RX(0.50)─╭●────╭●──RX(0.50)†─┤ 1: ─│─────────├X─╭●─├X─│──────────┤ 1: ───────────╰X─╭●─╰X────────────┤ 2: ─│─────────│──├X─│──│──────────┤ 2: ──────────────├X───────────────┤ ctrl: ─╰●────────╰●─╰●─╰●─╰●─────────┤ ctrl: ──────────────╰●───────────────┤.
  • Linear combinations of QSVT circuits can be condensed, leading to simplifications like the following:

    aux: ──H─╭○─────╭○────────────╭○─────╭○─────────────╭○──────╭●─────╭●────────────╭●─────H─┤↗₀│ c: ────╰∏_ϕ_0─├BlockEncode0─╰∏_ϕ_1─├BlockEncode0†─╰∏_ϕ_2──╰∏_τ_0─├BlockEncode0─╰∏_τ_1─────────┤ t: ───────────╰BlockEncode0────────╰BlockEncode0†────────────────╰BlockEncode0────────────────┤. = aux: ──H─────╭●─────────────────────────╭●─────╭○─────────────╭○─────H─┤↗₀│ c: ──∏_ϕ_0─╰∏_θ_0─╭BlockEncode0─∏_ϕ_1─╰∏_θ_1─├BlockEncode0†─╰∏_ϕ_2────────┤ t: ───────────────╰BlockEncode0──────────────╰BlockEncode0†───────────────┤.
  • Controlled global phases, unlike their non-controlled counterparts, cannot simply be skipped. Instead, they decompose into phase shift gates, with any of the controls acting as new target:

    0: ──╭GlobalPhase(a)─┤ = 0: ──────────┤ = 0: ──────────┤ = 0: ──────────┤ 1: ──├●──────────────┤ 1: ──╭Rϕ(-a)─┤ 1: ──╭●──────┤ 1: ──╭●──────┤ 2: ──├●──────────────┤ 2: ──├●──────┤ 2: ──├Rϕ(-a)─┤ 2: ──├●──────┤ 3: ──╰●──────────────┤ 3: ──╰●──────┤ 3: ──╰●──────┤ 3: ──╰Rϕ(-a)─┤
  • (Controlled) phase shift gates, in turn, can be decomposed via this relationship into (controlled) R_Z gates, leading to staircase circuits:

    0: ──╭Rϕ(a)─┤ ≅ 0: ──╭RZ(a)───────────────────┤ 1: ──├●─────┤ 1: ──├●─────╭RZ(a/2)──────────┤ 2: ──╰●─────┤ 2: ──╰●─────╰●────────RZ(a/4)─┤

Typical usage

These decomposition tricks are usually applied to high-level or intermediate-level circuit descriptions that allow insight into the control logic applied to some subroutine.

References

[1] "A software methodology for compiling quantum programs", Thomas Häner, Damian S. Steiger, Krysta Svore, Matthias Troyer, Quantum Sci. Technol. 3 020501, 2018

[2] "Quantum computation and quantum information", Michael A. Nielsen, Isaac L. Chuang, Cambridge Press, 2010, Cambridge University Press


Cite this page

@misc{PennyLane-ctrl-logic-decomp,
  title={Control logic decompositions},
  howpublished={\url{https://pennylane.ai/compilation/ctrl-logic-decomp}},
  year={2025}
}

Page author(s)

David Wierichs
David Wierichs

David Wierichs

I like to think about differentiation and representations of quantum programs, and I enjoy coding up research ideas and useful features for anyone to use in PennyLane.

PennyLane

PennyLane is an open-source software framework for quantum machine learning, quantum chemistry, and quantum computing, with the ability to run on all hardware. Built with ❤️ by Xanadu.

Stay updated with our newsletter

For researchers

  • Research
  • Features
  • Demos
  • Compilation
  • Datasets
  • Performance
  • Learn
  • Videos
  • Documentation
  • Teach

For learners

  • Learn
  • Codebook
  • Teach
  • Videos
  • Challenges
  • Demos
  • Compilation
  • Glossary

For developers

  • Features
  • Documentation
  • API
  • GitHub
  • Datasets
  • Demos
  • Compilation
  • Performance
  • Devices
  • Catalyst

© Copyright 2025 | Xanadu | All rights reserved

TensorFlow, the TensorFlow logo and any related marks are trademarks of Google Inc.

Privacy Policy|Terms of Service|Cookie Policy|Code of Conduct