RZXGate#

class qiskit.circuit.library.RZXGate(theta, label=None)[소스]#

기반 클래스: 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 the rzx() 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} \]

참고

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

inverse()[소스]#

Return inverse RZX gate (i.e. with the negative rotation angle).

power(exponent)[소스]#

Raise gate to a power.