::: AQT Quantum Gate Definitions

The available quantum gate set for AQT backends consists of the following gates:

  • Rx-gate – rotation around the Bloch sphere’s x-axis
  • Ry-gate – rotation around the Bloch sphere’s y-axis
  • Rz-gate – rotation around the Bloch sphere’s z-axis
  • R-gate – rotation around an arbitrary axis on the Bloch sphere’s equatorial plane
  • MS-gate – entangling gate of Mølmer-Sørenson-type

Gate Definitions

All quantum gates are defined in terms of the Pauli matrices,

\[
\begin{eqnarray}
\sigma_x =
\begin{pmatrix}
0 & 1 \\ 1 & 0
\end{pmatrix} ,
&& \sigma_y =
\begin{pmatrix}
0 & -\mathrm{i} \\ \mathrm{i} & 0
\end{pmatrix} ,
&& \sigma_z =
\begin{pmatrix}
1 & 0 \\ 0 & -1
\end{pmatrix} .
\end{eqnarray}
\]

Rx-gate

The Rx-gate on qubit \(j\) with pulse area \(t\) in units of \(\pi\) is defined as

\[
\begin{equation}
U_{\mathrm{R_x}}^j(t) = \exp\left (-\mathrm{i} t \frac{\pi}{2} \sigma_x^j\right) =
\begin{pmatrix}
\cos(t\frac{\pi}{2}) && -\mathrm{i}\sin(t \frac{\pi}{2}) \\ -\mathrm{i}\sin(t \frac{\pi}{2}) && \cos(t \frac{\pi}{2})
\end{pmatrix}
\end{equation}
\]

Examples:

\[
\begin{equation}
U_{\mathrm{R_x}}^j(0.5) \ket{0_j} =\frac{1}{\sqrt{2}}\left (\ket{0_j} – \mathrm{i}\ket{1_j} \right )
\end{equation}
\]

\[
\begin{equation}
U_{\mathrm{R_x}}^j(0.5) \ket{1_j} =\frac{1}{\sqrt{2}}\left ( – \mathrm{i}\ket{0_j} + \ket{1_j} \right )
\end{equation}
\]

The JSON syntax to encode the Rx-gate is:

[["X", t, [j]]]

Ry-gate

The Ry-gate on qubit \(j\) with pulse area \(t\) in units of \(\pi\) is defined as

\[
\begin{equation}
U_{\mathrm{R_y}}^j(t) = \exp\left( -\mathrm{i} t \frac{\pi}{2} \sigma_y^j \right) =
\begin{pmatrix}
\cos(t \frac{\pi}{2}) && -\sin(t \frac{\pi}{2}) \\ \sin(t \frac{\pi}{2}) && \cos(t \frac{\pi}{2})
\end{pmatrix}
\end{equation}
\]

Examples:

\[
\begin{equation}
U_{\mathrm{R_y}}^j(0.5) \ket{0_j} =\frac{1}{\sqrt{2}}\left (\ket{0_j} + \ket{1_j} \right )
\end{equation}
\]

\[
\begin{equation}
U_{\mathrm{R_y}}^j(0.5) \ket{1_j} =\frac{1}{\sqrt{2}}\left ( -\ket{0_j} + \ket{1_j} \right )
\end{equation}
\]

The JSON syntax to encode the Ry-gate is

[["Y", t, [j]]]

Rz-gate

The Rz-gate on qubit \(j\) with pulse area \(t\) in units of \(\pi\) is defined as

\[
\begin{equation}
U_{\mathrm{R_z}}^j(t) = \exp\left( -\mathrm{i} t \frac{\pi}{2} \sigma_z^j \right) =
\begin{pmatrix}
\cos(t \frac{\pi}{2}) -\mathrm{i}\sin(t \frac{\pi}{2}) && 0 \\ 0 && \cos(t \frac{\pi}{2}) +\mathrm{i}\sin(t \frac{\pi}{2})
\end{pmatrix}
\end{equation}
\]

Examples:

\[
\begin{equation}
U_{\mathrm{R_z}}^j(1)\frac{1}{\sqrt{2}}\left( \ket{0_j} + \ket{1_j}\right) = \frac{1}{\sqrt{2}}\left (\ket{0_j} – \ket{1_j} \right )
\end{equation}
\]

\[
\begin{equation}
U_{\mathrm{R_z}}^j(0.5)\frac{1}{\sqrt{2}}\left (\ket{0_j} + \ket{1_j} \right) =\frac{1}{\sqrt{2}}\left (\ket{0_j} +\mathrm{i}\ket{1_j} \right )
\end{equation}
\]

