$$ \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
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.