光量子コンピュータの演算を追いかける（1）: Displacement

量子アニーリング・量子ゲートだけでなく、光量子計算についても勉強していきたいと思います。

$$
\def\bra#1{\mathinner{\left\langle{#1}\right|}}
\def\ket#1{\mathinner{\left|{#1}\right\rangle}}
\def\braket#1#2{\mathinner{\left\langle{#1}\middle|#2\right\rangle}}
\def\ketround#1{\mathinner{\left|{\,#1\,}\right)}}
$$

# はじめに
XANADU社は、[StrawberryFields](https://strawberryfields.readthedocs.io/en/latest/index.html)という光量子を用いた量子計算ソフトウェアを公開しています。光量子による量子計算は、量子ゲートや量子アニーリングとはまた異なった手法を用います。量子ゲートモデルでは、離散的な状態$\ket{0/1}$に対して行列演算を施して時間発展させますが、光量子計算ではコヒーレント状態やスクイーズ状態といった連続状態を扱います。

StrawberryFieldsの[Convention and formulas](https://strawberryfields.readthedocs.io/en/latest/op_conventions.html)では、光量子計算で扱う状態や演算子について解説されています。まずはDisplacement（変位）演算子の計算を追いかけてみたいと思います。具体的に、以下の関係式が成立することを確認します[^2]。

```math
D ^{\dagger} \left( \alpha \right) \hat{a} D \left( \alpha \right) = \hat{a} + \alpha I. 
```

# 生成・消滅演算子
生成・消滅演算子の復習です。生成演算子$\hat{a} ^{\dagger}$と消滅演算子$\hat{a}$は以下の交換関係を満たします。

```math
\left[ \hat{a} , \hat{a} ^{\dagger} \right] \equiv \hat{a} \hat{a} ^{\dagger} - \hat{a} ^{\dagger} \hat{a} = I. 
```
ただし、$I$は恒等演算子を表します。異なる波数${\bf k}$および偏光状態$\lambda$を持つ生成・消滅演算子は交換します。

```math
\left[ \hat{a} _{{\bf k}, \lambda} , \hat{a} _{{\bf k} ^{\prime}, \lambda ^{\prime}} ^{\dagger} \right] = 
\delta _{{\bf k}, {\bf k} ^{\prime}} \delta _{\lambda , \lambda ^{\prime}} I. 
```

# 変位演算子
変位演算子は、生成・消滅演算子を使って以下のように定義されます。

```math
D \left( \alpha \right) = e^{\alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a}}. 
```

前述の通り、

```math
D ^{\dagger} \left( \alpha \right) \hat{a} D \left( \alpha \right) = \hat{a} + \alpha I
```
が成立することを確かめてみたいと思います。なお、上記関係式が成り立つことを前提とすれば、

```math
\begin{align}
D^{\dagger} \left( \alpha \right) \hat{x} D \left( \alpha \right) &= \hat{x} + \sqrt{2\hbar}\Re \left( \alpha \right) I \\
D^{\dagger} \left( \alpha \right) \hat{p} D \left( \alpha \right) &= \hat{p} + \sqrt{2\hbar}\Im \left( \alpha \right) I \\
\end{align}
```
が満たされることは簡単に確認できます[^1]。ただし、

```math
\begin{align}
\hat{x} &\equiv \sqrt{\frac{\hbar}{2}} \left( \hat{a} + \hat{a} ^{\dagger} \right) \\
\hat{p} &\equiv -i \sqrt{\frac{\hbar}{2}} \left( \hat{a} - \hat{a} ^{\dagger} \right) \\
\end{align}
```
です。

## 演算子の指数関数
変位演算子は、生成消滅演算子の指数関数で定義されています。生成・消滅演算子が満たす交換関係から分かるように、$\hat{a}$と$\hat{a}^{\dagger}$は非可換であるため、

```math
D \left( \alpha \right) = e^{\alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a}} \neq e^{\alpha \hat{a} ^{\dagger}} e^{-\alpha ^{\ast} \hat{a}}
```
であることに注意が必要です。指数関数の定義に従い、

```math
e^{\alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a}} = \sum _{k=0} ^{\infty} \frac{\left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k}}{k!}
```
と展開して計算を行います。

### 補題
以下の関係式が成立します。証明については、本記事の最後に示しました。

```math
\hat{a} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k} 
= k\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k-1} + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k} \hat{a}.
```

# 計算過程
系の結果を使って計算を進めます。

```math
\begin{align}
\hat{a} D\left( \alpha \right) 
&= \sum _{k=0} ^{\infty} \frac{\left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k}}{k!} \hat{a}
+ \sum _{k=1} ^{\infty} \frac{k\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k-1}}{k!} \\
&= \sum _{k=0} ^{\infty} \frac{\left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k}}{k!} \hat{a}
+ \alpha \sum _{k=1} ^{\infty} \frac{\left( \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{k-1}}{(k-1)!} \\
&= D\left( \alpha \right) \hat{a} + \alpha D\left( \alpha \right) .
\end{align}
```

左から$D^{\dagger} (\alpha )$を作用させます。

```math
\begin{align}
D ^{\dagger}\left( \alpha \right) \hat{a} D\left( \alpha \right) 
&= D^{\dagger}\left( \alpha \right) \left[ D\left( \alpha \right) \hat{a} + \alpha D\left( \alpha \right) \right] \\
&= \hat{a} + \alpha I. 
\end{align}
```
ただし、$D(\alpha)$がユニタリ演算子[^3]であることを使いました。以上から、関係式が示されました。

# 関係式からわかること
証明した関係式から何が分かるのでしょうか？少々天下りな説明になってしまいますが、変位演算子を真空状態$\ket{0}$[^4]に作用させた状態について考えてみます。関係式を使うと、以下を得ます。

```math
\begin{align}
\hat{a} \left[ D\left( \alpha \right) \ket{0} \right] 
&= D\left( \alpha \right) \hat{a} \ket{0} + \alpha D\left( \alpha \right) \ket{0} \\
&= \alpha D\left( \alpha \right) \ket{0} \quad \because \hat{a} \ket{0} = 0. 
\end{align}
```

さらに、

```math
\begin{align}
\hat{a} D\left( \alpha ^{\prime} \right) \left[ D\left( \alpha \right) \ket{0} \right] 
&= \left[ D\left( \alpha ^{\prime} \right) \hat{a} + \alpha ^{\prime} D\left( \alpha ^{\prime} \right) \right] \left[ D\left( \alpha \right) \ket{0} \right] \\
&= D\left( \alpha ^{\prime} \right) \left[ \hat{a} D\left( \alpha \right) \ket{0} \right]
+ \alpha ^{\prime} \left[ D\left( \alpha ^{\prime} \right) D\left( \alpha \right) \ket{0} \right] \\
&= \left( \alpha + \alpha ^{\prime} \right) \left[ D\left( \alpha ^{\prime} \right) D\left( \alpha \right) \ket{0} \right]
\end{align}
```

です。上記結果から分かるように、$D(\alpha) \ket{0}$は消滅演算子$\hat{a}$の固有状態になっています。この固有状態を$\ket{\alpha}$で表し、コヒーレント状態と呼びます。

```math
\ket{\alpha} \equiv D(\alpha) \ket{0}, \quad \hat{a} \ket{\alpha} = \alpha \ket{\alpha}. 
```

---

# 補足
## 補題の証明
数学的帰納法で証明します。生成消滅演算子の交換関係を利用して、$\hat{a}$を右側に移動させます。

$k=0$の場合は自明です。$k=1$のとき、

```math
\begin{align}
\hat{a} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) 
&= \alpha \hat{a} \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \hat{a} \\
&= \alpha \left[ \hat{a}, \hat{a} ^{\dagger} \right] + \alpha \hat{a} ^{\dagger} \hat{a} - \alpha ^{\ast} \hat{a} \hat{a} \\
&= \alpha I + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \hat{a} 
\end{align}
```
です。$k=n$のとき、

```math
\hat{a} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n} 
= n\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n-1} + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n} \hat{a}    
```
が成立すると仮定し、$k=n+1$の場合を計算します。

```math
\begin{align}
\hat{a} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n+1} 
&= \hat{a} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n} \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \\
&= \left[ n\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n-1} + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n} \hat{a} \right] \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \\
&=  n\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n}
+ \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n} \left[ \alpha I + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \hat{a} \right] \\
&=  (n+1)\alpha \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n}
+ \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) ^{n+1} \hat{a} .
\end{align}
```

$k=n+1$の場合に成立するため、数学的帰納法により証明できました。

## 変位演算子がユニタリ演算子であることの証明

以下を確認します。

```math
D^{\dagger} \left( \alpha \right) D\left( \alpha \right) = I. 
```

先に、$\hat{\chi} ^{\ast} \equiv \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a}$と$\hat{\chi} ^{\dagger}$が交換することを確認しておきます。

```math
\begin{align}
\left[ \hat{\chi}, \hat{\chi} ^{\dagger} \right] 
&= \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \left( \alpha ^{\ast} \hat{a}  - \alpha \hat{a} ^{\dagger}  \right)
- \left( \alpha ^{\ast} \hat{a}  - \alpha \hat{a} ^{\dagger}  \right) \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) \\
&= \left[ 
\left| \alpha \right| ^{2} \left( \hat{a} \hat{a} ^{\dagger} + \hat{a} ^{\dagger} \hat{a} \right) 
- \left( \alpha ^{\ast} \alpha ^{\ast} \hat{a} \hat{a} + \alpha \alpha \hat{a} ^{\dagger} \hat{a} ^{\dagger} \right) 
 \right] - \left[ 
\left| \alpha \right| ^{2} \left( \hat{a} \hat{a} ^{\dagger} + \hat{a} ^{\dagger} \hat{a} \right) 
- \left( \alpha ^{\ast} \alpha ^{\ast} \hat{a} \hat{a} + \alpha \alpha \hat{a} ^{\dagger} \hat{a} ^{\dagger} \right) 
 \right] \\
&= 0. 
\end{align}
```

次に、任意の交換する2つの演算子$\hat{A}$および$\hat{B}$が、以下の関係式を満たすことを示します。

```math
e^{\hat{A} + \hat{B}} = e^{\hat{A}} e^{\hat{B}}, \quad \left[ \hat{A}, \hat{B} \right] = 0. 
```
定義にしたがって左辺を展開すると、

```math
\begin{align}
e^{\hat{A} + \hat{B}} &= \sum _{k=0}^{\infty} \frac{\left( \hat{A} + \hat{B} \right) ^{k}}{k!}  \\
&= \frac{1}{0!} + \frac{\hat{A} + \hat{B}}{1!} + \frac{\hat{A}^{2} + \hat{B} ^{2} + \hat{A}\hat{B} + \hat{B}\hat{A}}{2!} + \cdots
\end{align}
```
となります。ここで、$\hat{A}\hat{B} = \hat{B} \hat{A}$を利用して、積の順序を入れ替えることができます。結果的に、$\hat{A} ^{m} \hat{B} ^{k-m}$という項は${}_k C_m$重に縮退します。したがって、

```math
\begin{align}
e^{\hat{A} + \hat{B}} &= \sum _{k=0}^{\infty} \frac{\left( \hat{A} + \hat{B} \right) ^{k}}{k!}  \\
&= \sum _{k=0}^{\infty} \sum _{m=0} ^{k} \frac{1}{k!}\frac{k!}{m!(k-m)!} \hat{A} ^{m} \hat{B} ^{k-m} \\
&= \sum _{k=0}^{\infty} \sum _{m=0} ^{k} \frac{\hat{A} ^{m}}{m!} \frac{\hat{B} ^{k-m}}{(k-m)!} \\
&= \sum _{m=0}^{\infty} \sum _{k=m} ^{\infty} \frac{\hat{A} ^{m}}{m!} \frac{\hat{B} ^{k-m}}{(k-m)!} \\
&= \sum _{m=0}^{\infty} \sum _{l=0} ^{\infty} \frac{\hat{A} ^{m}}{m!} \frac{\hat{B} ^{l}}{l!} \\
&= e^{\hat{A}} e^{\hat{B}}
\end{align}
```
を得ます。ここで、先に確認した交換関係

```math
\hat{\chi} \hat{\chi} ^{\dagger} = \hat{\chi} ^{\dagger} \hat{\chi} 
```
を利用すると、

```math
\begin{align}
D^{\dagger} \left( \alpha \right) D\left( \alpha \right) 
&= e^{\hat{\chi} ^{\dagger}} e^{\hat{\chi}} \\
&= e^{\hat{\chi} ^{\dagger} + \hat{\chi}} \\
&= e^{\left( \alpha ^{\ast} \hat{a} - \alpha \hat{a} ^{\dagger}\right) + \left( \alpha \hat{a} ^{\dagger} - \alpha ^{\ast} \hat{a} \right) } \\
&= Ie^{0} = I
\end{align}
```
となり、$D(\alpha)$がユニタリ演算子であることが証明できました。




[^1]: $\Re (z)$および$\Im (z)$は、それぞれ複素数$z$の実部・虚部を表します。
[^2]: [Convension and formulas](https://strawberryfields.readthedocs.io/en/latest/conventions/gates.html)
[^3]: $U$がユニタリ演算子であるとは、$U^{\dagger}U = UU^{\dagger} = I$を満たすことを意味します。
[^4]: 量子ゲートの話で登場する$\ket{0}$および$\ket{1}$とは異なります。ここで登場する$\ket{0}$は真空状態と呼ばれ、光子数0の状態を意味します。光子が存在しない状態ですので、消滅演算子を作用させると0になります: $\hat{a} \ket{0} = 0$.