The JSON syntax to encode the Rz-gate is

[["Z", t, [j]]]

R-gate

The R-gate on qubit \(j\) with pulse area \(t\) and mixing angle \(p\), both in units of \(\pi\), is defined as

\[
\begin{equation}
U_{\mathrm{R}}^j(t,p) = \exp\left( -\mathrm{i} t \frac{\pi}{2} \left[\sin(p \pi)\sigma_y^j + \cos(p \pi)\sigma_x^j \right] \right) =
\begin{pmatrix}
\cos(t \frac{\pi}{2}) && -\mathrm{i} e^{-\mathrm{i} p \pi}\sin(t \frac{\pi}{2})\\ -\mathrm{i} e^{\mathrm{i} p \pi}\sin(t \frac{\pi}{2}) && \cos(t \frac{\pi}{2})
\end{pmatrix}
\end{equation}
\]

Examples:

\[
\begin{equation}
U_{\mathrm{R}}^j(0.5, 0) \ket{0_j} = U _{\mathrm{R_x}} ^j(0.5) \ket{0_j} =\frac{1}{\sqrt{2}}\left (\ket{0_j} – \mathrm{i}\ket{1_j} \right )
\end{equation}
\]

\[
\begin{equation}
U_{\mathrm{R}}^j(0.5, 0.5) \ket{0_j} = U _{\mathrm{R_y}} ^j(0.5) \ket{0_j} =\frac{1}{\sqrt{2}}\left (\ket{0_j} + \ket{1_j} \right )
\end{equation}
\]

The JSON syntax to encode the R-gate is

[["R", t, p, [j]]]

MS-gate

The MS-gate on qubits \(j\) and \(k\) with pulse area \(t\) in units of \(\pi\) is defined as

\[
\begin{equation}
\begin{aligned}
U_{\mathrm{MS}}^{j,k} \left (t \right) & = e^{\mathrm{i}t\frac{\pi}{2}}\exp{\left(-\mathrm{i} t \pi {S_x}^2 \right) } = \\ & = \begin{pmatrix}
\cos(t \frac{\pi}{2}) && 0 && 0 && -\mathrm{i}\sin(t \frac{\pi}{2}) \\ 0 && \cos(t \frac{\pi}{2}) && -\mathrm{i}\sin(t \frac{\pi}{2}) && 0 \\ 0 && -\mathrm{i}\sin(t\frac{\pi}{2}) && \cos(t \frac{\pi}{2}) && 0 \\ -\mathrm{i}\sin(t \frac{\pi}{2}) && 0 && 0 && \cos(t \frac{\pi}{2})
\end{pmatrix}
\end{aligned}
\end{equation}
\]

with

\[
\begin{equation}
S_x =\frac{1}{2}\left (\sigma_x^j + \sigma_x^k \right)
\end{equation}
\]

A fully-entangling gate between qubit 0 and qubit 1 therefore is

\[
\begin{equation}
U_{\mathrm{MS}}^{0,1} \left (0.5 \right) = \frac{1}{\sqrt{2}}
\begin{pmatrix}
1 && 0 && 0 && -\mathrm{i} \\ 0 && 1 && -\mathrm{i} && 0 \\ 0 && -\mathrm{i} && 1 && 0 \\ -\mathrm{i} && 0 && 0 && 1
\end{pmatrix}
\end{equation}
\]

Examples:

\[
\begin{equation}
U_{\mathrm{MS}}^{j,k}(0.5) \ket{0_j0_k} =\frac{1}{\sqrt{2}}\left (\ket{0_j0_k} -\mathrm{i} \ket{1_j1_k} \right )
\end{equation}
\]

\[
\begin{equation}
U_{\mathrm{MS}}^{j,k}(0.5) \ket{1_j1_k} =\frac{1}{\sqrt{2}}\left ( -\mathrm{i}\ket{0_j0_k} + \ket{1_j1_k} \right )
\end{equation}
\]

The JSON syntax to encode the MS-gate is

[["MS", t, [j,k]]]

The example for the fully-entangling gate is therefore

[["MS", 0.5, [0,1]]]

As all AQT backends are still under heavy development, please understand that all of the above is subject to change without further notice. We will break your code!

AQT Tutorials

We provide tutorials on how to use the AQT backends either directly using the JSON definition or with SDKs at the following pages: