量子計算学習ノート - テンソル積3


この記事は「量子コンピュータと量子通信 (オーム社)」の読書ノートです。


ここまででベクトル、線形オペレータのテンソル積が定義された。だがこれらは抽象的なヒルベルト空間上の議論だったので、具体的に取り扱うには表現行列を考えていく必要がある。そのためにはクロネッカー積というものを導入する。

任意のサイズの行列$${M_A=(a_{ij}), M_B=(b_{ij})}$$が与えられたとする。それらのクロネッカー積$${M_A \otimes M_B}$$とは以下のように定義される区分行列である。

$$
M_A \otimes M_B \equiv
\left(\begin{matrix}
a_{11} M_B & a_{12}M_B & \cdots & a_{1m}M_B\\
a_{21} M_B & \ddots&  & \vdots\\
\vdots & & \ddots & \vdots \\
a_{n1} M_B & \cdots & \cdots & a_{nm}M_B
\end{matrix}\right)
$$

実は各空間で表現するためのCONSを決めて、ベクトルや線形オペレータを行列表現したとき、それらのクロネッカー積はそれらのテンソル積に対する表現行列になっていることが確かめられる。これからそれを示そう。

ヒルベルト空間を$${V, W}$$、次元を$${\dim V = n, \dim W = m}$$とし、その中のCONS$${\{|e_i\rang\}, \{|f_i\rang\}}$$を取る。任意のベクトル$${|v\rang \in V, |w\rang \in W}$$に対し、CONS$${\{|e_i\rang\}, \{|f_i\rang\}}$$における表現行列が$${C_v = (v_i), C_w = (w_i)}$$であったとき

$$
C_v \otimes C_w =
\left(
\begin{matrix}
v_1 C_w \\
v_2 C_w \\
\vdots \\
v_n C_w
\end{matrix}
\right)
=
\left(
\begin{matrix}
v_1 w_1 \\
\vdots \\
v_1 w_m \\
v_2 w_1 \\
\vdots \\
v_2 w_m \\
\vdots \\
v_n w_1 \\
\vdots \\
v_n w_m \\
\end{matrix}
\right)
$$

となる。さて目標は、ベクトル同士のクロネッカー積がテンソル積と同じ性質を持っていることを確かめることだった。なので$${C_v \otimes C_w}$$が双線形汎関数$${|v\rang \otimes |w\rang}$$とみなせるかを確かめれば良い。$${|v\rang \otimes |w\rang}$$は$${V^* \times W^*}$$の元を入力として複素数を出力する関数なので、まず入力$${\lang\varphi| \in V^*, \lang\psi| \in W^*}$$を行列表現することを考える。

ベクトル$${|\varphi\rang \in V, |\psi\rang \in W}$$を取り、CONS$${\{|e_i\rang\}, \{|f_i\rang\}}$$に対する表現行列を$${C_\varphi = (\varphi_i), C_\psi = (\psi_i)}$$とする。このとき$${\lang \varphi|, \lang\psi|}$$の表現行列は$${R_\varphi = (\varphi^*_i)^T, R_\psi = (\psi^*_i)^T}$$となる。

表現行列$${R_\varphi, R_\psi}$$のクロネッカー積を考えると

$$
\begin{array}{l}
R_\varphi \otimes R_\psi \\
= (\begin{matrix}
\varphi_1 R_\psi & \varphi_2 R_\psi & \cdots & \varphi_n R_\psi
\end{matrix}) \\
= (\begin{matrix}
\varphi_1 \psi_1 & \cdots & \varphi_1 \psi_m & \varphi_2 \psi_1 & \cdots & \varphi_2 \psi_m & \cdots & \varphi_n \psi_1 & \cdots & \varphi_n \psi_m
\end{matrix})
\end{array}
$$

となる。ここで関数$${f_{C_v \otimes C_w}: V^* \times W^* \to \mathbb{C}}$$を次のように定義する。

$$
f_{C_v \otimes C_w}((R_\varphi, R_\psi)) \equiv (R_\varphi \otimes R_\psi)(C_v \otimes C_w)
$$

このように定義すると、これまでの表現行列から明らかだが関数として$${f_{C_v \otimes C_w} = |v\rang \otimes |w\rang}$$であることがわかる。したがってベクトルのクロネッカー積はベクトルのテンソル積の表現行列になっていることがわかる。

同様のことは線形オペレータに対しても確かめられる。

この記事が気に入ったらサポートをしてみませんか?