量子情報理論の基本：物理的に実現可能な時間発展

$$
\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}}
$$

## はじめに

[前回の記事](https://qiita.com/SamN/items/4f3e3d12e307e084b2f2)で、注目している部分系の時間発展は「Kraus表現」で記述できるということを説明しました。一方で、密度演算子は、正値[^1]でトレースが１という性質を持っています。したがって、時間発展もこの性質を保存しながら進展するはずですが、これと「Kraus表現」の関係が、いまいちしっくりきていませんでした。密度演算子の時間発展に要請される「CPTPマップ」というものを導入すると理解できそうなので、勉強してみました。今回はその勉強メモです。

参考にさせていただいたのは、以下の文献です。

* [ニールセン、チャン「量子コンピュータと量子通信（３）」オーム社（2005年）](https://www.ohmsha.co.jp/book/9784274200090/)
* [富田「量子情報工学」森北出版（2017年）](https://www.morikita.co.jp/books/book/3109)
* [石坂、小川、河内、木村、林「量子情報科学入門」共立出版（2012年）](https://www.kyoritsu-pub.co.jp/bookdetail/9784320122994)
* [堀田「量子情報と時空の物理（第２版）」サイエンス社（2019年）](https://www.saiensu.co.jp/search/?isbn=4910054700596&y=2019)

[^1]: 「正値」は、「半正定値」という言い方が数学的には正確なのだと思いますが（多分）、「正値」もしくは「正定値」と書いてある文献が多そうです。

## 問題の整理

周りと相互作用していない「閉じた系」（典型例は宇宙全体）の時間発展はユニタリ変換で記述されるのですが、量子系に起こり得る時間発展はそれに限りません。例えば、周りと相互作用している「開いた系」（全体の系に対する部分系といったり、注目系といったりします）に注目すると、その時間発展は一般に非ユニタリ変換になります。どう記述されるのか、少し整理してみます。以下に示す３つの考え方があって、微妙に違うことを言っているのですが、実はすべて互いに同値であることを、この後で証明してみます。まず、その３つについて、順に見ていきます。

### (1)ユニタリ変換に対する部分トレース

注目系と環境系からなる合成系（全体として閉じている系）を考えます。注目系の初期状態[^2]を$\rho$、環境系の初期状態を$\rho_E$とすると、合成系の時間発展は、以下のようなユニタリ変換で記述できます。

```math
U(\rho \otimes \rho_E) U^{\dagger}
```
このとき、注目系の時間発展$\Gamma(\rho)$はどうなるかというと、環境系について部分トレースをとれば良いのでした([前々回の記事](https://qiita.com/SamN/items/f9d691928a7fa1a2572f)参照)。すなわち、

```math
\Gamma(\rho) = Tr_E(U(\rho \otimes \rho_E) U^{\dagger})
```

です。これが１つ目の考え方です。

[^2]: 「状態」と言っていますが正確には「密度演算子」です。量子状態を密度演算子に置き換えても量子力学の理論構築は可能なので、しばしば、密度演算子のことを状態と言うようです。どっちのことを言っているのかは文脈で容易に判断できるので、混乱しないですよね。

### (2)完全性を満たすKraus演算子によるKraus表現

２つ目は[前回の記事](https://qiita.com/SamN/items/4f3e3d12e307e084b2f2)で説明したKraus表現です。式で表すと、

```math
\Gamma(\rho) = \sum_{i} M_i \rho M_i^{\dagger}
```

です。ここで、$M_i$は、

```math
\sum_{i} M_i^{\dagger} M_i = I
```

のような完全性の関係を満たします。

### (3)CPTPマップ

３つ目は、今回のキーワードである「CPTPマップ」です。「はじめに」で、密度演算子には「正値でトレースが１」という性質があったので、時間発展してもこの性質は保存されるはず、と言いましたが、実は、密度演算子$\rho$の時間発展$\rho \rightarrow \Gamma(\rho)$には、もう少し強い制約条件が必要になります。その制約は以下の３つです。

* (3-a)線形性
* (3-b)トレース保存性
* (3-c)完全正値性

これらを満たす時間発展（つまり、写像＝マップ）のことを「CPTPマップ」（completely-positive trace-preserving map）と呼んでいます。では、各性質がどのような意味で満たされるはず、と考えられているのか、以下で見ていきます。

#### (3-a)線形性

```math
\Gamma(p \rho_1 + (1-p) \rho_2) = p \Gamma(\rho_1) + (1-p) \Gamma(\rho_2)  \tag{1}
```

という線形性[^3]が成り立ちます。これを課す理由は以下のように説明できます。いま、確率pで表、確率(1-p)で裏が出るコインを用意し、表が出たら状態$\rho_1$、裏が出たら状態$\rho_2$を出力する装置を考えます。各々の状態出力に対して、$\Gamma$で記述される時間発展の後、物理量$A$を測定し、その平均値（つまり期待値）を計算します。一つの考え方は、$\rho_1$が飛び出してきたときの平均値$Tr(A\rho_1)$と$\rho_2$が飛び出してきたときの平均値$Tr(A\rho_2)$を求めて、確率pと確率(1-p)で比例配分するというものです。つまり、

```math
p Tr(A \Gamma(\rho_1)) + (1-p) Tr(A \Gamma(\rho_2))  \tag{2} 
```

です。別の考え方もあります。$\rho_1$と$\rho_2$がp:(1-p)の割合で混じり合ったアンサンブルの時間発展に対して、物理量$A$を測定して平均を求めるというものです。つまり、

```math
Tr(A \Gamma(p \rho_1 + (1-p) \rho_2) )  \tag{3}
```

です。任意の$A$について式(2)と式(3)は同じ値にならないといけないので、結局、式(1)が成り立ちます。これは、$\rho$が３個以上の場合にも拡張できて、$\sum_{i} c_{1} = 1$となる$\\{ c_{i}\\}$に対して、

```math
\Gamma( \sum_{i} c_{i} \rho_{i}) = \sum_{i} c_{i} \Gamma(\rho_{i})
```

が成り立ちます。

[^3]: $\rho_i$にかかっている係数の総和が１になる形なので、「凸線形性」とか「アフィン性」という言い方が正しいです。が、トレースが１で正値である密度演算子に対する「アフィン性」は、線形性と同値ということが証明できるようです（参考文献[「量子情報科学入門」](https://www.kyoritsu-pub.co.jp/bookdetail/9784320122994)）。なので、「線形性」といっても、大丈夫らしいです。

#### (3-b)トレース保存性

密度演算子のトレースが１になるのは、確率の総和が１になることに対応していたので、時間発展してもこの総和が不変という条件は、自然な制約です。すなわち、

```math
Tr (\Gamma(\rho)) = Tr(\rho)
```

です。

#### (3-c)完全正値性

密度演算子$\rho$は時間発展しても密度演算子なので、$\rho$が正値（$\rho \geq 0$）ならば、$\Gamma(\rho)$も正値（$\Gamma(\rho) \geq 0$）です[^4]。正値という性質はすべての確率値が0以上であるということを意味していたので、この性質が時間発展で保存されるのは自然です。ですが、これだけでは十分ではありません。周りの環境系も含めた全体を考えたとしても正値である必要があります。周りの環境系を追加しただけで、なぜか負の確率がどこかから（計算上）発生してしまったというのは、とてもおかしな話なので、この要請は自然だと思います。完全正値性は、以下のように表現されます。

```math
\rho \geq 0 \Rightarrow (\Gamma \otimes I_E)(\rho) \geq 0
```

ここで、$I_E$は環境系における恒等演算子です。

[^4]: 任意の$\ket{\phi}$に対して$\bra{\phi} A \ket{\phi} \geq 0$が成り立つとき（つまり、正値のとき）、$A \geq 0$と書きます。

## 同値であることの証明

それでは、密度演算子の時間発展に関する３つの考え方が、互いに同値であることを証明してみます[^5]。

* (1)ユニタリ変換に対する部分トレース
* (2)完全性を満たすKraus演算子によるKraus表現
* (3)CPTPマップ


[^5]: 参考文献を見ながら、自分なりに理解した内容をなるべくわかりやすく噛み砕いて整理してみたつもりです。が、噛み砕きすぎて、不正確な説明があったり、誤解している箇所があるかもしれません。ご指摘いただけるとありがたいです。


### (1)⇛(2)

注目系の状態を$\rho$、環境系の状態を$\ket{0}_E\bra{0}_E$とします[^6]。このとき、注目系に対する時間発展は、全体系に対するユニタリ変換の部分トレースなので、

```math
\Gamma(\rho) = Tr_E (U (\rho \otimes \ket{0}_E \bra{0}_E) U^{\dagger})
```

です。これは、環境系でのある正規直交基底$\\{ \ket{j}_E \\}$を使って、

```math
\begin{align}
\Gamma(\rho) &= \sum_{j} \bra{j}_E U (\rho \otimes \ket{0}_E \bra{0}_E) U^{\dagger} \ket{j}_E \\
&= \sum_{j} \bra{j}_E U \ket{0}_E \rho \bra{0}_E U^{\dagger} \ket{j}_E
\end{align}
```

のように書き直せます。ここで、

```math
M_{j} \equiv \bra{j}_{E} U \ket{0}_{E}
```

と定義される演算子$M_j$を使うと、

```math
\Gamma(\rho) = \sum_{j} M_{j} \rho M_{j}^{\dagger}
```
となります。さらに、密度演算子のトレースは１なので、

```math
1 = Tr (\Gamma(\rho)) = Tr(\sum_{j} M_{j} \rho M_{j}^{\dagger}) = Tr(\sum_{j} M_j^{\dagger} M_{j} \rho)
```

です。これは、任意の$\rho$について成り立っているので、

```math
\sum_{j} M_j^{\dagger} M_{j} = I_E
```

と言えます。つまり、$\\{ M_{j} \\}$は完全性を満たしています。ということでKraus演算子によるKraus表現が導けました。

[^6]: ここで、環境系の状態を$\ket{0}_E$としましたが、任意の純粋状態を仮定して良いです（と思います）。また、環境系が混合状態になっている場合も適当に純粋化できるので、そこから議論を進める想定で良いのだと思います。

### (2)⇛(1)

Kraus演算子の完全性から、逆に$U$がユニタリであることを示します。注目系の２つの状態$\ket{\psi}$と$\ket{\phi}$に対応した、合成系の２つの状態$\ket{\psi}\ket{0}_E$と$\ket{\phi}\ket{0}_E$があったとします。この内積（$\bra{\psi}\bra{0}_E \ket{\phi}\ket{0}_E = \braket{\psi}{\phi}$）が変換$U$に対して不変であることが言えれば、$U$はユニタリです。やってみます。

```math
\begin{align}
\bra{\psi}\bra{0}_E U^{\dagger} U \ket{\phi} \ket{0}_E &=
\sum_{j} \bra{\psi} \bra{0}_E U^{\dagger} \ket{j}_E \bra{j}_E \ket{\phi} \\
&= \sum_{j} \bra{\psi} M_{j}^{\dagger} M_{j} \ket{\phi} = \braket{\psi}{\phi}
\end{align}
```

というわけで、$U$がユニタリであることが証明できました（最後の行でKraus演算子の完全性関係を使いました）。

### (2)⇛(3)

```math
\Gamma(\rho) = \sum_{j} M_{j} \rho M_{j}^{\dagger}, \space \sum_{j} M_{j}^{\dagger} M_{j} = I
```

を前提にCPTPマップの３つの性質：(3-a)線形性、(3-b)トレース保存性、(3-c)完全正値性を導きます。

まず、(3-a)線形性は、

```math
\begin{align}
\Gamma(p\rho_1+(1-p)\rho_2)
&= \sum_{j} M_{j} (p \rho_1 + (1-p) \rho_2) M_{j}^{\dagger} \\
&= p\sum_{j} M_{j} \rho_1 M_{j}^{\dagger}+(1-p)\sum_{j} M_{j} \rho_2 M_{j}^{\dagger} \\
&= p \Gamma(\rho_1) + (1-p) \Gamma(\rho_2)
\end{align}
```

次に、(3-b)トレース保存性は、

```math
Tr (\Gamma(\rho) ) = Tr ( \sum_{j} M_{j} \rho M_{j}^{\dagger} ) = Tr ( \sum_{j} M_{j}^{\dagger} M_{j} \rho) = Tr(\rho)
```

で各々成り立つことがわかります。

(3-c)完全正値性は、任意の$\ket{\phi}$に対して、

```math
\bra{\phi} \rho \ket{\phi} \geq 0 \Rightarrow \bra{\phi} (\Gamma \otimes I_E)(\rho) \ket{\phi}
```

が成り立てば、証明できたことになります。

```math
\begin{align}
\bra{\phi} (\Gamma \otimes I_E)(\rho) \ket{\phi}
&= \bra{\phi} \sum_{j} (M_{j}^{\dagger} \otimes I_E) \rho (M_{j} \otimes I_E) \ket{\phi} \\
&= \bra{\phi} \sum_{j} M_{j}^{\dagger} \rho M_{j} \ket{\phi} \\
&= \sum_{j} \bra{\phi} M_{j}^{\dagger} \rho M_{j} \ket{\phi}
\end{align}
```

ここで、$M_{j} \ket{\phi} \equiv \ket{\tilde{\phi}_j}$と定義すると、

```math
\bra{\phi} (\Gamma \otimes I_E)(\rho) \ket{\phi} = \sum_{j} \bra{\tilde{\phi}_j} \rho \ket{\tilde{\phi}_j}
```

となり、右辺の和の中身は任意の状態に対して正値となるので、

```math
\bra{\phi} (\Gamma \otimes I_E)(\rho) \ket{\phi} \geq 0
```

となります。これで完全正定値性を満たすことが証明できました。

### (3)⇛(2)

この証明は少し回りくどいです。注目系および環境系の正規直交基底を各々$\ket{i}_S,\space \ket{i}_E$とし、その合成系のある状態$\ket{\alpha}$を、以下のように用意します（注目系に対して同じ次元の環境系を持ってきて、こんな状態を作る、と思ってください。見ての通り注目系と環境系で最大にエンタングルした状態です）。

```math
\ket{\alpha} = \sum_{i} \ket{i}_S \ket{i}_E
```

これに対応した密度演算子$\ket{\alpha} \bra{\alpha}$にCPTPマップ$\Gamma \otimes I_E$を施したものを$\sigma$とします。

```math
\sigma = (\Gamma \otimes I_E) (\ket{\alpha} \bra{\alpha})
```

注目系の任意の状態$\ket{\psi}$を、

```math
\ket{\psi} = \sum_{j} c_{j} \ket{j}_S
```

のように書いて、これに対応した環境系の状態を、

```math
\ket{\tilde{\psi}} = \sum_{j} c_{j}^{*} \ket{j}_E
```

と定義します。この環境系の状態で$\sigma$をはさむと、

```math
\begin{align}
\bra{\tilde{\psi}} \sigma \ket{\tilde{\psi}}
&= \bra{\tilde{\psi}} \sum_{i,j} \Gamma(\ket{i}_S \bra{j}_S) \otimes \ket{i}_E \bra{j}_E \ket{\tilde{\psi}} \\
&= \sum_{i,j} c_{i} c_{j}^{*} \Gamma(\ket{i}_S \bra{j}_S) \\
&= \Gamma(\ket{\psi} \bra{\psi})  \tag{4}
\end{align}
```

が成り立ちます。一方、$\sigma$はエルミートなので、

```math
\sigma = \sum_{i} \ket{s_i} \bra{s_i}  \tag{5}
```

のようにスペクトル分解でき（ここで、$\ket{s_i}$は、固有値を含んだ状態と思ってください。なので、ノルム１ではないです）、$M_{i}$を、

```math
M_{i} \equiv \braket{\tilde{\psi}}{s_i}  \tag{6}
```

と定義します。式(5)を式(4)に代入して、式(6)の定義を使うと、

```math
\begin{align}
\sum_{i} \braket{\tilde{\psi}}{s_i} \braket{s_i}{\tilde{\psi}} &= \Gamma(\ket{\psi} \bra{\psi})  \\
\sum_{i} M_{i} \ket{\psi} \bra{\psi} M_{i}^{\dagger} &= \Gamma(\ket{\psi} \bra{\psi})  \tag{7}
\end{align}
```

となります。注目系の任意の状態、例えば、$\ket{\psi^{\prime}}, \space \ket{\psi^{\prime \prime}} \cdots$について、式(7)は成り立つので、

```math
\rho = p \ket{\psi} \bra{\psi} + p^{\prime} \ket{\psi^{\prime}} \bra{\psi^{\prime}} + p^{\prime \prime} \ket{\psi^{\prime \prime}} \bra{\psi^{\prime \prime}} + \cdots
```

とおくと、式(7)より、

```math
\Gamma(\rho) = \sum_{i} M_{i} \rho M_{i}^{\dagger}
```

が成り立ちます。ここで、左辺のトレースは１なので、右辺のトレースが１だとすると、$M_{i}$の完全性、

```math
\sum_{i} M_{i}^{\dagger} M_{i} = I
```

が導けます。これで、すべて証明ができたことになります。


## 補足：入力状態と出力状態が違う空間の場合

いままでの説明は、入力状態$\rho$と出力状態$\Gamma(\rho)$が同じヒルベルト空間上で定義される場合でした。より一般的には、違う場合もあり得ます。例えば、「光子Aを電子Bにぶつけ、散乱した電子を観測する等」といった場合です。この場合、入力の注目系と出力の注目系と環境系の全体からなる合成系に対して、上と同様の議論をすれば良いようです。数式記号がややこしくなるだけで本質は変わらないので（と思われるので）、説明省略しました。あしからず。


## おわりに

量子回路で表現できる状態の変化は、基本的にはユニタリに限定されます（測定を除き）。これは周りと全く相互作用していない、理想的な量子コンピュータを使った量子計算に相当します。が、当然、現実の量子コンピュータはノイズの影響を受けながら計算を進めるので、誤り訂正の技術が重要になります。また、量子通信の技術を考えても、現実的にはノイズやエネルギーの散逸のような現象がある中で、いかに実用レベルにもっていくかということが課題です。そういう意味で、今回のお話はとても大事な基礎知識に関わるものだと思います。が、少々抽象的でした。

次回は、より実用的な知識につなげるため、現実に近い量子系の時間発展（「量子チャネル」とか「量子操作」とか呼ばれる話題）について実例を上げながら、さらに理解を進めてみたいと思います。

以上