Produto de Kronecker

O **produto de Kronecker**, denotado con (\otimes) é unha operación entre dúas matrices dun tamaño arbitrario que da como resultado unha matriz bloque. É un caso especial do produto tensorial. O produto de Kronecker non debe ser confundido co produto de matrices común, que é unha operación totalmente diferente.

## Definición 
Se *A* é unha matriz de dimensións *m*\times*n* e *B* é unha matriz de dimensións *p*\times*q*, entón o produto de Kronecker *A* \otimes *B* é a matriz bloque *mp*\times*nq*

: A \otimes B = \begin{pmatrix} a_{11} B & \cdots & a_{1n}B \\ \vdots & \ddots & \vdots \\ a_{m1} B & \cdots & a_{mn} B \end{pmatrix}
Máis explicitamente,
:A \otimes B = \begin{pmatrix}
   a_{11} b_{11} & a_{11} b_{12} & \cdots & a_{11} b_{1q} & 
                   \cdots & \cdots & a_{1n} b_{11} & a_{1n} b_{12} & \cdots & a_{1n} b_{1q} \\
   a_{11} b_{21} & a_{11} b_{22} & \cdots & a_{11} b_{2q} & 
                   \cdots & \cdots & a_{1n} b_{21} & a_{1n} b_{22} & \cdots & a_{1n} b_{2q} \\
   \vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\
   a_{11} b_{p1} & a_{11} b_{p2} & \cdots & a_{11} b_{pq} & 
                   \cdots & \cdots & a_{1n} b_{p1} & a_{1n} b_{p2} & \cdots & a_{1n} b_{pq} \\
   \vdots & \vdots & & \vdots & \ddots & & \vdots & \vdots & & \vdots \\
   \vdots & \vdots & & \vdots & & \ddots & \vdots & \vdots & & \vdots \\
   a_{m1} b_{11} & a_{m1} b_{12} & \cdots & a_{m1} b_{1q} & 
                   \cdots & \cdots & a_{mn} b_{11} & a_{mn} b_{12} & \cdots & a_{mn} b_{1q} \\
   a_{m1} b_{21} & a_{m1} b_{22} & \cdots & a_{m1} b_{2q} & 
                   \cdots & \cdots & a_{mn} b_{21} & a_{mn} b_{22} & \cdots & a_{mn} b_{2q} \\
   \vdots & \vdots & \ddots & \vdots & & & \vdots & \vdots & \ddots & \vdots \\
   a_{m1} b_{p1} & a_{m1} b_{p2} & \cdots & a_{m1} b_{pq} & 
                   \cdots & \cdots & a_{mn} b_{p1} & a_{mn} b_{p2} & \cdots & a_{mn} b_{pq} 
\end{pmatrix}

### Exemplos 
:
  \begin{pmatrix}
    1 & 3 & 2 \\
    1 & 0 & 0 \\
    1 & 2 & 2
  \end{pmatrix}
\otimes
  \begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}

= \begin{pmatrix}
 1  \cdot 
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 3  \cdot 
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 2  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}\\
1  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 0  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 0  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}\\
1  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 2  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
& 2  \cdot
\begin{pmatrix}
    0 & 5 \\
    5 & 0 \\
    1 & 1
  \end{pmatrix}
\end{pmatrix}

= \begin{pmatrix}

    0 & 5 & 0 & 15 &0 & 10 \\
    5 & 0 &15 & 0 &10 & 0 \\
    1 & 1 & 3 & 3&2 & 2\\
    0 & 5& 0 & 0 &0 & 0 \\
    5 & 0 &0 & 0 &0 & 0 \\
    1 & 1&0 & 0& 0 & 0\\
    0 & 5 &0 & 10 & 0 & 10 \\
    5 & 0 &10 & 0 &10 & 0 \\
    1 & 1&2 & 2&2 & 2
 \end{pmatrix}

## Propiedades 
### Bilinearidade e asociatividade 
O produto de Kronecker é un caso especial do produto tensorial, e polo tanto, é bilinear e asociativo:
: A \otimes (B+C) = A \otimes B + A \otimes C se *B* e *C* teñen as mesmas dimensións,
: (A+B) \otimes C = A \otimes C + B \otimes C se *A* e *B* teñen as mesmas dimensións,
: (kA) \otimes B = A \otimes (kB) = k(A \otimes B), 
: (A \otimes B) \otimes C = A \otimes (B \otimes C), 
onde *A*, *B* e *C* son matrices e onde *k* é un escalar.

O produto de Kronecker non é commutativo: En xeral, *A*\otimes*B* e *B*\otimes*A* son matrices diferentes. Porén, *A*\otimes*B*  e *B*\otimes*A* son intercambios equivalentes, o que quere dicir que hai matrices de permutación *P* e *Q* tales que  A \otimes B = P \, (B \otimes A) \, Q.