quantum gate directory

Gates Groups SDKs GitHub
$\mathrm{C}P$

controlled· 2 qubits ·1 parameter

Controlled Phase

Applies a phase $\mathrm{e}^{i\phi}$ to $|11\rangle$ and leaves other basis states unchanged.

Open in Quirk ↗ with $\phi = 2\pi t$

The controlled-phase gate is a two-qubit diagonal gate that adds a phase to the $|11\rangle$ component.

$$ \mathrm{C}P(\phi) = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & \mathrm{e}^{i\phi} \end{bmatrix} $$

Properties

  • Diagonal and symmetric under qubit exchange.
  • Clifford when $\phi$ is a multiple of $\pi/2$.
  • Related to controlled-$Z$ at $\phi = \pi$.

Usage

  • Phase-kickback in algorithms and controlled phase rotations.
  • Building block for QFT and diagonal unitaries.

Also written

  • $\mathrm{CPhase}(\phi)$
  • $\Lambda(\mathrm{e}^{i\phi})$

Related

  • Controlled version of Phase Shift

Groups

  • diagonal
  • number-preserving

Data

  • This gate as JSON
  • Edit this page on GitHub

The unitary, drawn

Every entry of the matrix as a disc. The area is the transition probability $|U_{jk}|^2$; the colour and the hand are the phase. Rows are outputs $\langle j|$, columns inputs $|k\rangle$, in the computational basis. Each parameter has a slider; play runs through the family along the path of the Quirk link ($\phi = 2\pi t$).

Phase

Disc area $= |U_{jk}|^2$. Hover an entry for its value, or take the JSON.

Weyl chamber

Where this gate sits among all two-qubit gates, up to single-qubit rotations before and after.

  • this gate
  • other gates
  • perfect entanglers

Coordinates:

not entangling entangling perfect entangler

$(a, b, c)$ means the gate equals $e^{i(a\,XX + b\,YY + c\,ZZ)}$ up to single-qubit gates, reduced to the chamber $\pi/4 \ge a \ge b \ge |c|$ (the convention of the canonical gate, Qiskit and Cirq). The $a = \pi/4$ face is a mirror: $(\pi/4, b, c)$ and $(\pi/4, b, -c)$ are the same gate. Drag the figure to rotate it, double-click to reset.

SDK support

How to call this gate in each framework. Hover a ⓘ for a note; the support matrix compares every gate at once.

SDKName
Qiskit qiskit.circuit.library.CPhaseGate
PennyLane pennylane.ControlledPhaseShift
Cirq cirq.CZPowGate ⓘ
Q# — ⓘ
PyQuil pyquil.gates.CPHASE
Braket braket.circuits.gates.CPhaseShift ⓘ
BQSKit bqskit.ir.gates.CPGate
Qibo qibo.gates.CU1 ⓘ
pytket pytket.circuit.OpType.CU1 ⓘ
Stim —
OpenQASM stdgates.inc: cp

← All gates

gate.directory made by nts $\oplus$ rdls