logo

行列のクロネッカー積 📂行列代数

行列のクロネッカー積

定義1

二つの行列 A=[aij]Mm×nA = [a_{ij}] \in M_{m \times n}, BMp×qB \in M_{p \times q}クロネッカー積Kronecker productを次のように定義する。

AB:=[a11Ba1nBam1BamnB]Mmp×nq A \otimes B := \begin{bmatrix} a_{11} B & \cdots & a_{1n} B \\ \vdots & \ddots & \vdots \\ a_{m1} B & \cdots & a_{mn} B \end{bmatrix} \in M_{mp \times nq}

説明

二つの線形変換のテンソル積に対する行列表現は、それぞれの線形変換の行列表現のクロネッカー積で定義される。

乗法multiplicationとは違い、行列のサイズに関係なくうまく定義される。

性質

行列 A,B,C,DA, B, C, Dと定数 kkに対して、以下が成立する。

  • 定数倍: (kA)B=k(AB)=A(kB)(kA) \otimes B = k (A \otimes B) = A \otimes (kB) \\[0.5em]
  • 行列の乗法: (AB)(CD)=(AC)(BD)(A \otimes B) (C \otimes D) = (AC) \otimes (BD) \\[0.5em]
  • 結合法則: (AB)C=A(BC)(A \otimes B) \otimes C = A \otimes (B \otimes C) \\[0.5em]
  • 分配法則: A(B+C)=AB+ACA \otimes ( B + C ) = A \otimes B + A \otimes C \\[0.5em]
  • 転置: (AB)T=ATBT(A \otimes B)^{T} = A^{T} \otimes B^{T} \\[0.5em]
  • トレース: tr(AB)=tr(A)tr(B)\tr(A \otimes B) = \tr(A) \tr(B) \\[0.5em]
  • 逆行列: (AB)1=A1B1(A \otimes B)^{-1} = A^{-1} \otimes B^{-1}
    • ABA \otimes B可逆であれば、    \iff AABBが可逆であれば、\\[0.5em]
  • 行列式: det(AB)=det(A)ndet(B)p,AMn×n,BBp×p\det (A \otimes B) = \det(A)^{n} \det(B)^{p},\quad A\in M_{n \times n}, B \in B_{p \times p} \\[0.5em]

行列の乗法と同様に、交換法則は成立しない。単純に A=[abcd]A = \begin{bmatrix} a & b \\ c & d \end{bmatrix}単位行列 I2I_{2}の乗法を見れば、

AI2=[a0b00a0bc0d00c0d][ab00cd0000ab00cd]=I2A A \otimes I_{2} = \begin{bmatrix} a & 0 & b & 0 \\ 0 & a & 0 & b \\ c & 0 & d & 0 \\ 0 & c & 0 & d \end{bmatrix} \ne \begin{bmatrix} a & b & 0 & 0 \\ c & d & 0 & 0 \\ 0 & 0 & a & b \\ 0 & 0 & c & d \end{bmatrix} = I_{2} \otimes A


  1. 김영훈·허재성, 양자 정보 이론 (2020), p37 ↩︎