$$ \newcommand{\Vec}{\operatorname{vec}} \newcommand{\T}{^\top} \newcommand{\norm}[1]{\left\lVert #1 \right\rVert} \newcommand{\R}{\mathbb{R}} \newcommand{\F}{\mathbb{F}} \newcommand{\bmat}[1]{\begin{bmatrix} #1 \end{bmatrix}} \newcommand{\pd}[2][]{\frac{\partial #1}{\partial #2}} \newcommand{\normal}{\mathcal{N}} \newcommand{\kron}{\otimes} $$ # Kronecker Product and Matrix Vectorization I demand that matrix multiplication take precedence over kronecker product. ## Definitions - $\F$ is some field. In fact many results can be generalized to commutative rings. - $e_i \in \F^n$ is the unit vector with the $i$ coordinate being one. - $A \kron B \in \F^{(mp) \times (nq)}$ such that $(A\kron B)_{pi+k,qj+l} = A_{ij}B_{kl}$ where $A \in \F^{m \times n}$ and $B \in \F^{p \times q}$. Without ambiguity, its $ijkl$ entry is also denoted by $(A\kron B)_{ik,jl}$. - $\Vec(A) = \sum_{j=1}^n e_j \kron Ae_j$ for $A \in \F^{m\times n}$. ## Properties ### Theorem $(A \kron B)(C \kron D) = AC \kron BD$ for compatible matrices. ### Proof $$ ((A \kron B)(C \kron D))_{ik,jl} = \sum_{p,q} (A \kron B)_{ik,pq} (C \kron D)_{pq,jl} = \sum_{p,q} A_{ip} B_{kq} C_{pj} D_{ql} \\ = \sum_p A_{ip} C_{pj} \sum_q B_{kq} D_{ql} = (AC)_{ij} (BD)_{kl} = (AC \kron BD)_{ik,jl} $$ ### Theorem $\Vec(ABC) = (C\T \kron A)\Vec(B)$. ### Proof Let $C \in \F^{m\times n}$. $$ \begin{align*} \Vec(ABC) &= \sum_{j=1}^n e_j \kron ABCe_j = \sum_{j=1}^n e_j \kron AB \sum_{i=1}^m C_{ij}e_i = \sum_{i=1}^m \sum_{j=1}^n C_{ij}e_j \kron ABe_i \\ &= \sum_{i=1}^m C\T e_i \kron ABe_i = (C\T \kron A) \sum_{i=1}^m e_i \kron Be_i = (C\T \kron A) \Vec(B) \end{align*} $$
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up