RZXGate#
- class qiskit.circuit.library.RZXGate(theta, label=None)[source]#
Bases:
Gate
A parametric 2-qubit \(Z \otimes X\) interaction (rotation about ZX).
This gate is maximally entangling at \(\theta = \pi/2\).
The cross-resonance gate (CR) for superconducting qubits implements a ZX interaction (however other terms are also present in an experiment).
Can be applied to a
QuantumCircuit
with therzx()
method.Circuit Symbol:
┌─────────┐ q_0: ┤0 ├ │ Rzx(θ) │ q_1: ┤1 ├ └─────────┘
Matrix Representation:
\[ \begin{align}\begin{aligned}\newcommand{\th}{\frac{\theta}{2}}\\\begin{split}R_{ZX}(\theta)\ q_0, q_1 = \exp\left(-i \frac{\theta}{2} X{\otimes}Z\right) = \begin{pmatrix} \cos\left(\th\right) & 0 & -i\sin\left(\th\right) & 0 \\ 0 & \cos\left(\th\right) & 0 & i\sin\left(\th\right) \\ -i\sin\left(\th\right) & 0 & \cos\left(\th\right) & 0 \\ 0 & i\sin\left(\th\right) & 0 & \cos\left(\th\right) \end{pmatrix}\end{split}\end{aligned}\end{align} \]Note
In Qiskit's convention, higher qubit indices are more significant (little endian convention). In the above example we apply the gate on (q_0, q_1) which results in the \(X \otimes Z\) tensor order. Instead, if we apply it on (q_1, q_0), the matrix will be \(Z \otimes X\):
┌─────────┐ q_0: ┤1 ├ │ Rzx(θ) │ q_1: ┤0 ├ └─────────┘
\[ \begin{align}\begin{aligned}\newcommand{\th}{\frac{\theta}{2}}\\\begin{split}R_{ZX}(\theta)\ q_1, q_0 = exp(-i \frac{\theta}{2} Z{\otimes}X) = \begin{pmatrix} \cos(\th) & -i\sin(\th) & 0 & 0 \\ -i\sin(\th) & \cos(\th) & 0 & 0 \\ 0 & 0 & \cos(\th) & i\sin(\th) \\ 0 & 0 & i\sin(\th) & \cos(\th) \end{pmatrix}\end{split}\end{aligned}\end{align} \]This is a direct sum of RX rotations, so this gate is equivalent to a uniformly controlled (multiplexed) RX gate:
\[\begin{split}R_{ZX}(\theta)\ q_1, q_0 = \begin{pmatrix} RX(\theta) & 0 \\ 0 & RX(-\theta) \end{pmatrix}\end{split}\]Examples:
\[R_{ZX}(\theta = 0) = I\]\[R_{ZX}(\theta = 2\pi) = -I\]\[R_{ZX}(\theta = \pi) = -i Z \otimes X\]\[\begin{split}RZX(\theta = \frac{\pi}{2}) = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 0 & -i & 0 \\ 0 & 1 & 0 & i \\ -i & 0 & 1 & 0 \\ 0 & i & 0 & 1 \end{pmatrix}\end{split}\]Create new RZX gate.
Attributes
- condition_bits#
Get Clbits in condition.
- decompositions#
Get the decompositions of the instruction from the SessionEquivalenceLibrary.
- definition#
Return definition in terms of other basic gates.
- duration#
Get the duration.
- label#
Return instruction label
- name#
Return the name.
- num_clbits#
Return the number of clbits.
- num_qubits#
Return the number of qubits.
- params#
return instruction params.
- unit#
Get the time unit of duration.
Methods