interactions 2 qubits 3 parameters
Canonical entangling
Parameterizes every two-qubit interaction up to local unitaries.
The canonical gate generates every two-qubit interaction (up to single-qubit rotations) through three real parameters $(a, b, c)$:
$$ \mathrm{CAN}(a, b, c) = \mathrm{e}^{\,i(a\,X{\otimes}X + b\,Y{\otimes}Y + c\,Z{\otimes}Z)} $$
In the computational basis, writing $c_\pm = \cos(a \pm b)$ and $s_\pm = \sin(a \pm b)$:
$$ \begin{bmatrix} \mathrm{e}^{ic} c_- & 0 & 0 & i\mathrm{e}^{ic} s_- \\ 0 & \mathrm{e}^{-ic} c_+ & i\mathrm{e}^{-ic} s_+ & 0 \\ 0 & i\mathrm{e}^{-ic} s_+ & \mathrm{e}^{-ic} c_+ & 0 \\ i\mathrm{e}^{ic} s_- & 0 & 0 & \mathrm{e}^{ic} c_- \end{bmatrix} $$
Properties
- Every $U \in SU(4)$ equals $\mathrm{CAN}(a,b,c)$ sandwiched by local single-qubit unitaries for some $a, b, c \in \mathbb{R}$ satisfying $\pi/4 \geq a \geq b \geq |c|$. This region defines the Weyl chamber.
- Two gates are locally equivalent if and only if they share the same $(a, b, c)$ coordinates.
- The Hamiltonian $aXX + bYY + cZZ$ block-diagonalizes in the Bell basis.
Special Cases
| $(a, b, c)$ | Locally equivalent |
|---|---|
| $(0, 0, 0)$ | Identity |
| $(\pi/4, 0, 0)$ | CNOT / CZ |
| $(\pi/8, \pi/8, 0)$ | $\sqrt{i\mathrm{SWAP}}$ |
| $(\pi/4, \pi/4, 0)$ | iSWAP |
| $(\pi/8, \pi/8, -\pi/8)$ | $\sqrt{\mathrm{SWAP}}$ |
| $(\pi/8, \pi/8, \pi/8)$ | $\sqrt{\mathrm{SWAP}}^\dagger$ |
| $(\pi/4, \pi/4, \pi/4)$ | SWAP (global phase) |
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 ($a = \pi t,\ b = 2\pi t,\ c = 3\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.
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.
| SDK | Name |
|---|---|
| Qiskit | — |
| PennyLane | — ⓘ |
| Cirq | — |
| Q# | — |
| PyQuil | — |
| Braket | — ⓘ |
| BQSKit | — ⓘ |
| Qibo | — |
| pytket | pytket.circuit.OpType.TK2 ⓘ |
| Stim | — |
| OpenQASM | — |