quantum gate directory

Gates Groups SDKs GitHub
$R(\theta, \phi)$

rotations· 1 qubit ·2 parameters

Phased Rotation

Rotation by $\theta$ about the equatorial Bloch-sphere axis at azimuthal angle $\phi$.

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

The phased rotation generalizes $R_x$ and $R_y$ to an arbitrary axis in the equatorial ($xy$) plane of the Bloch sphere:

$$ \begin{align*} R(\theta, \phi) & = \exp\left(-i \frac{\theta}{2} (\cos\phi \, X + \sin\phi \, Y)\right) \\ & = \begin{bmatrix} \cos\frac{\theta}{2} & -i\mathrm{e}^{-i\phi}\sin\frac{\theta}{2} \\ -i\mathrm{e}^{i\phi}\sin\frac{\theta}{2} & \cos\frac{\theta}{2} \end{bmatrix} \end{align*} $$

Special values

Parameters Gate
$\phi = 0$ $R_x(\theta)$
$\phi = \pi/2$ $R_y(\theta)$
$\theta = \pi$ GPi$(\phi)$ up to global phase
$\theta = \pi/2$ GPi2$(\phi)$

Properties

  • Sandwich form: $R(\theta, \phi) = R_z(\phi) \, R_x(\theta) \, R_z(-\phi)$ — the phase $\phi$ just rotates the frame in which the $x$ rotation happens.
  • Covers half of the Bloch sphere's rotation axes with one pulse shape, which is why it is the native single-qubit gate on ion traps (as GPi/GPi2) and on Google hardware (as PhasedX).

Usage

  • On hardware with virtual $z$ rotations, any single-qubit unitary becomes two phased rotations: the compiler tracks $\phi$ offsets in software and only the equatorial pulses are physically played.

Also written

  • $R(\theta, \phi)$
  • $R_\phi(\theta)$
  • $\mathrm{PhasedX}$

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 ($\theta = 2\pi t,\ \phi = 4\pi t$).

Phase

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

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.RGate
PennyLane — ⓘ
Cirq cirq.PhasedXPowGate ⓘ
Q# — ⓘ
PyQuil —
Braket braket.circuits.gates.PRx ⓘ
BQSKit bqskit.ir.gates.U1qGate ⓘ
Qibo qibo.gates.PRX ⓘ
pytket pytket.circuit.OpType.PhasedX ⓘ
Stim —
OpenQASM —

← All gates

gate.directory made by nts $\oplus$ rdls