張量積(Tensor product)

作者:
林昱誠(Yu-Cheng Lin)、徐育兆
閱讀時間:
5
分鐘
# 張量積(Tensor product) Tensor product(張量積),又稱為 Kronecker product (克羅內克積),是一種數學運算,它可以將兩個向量或矩陣結合成一個更高維度的向量或矩陣。 ## 定義 今天有兩個矩陣(或向量)A 和 B: \begin{split}A=\begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix}\space \text{and}\space B= \begin{bmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{bmatrix} \end{split} 則他們的 tensor product,記做$A\otimes B$,為 \begin{split} A\otimes B &= \begin{bmatrix} a_{11}B & a_{12}B\\ a_{21}B & a_{22}B \end{bmatrix} = \begin{bmatrix} a_{11} \begin{bmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{bmatrix} & a_{12} \begin{bmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{bmatrix} \\ a_{21} \begin{bmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{bmatrix} & a_{22} \begin{bmatrix} b_{11} & b_{12} \\ b_{21} & b_{22} \end{bmatrix} \end{bmatrix} \\ &= \begin{bmatrix} a_{11}b_{11} & a_{11}b_{12} & a_{12}b_{11} & a_{12}b_{12} \\ a_{11}b_{21} & a_{11}b_{22} & a_{12}b_{21} & a_{12}b_{22} \\ a_{21}b_{11} & a_{21}b_{12} & a_{22}b_{11} & a_{22}b_{12} \\ a_{21}b_{21} & a_{21}b_{22} & a_{22}b_{21} & a_{22}b_{22} \end{bmatrix} \end{split}
範例:
\begin{split}A=\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}\space \text{and}\space B= \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \end{split} 則 \begin{split} A\otimes B &= \begin{bmatrix} 0B & 1B \\ 1B & 0B \end{bmatrix} = \begin{bmatrix} \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} & \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \\ \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} & \begin{bmatrix} 0 & 0 \\ 0 & 0 \end{bmatrix} \end{bmatrix} \\ &= \begin{bmatrix} 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \end{bmatrix} \end{split}
## 在量子計算中的應用 在量子計算中,Tensor product 可以描述多個量子位元(Qubits)的狀態。當我們有兩個 qubits 時,每個 qubits 的狀態可以用一個向量來表示,我們可以透過 tensor product 將兩個向量整合成用一個向量表達。 例如,qubit A處於狀態 $|0\rangle$ 表示為: \begin{gather}|Q_A\rangle= \begin{pmatrix} 1 \\ 0 \end{pmatrix} \end{gather} qubit B 處於狀態 $|1\rangle$ 表示為 \begin{gather}|Q_A\rangle= \begin{pmatrix} 0 \\ 1 \end{pmatrix} \end{gather} 今天我如果要同時表達這兩個 qubits 的狀態,就要用這樣的數學符號做表示: \begin{gather}|0\rangle \otimes |1\rangle =|0\rangle|1\rangle=|01\rangle\end{gather} 要改用矩陣表達時,就要用 tensor product: \begin{gather} |Q_A\rangle \otimes |Q_B\rangle = |0\rangle \otimes |1\rangle=\begin{pmatrix} 1 \\ 0 \end{pmatrix} \otimes \begin{pmatrix} 0 \\ 1 \end{pmatrix} = \begin{pmatrix} 1 \cdot 0 \\ 1 \cdot 1 \\ 0 \cdot 0 \\ 0 \cdot 1 \end{pmatrix} = \begin{pmatrix} 0 \\ 1 \\ 0 \\ 0 \end{pmatrix} \end{gather} 這個四維向量代表一個二 qubits系統的狀態。
本文章採用創用 CC「姓名標示-相同方式分享 4.0 國際」授權條款
課程目錄