The Kronecker Product of Two Matrices
Before we look deeper into Hadamard matrices, we will need to define a special type of product between two matrices $A$ and $B$ known as their Kronecker product.
Definition: Let $A$ be an $m \times n$ matrix and let $B$ be an $s \times t$ matrix. The Kronecker Product of these matrices is the matrix $A \otimes B = \begin{bmatrix} a_{1,1} B & a_{1,2} B & \cdots & a_{1,n} B \\ a_{2,1} B & a_{2,2} B & \cdots & a_{2,n} B\\ \vdots & \vdots & \ddots & \vdots \\ a_{m,1} B & a_{m,2} B & \cdots & a_{m,n} B \end{bmatrix}$. |
The notation $a_{i,j} B$ denotes the $s \times t$ matrix given as $a_{i,j} B = \begin{bmatrix} a_{i,j}b_{1,1} & a_{i,j}b_{1,2} & \cdots & a_{i,j}b_{1,t} \\ a_{i,j}b_{2,1} & a_{i,j}b_{2,2} & \cdots & a_{i,j}b_{2,t} \\ \vdots & \vdots & \ddots & \vdots \\ a_{i,j}b_{s,1} & a_{i,j}b_{s,2} & \cdots & a_{i,j}b_{s,t} \end{bmatrix}$. Thus, if $A$ is an $m \times n$ matrix and $B$ is an $s \times t$ matrix then $A \otimes B$ is an $ms \times nt$ matrix.
Also note that if $A$ is a $1 \times 1$ matrix, i.e., $A = \begin{bmatrix} a \end{bmatrix}$ is a scalar, then $A \otimes B = aB$.
For example, consider the following matrices:
(1)The corresponding Kronecker product $A \otimes B$ is given as:
(2)The special operation $\otimes$ has many important properties. We outline some of these without proof in the following theorem.
Theorem 1: Let $A$, $B$, and $C$ be matrices. Then: a) $A \otimes (B \otimes C) = (A \otimes B) \otimes C$. b) $A \otimes (B + C) = A \otimes B + A \otimes C$ whenever $B$ and $C$ are matrices of the same size. c) If $k$ is a scalar then $k(A \otimes B) = (kA) \otimes B = A \otimes (kB)$. |
Note that in general we cannot expect that $A \otimes B$ will equal $B \otimes A$.