Skip to content

Kronecker Product


Definition

Let A=(aij)A=(a_{ij}) be an m×nm\times n matrix and BB a p×qp\times q matrix. The Kronecker product A⊗BA\otimes B is the mp×nqmp\times nq block matrix

A⊗B=(a11B⋯a1nB⋮⋱⋮am1B⋯amnB),A\otimes B=\begin{pmatrix}a_{11}B&\cdots&a_{1n}B\\\vdots&\ddots&\vdots\\a_{m1}B&\cdots&a_{mn}B\end{pmatrix},

whose (i,j)(i,j) block is the scalar multiple aijBa_{ij}B. No compatibility of sizes is required.


Interpretation

Unlike the ordinary matrix product, the Kronecker product is defined for matrices of any sizes, and the dimensions multiply: every entry of AA is replaced by a whole copy of BB. Entry by entry, (A⊗B)(i−1)p+k, (j−1)q+l=aijbkl(A\otimes B)_{(i-1)p+k,\,(j-1)q+l}=a_{ij}b_{kl}.

The 4 by 4 matrices A kron B and B kron A for the example below, divided into 2 by 2 blocks labelled 1B, 2B, 3B, 4B and 0A, 1A, 1A, 0A; the two arrangements differ.

The figure uses A=(1234)A=\begin{pmatrix}1&2\\3&4\end{pmatrix} and B=(0110)B=\begin{pmatrix}0&1\\1&0\end{pmatrix} from the examples. In A⊗BA\otimes B each entry aija_{ij} becomes the block aijBa_{ij}B; in B⊗AB\otimes A each entry bklb_{kl} becomes bklAb_{kl}A. Both are 4×44\times4 with the same entries, but arranged differently, so the product is not commutative.

It is the natural tool for linear maps acting on matrices or on two indices at once.

The product is not commutative: A⊗BA\otimes B and B⊗AB\otimes A have the same size and the same entries, but in a different arrangement. They differ by a reordering of rows and columns (they are similar via a permutation matrix when both factors are square).


Key Results

  • Bilinear and associative: (A+A′)⊗B=A⊗B+A′⊗B(A+A')\otimes B=A\otimes B+A'\otimes B, (cA)⊗B=c(A⊗B)(cA)\otimes B=c(A\otimes B), (A⊗B)⊗C=A⊗(B⊗C)(A\otimes B)\otimes C=A\otimes(B\otimes C).
  • Mixed product: (A⊗B)(C⊗D)=(AC)⊗(BD)(A\otimes B)(C\otimes D)=(AC)\otimes(BD) whenever ACAC and BDBD are defined.
  • (A⊗B)⊤=A⊤⊗B⊤(A\otimes B)^{\top}=A^{\top}\otimes B^{\top}; if A,BA,B are invertible, (A⊗B)−1=A−1⊗B−1(A\otimes B)^{-1}=A^{-1}\otimes B^{-1}.
  • For AA (n×nn\times n) with eigenvalues λi\lambda_i and BB (p×pp\times p) with eigenvalues μk\mu_k, the eigenvalues of A⊗BA\otimes B are the npnp products λiμk\lambda_i\mu_k; if Ax=λxA\boldsymbol{x}=\lambda\boldsymbol{x} and By=μyB\boldsymbol{y}=\mu\boldsymbol{y} then (A⊗B)(x⊗y)=λμ (x⊗y)(A\otimes B)(\boldsymbol{x}\otimes\boldsymbol{y})=\lambda\mu\,(\boldsymbol{x}\otimes\boldsymbol{y}).
  • Hence the determinant and trace satisfy det⁡(A⊗B)=(det⁡A)p(det⁡B)n\det(A\otimes B)=(\det A)^p(\det B)^n and tr⁡(A⊗B)=tr⁡A⋅tr⁡B\operatorname{tr}(A\otimes B)=\operatorname{tr}A\cdot\operatorname{tr}B. For any sizes, the rank satisfies rank⁡(A⊗B)=rank⁡A⋅rank⁡B\operatorname{rank}(A\otimes B)=\operatorname{rank}A\cdot\operatorname{rank}B.

Beyond the course

Econometrics texts often pair the Kronecker product with the vec operator, which stacks the columns of a matrix into one long vector. The vec operator is not part of Math V.


Examples

A 4×44\times4 product. For A=(1234)A=\begin{pmatrix}1&2\\3&4\end{pmatrix} and B=(0110)B=\begin{pmatrix}0&1\\1&0\end{pmatrix},

A⊗B=(0102102003043040),B⊗A=(0012003412003400).A\otimes B=\begin{pmatrix}0&1&0&2\\1&0&2&0\\0&3&0&4\\3&0&4&0\end{pmatrix},\qquad B\otimes A=\begin{pmatrix}0&0&1&2\\0&0&3&4\\1&2&0&0\\3&4&0&0\end{pmatrix}.

The two differ. Checks: the trace is 0=tr⁡A⋅tr⁡B=5⋅00=\operatorname{tr}A\cdot\operatorname{tr}B=5\cdot0, and det⁡(A⊗B)=(−2)2(−1)2=4\det(A\otimes B)=(-2)^2(-1)^2=4.

Vectors. For x=(1,2)⊤\boldsymbol{x}=(1,2)^{\top} and y=(3,4,5)⊤\boldsymbol{y}=(3,4,5)^{\top}, x⊗y=(3,4,5,6,8,10)⊤\boldsymbol{x}\otimes\boldsymbol{y}=(3,4,5,6,8,10)^{\top}: the block 1⋅y1\cdot\boldsymbol{y} followed by the block 2⋅y2\cdot\boldsymbol{y}.

Block diagonal. I2⊗B=(BOOB)I_2\otimes B=\begin{pmatrix}B&O\\O&B\end{pmatrix}, whereas B⊗I2B\otimes I_2 replaces each entry bklb_{kl} by the block bklI2b_{kl}I_2; here that is (OI2I2O)\begin{pmatrix}O&I_2\\I_2&O\end{pmatrix}.


Prerequisites



Sources

Aliases: tensor product of matrices, matrix direct product Keywords: A ⊗ B, otimes, mixed-product property, vec operator Symbols: lambda, mu

Last updated: 22 October 2026 19:04