Iloczynem Kroneckera (iloczynem tensorowym ) macierzy
A
∈
M
m
×
n
{\displaystyle A\in M_{m\times n}}
i macierzy
B
∈
M
k
×
l
{\displaystyle B\in M_{k\times l}}
nazywa się macierz o wymiarze
m
k
×
n
l
{\displaystyle mk\times nl}
postaci
A
⊗
B
=
[
a
11
B
a
12
B
⋯
a
21
B
a
22
B
⋮
⋱
]
=
[
a
11
b
11
a
11
b
12
⋯
a
12
b
11
a
12
b
12
⋯
a
11
b
21
a
11
b
22
a
12
b
21
a
12
b
22
⋮
⋱
a
21
b
11
a
21
b
12
a
21
b
21
a
21
b
22
⋮
]
.
{\displaystyle A\otimes B={\begin{bmatrix}a_{11}B&a_{12}B&\cdots \\a_{21}B&a_{22}B\\\vdots &&\ddots \end{bmatrix}}={\begin{bmatrix}a_{11}b_{11}&a_{11}b_{12}&\cdots &a_{12}b_{11}&a_{12}b_{12}&\cdots \\a_{11}b_{21}&a_{11}b_{22}&&a_{12}b_{21}&a_{12}b_{22}\\\vdots &&\ddots \\a_{21}b_{11}&a_{21}b_{12}\\a_{21}b_{21}&a_{21}b_{22}\\\vdots \end{bmatrix}}.}
W szczególności można mnożyć tensorowo dwa wektory kolumnowe , dwa wektory wierszowe oraz wektor kolumnowy i wierszowy (np. iloczyn diadyczny ).
Z definicji wynika, że mnożone macierze
A
{\displaystyle A}
i
B
{\displaystyle B}
mogą być dowolnych rozmiarów. (Zwykły iloczyn macierzy jest bardziej restrykcyjny, gdyż liczba kolumn pierwszej macierzy musi być równa liczbie wierszy drugiej macierzy.)
Nazwa iloczynu pochodzi od Leopolda Kroneckera , chociaż już przed nim, w 1858 r., tę operację na macierzach opisał Johann Georg Zehfuss.
Iloczyn tensorowy wektorów
edytuj
Z definicji iloczynu tensorowego wynika w szczególności, że iloczyny tensorowe wektorów mają różny wynik w zależności od rodzaju mnożonych wektorów.
(1) Iloczyn tensorowy wektorów kolumnowych daje wektor kolumnowy
v
⊗
w
=
[
1
0
]
v
⊗
[
1
0
]
w
=
[
1
⋅
[
1
0
]
w
0
⋅
[
1
0
]
w
]
=
[
1
0
0
0
]
.
{\displaystyle v\otimes w={\begin{bmatrix}1\\0\end{bmatrix}}_{v}\otimes {\begin{bmatrix}1\\0\end{bmatrix}}_{w}={\begin{bmatrix}1\cdot {\begin{bmatrix}1\\0\end{bmatrix}}_{w}\\0\cdot {\begin{bmatrix}1\\0\end{bmatrix}}_{w}\end{bmatrix}}={\begin{bmatrix}1\\0\\0\\0\end{bmatrix}}.}
(2) Iloczyn tensorowy wektorów wierszowych daje wektor wierszowy
v
⊗
w
=
[
1
,
0
]
v
⊗
[
1
,
0
]
w
=
[
1
⋅
[
1
,
0
]
w
,
0
⋅
[
1
,
0
]
w
]
=
[
1
,
0
,
0
,
0
]
.
{\displaystyle v\otimes w={\begin{bmatrix}1,0\end{bmatrix}}_{v}\otimes {\begin{bmatrix}1,0\end{bmatrix}}_{w}={\begin{bmatrix}1\cdot {\begin{bmatrix}1,0\end{bmatrix}}_{w},0\cdot {\begin{bmatrix}1,0\end{bmatrix}}_{w}\end{bmatrix}}={\begin{bmatrix}1,0,0,0\end{bmatrix}}.}
(3) Iloczyn tensorowy wektora kolumnowego przez wektor wierszowy daje macierz
v
⊗
w
=
[
1
0
]
v
⊗
[
1
,
0
]
w
=
[
1
⋅
[
1
,
0
]
w
0
⋅
[
1
,
0
]
w
]
=
[
1
,
0
0
,
0
]
.
{\displaystyle v\otimes w={\begin{bmatrix}1\\0\end{bmatrix}}_{v}\otimes {\begin{bmatrix}1,0\end{bmatrix}}_{w}={\begin{bmatrix}1\cdot {\begin{bmatrix}1,0\end{bmatrix}}_{w}\\0\cdot {\begin{bmatrix}1,0\end{bmatrix}}_{w}\end{bmatrix}}={\begin{bmatrix}1,0\\0,0\end{bmatrix}}.}
(4) Iloczyn tensorowy wektora wierszowego przez wektor kolumnowy daje macierz
v
⊗
w
=
[
1
,
0
]
v
⊗
[
1
−
1
]
w
=
[
1
⋅
[
1
−
1
]
w
,
0
⋅
[
1
−
1
]
w
]
=
[
1
,
0
−
1
,
0
]
.
{\displaystyle v\otimes w={\begin{bmatrix}1,0\end{bmatrix}}_{v}\otimes {\begin{bmatrix}\,\,\,\,1\\-1\end{bmatrix}}_{w}={\begin{bmatrix}1\cdot {\begin{bmatrix}\,\,\,\,1\\-1\end{bmatrix}}_{w},\,0\cdot {\begin{bmatrix}\,\,\,\,1\\-1\end{bmatrix}}_{w}\end{bmatrix}}={\begin{bmatrix}\,\,\,\,1,0\\-1,0\end{bmatrix}}.}
Iloczyn tensorowy macierzy
edytuj
Iloczyn tensorowy dwóch macierzy daje macierz, np.
[
1
2
3
4
]
⊗
[
0
5
6
7
]
=
[
1
⋅
[
0
5
6
7
]
2
⋅
[
0
5
6
7
]
3
⋅
[
0
5
6
7
]
4
⋅
[
0
5
6
7
]
]
=
[
1
⋅
0
1
⋅
5
2
⋅
0
2
⋅
5
1
⋅
6
1
⋅
7
2
⋅
6
2
⋅
7
3
⋅
0
3
⋅
5
4
⋅
0
4
⋅
5
3
⋅
6
3
⋅
7
4
⋅
6
4
⋅
7
]
=
[
0
5
0
10
6
7
12
14
0
15
0
20
18
21
24
28
]
.
{\displaystyle {\begin{bmatrix}1&2\\3&4\end{bmatrix}}\otimes {\begin{bmatrix}0&5\\6&7\end{bmatrix}}={\begin{bmatrix}1\cdot {\begin{bmatrix}0&5\\6&7\end{bmatrix}}&2\cdot {\begin{bmatrix}0&5\\6&7\end{bmatrix}}\\3\cdot {\begin{bmatrix}0&5\\6&7\end{bmatrix}}&4\cdot {\begin{bmatrix}0&5\\6&7\end{bmatrix}}\end{bmatrix}}={\begin{bmatrix}1\cdot 0&1\cdot 5&2\cdot 0&2\cdot 5\\1\cdot 6&1\cdot 7&2\cdot 6&2\cdot 7\\3\cdot 0&3\cdot 5&4\cdot 0&4\cdot 5\\3\cdot 6&3\cdot 7&4\cdot 6&4\cdot 7\end{bmatrix}}={\begin{bmatrix}0&5&0&10\\6&7&12&14\\0&15&0&20\\18&21&24&28\end{bmatrix}}.}
Własności iloczynu tensorowego
edytuj
Iloczyn tensorowy macierzy jest zazwyczaj nieprzemienny, podobnie jak zwykły iloczyn macierzy , tj.
A
⊗
B
≠
B
⊗
A
.
{\displaystyle A\otimes B\neq B\otimes A.}
Mnożenie mieszane (tensorowo-zwykłe)
edytuj
Jeśli macierze
A
,
B
,
C
,
D
{\displaystyle A,B,C,D}
są takie, że zwykłe iloczyny macierzy
A
⋅
C
{\displaystyle A\cdot C}
i
B
⋅
D
{\displaystyle B\cdot D}
istnieją, to iloczyn zwykły dwóch iloczynów tensorowych jest równy iloczynowi tensorowemu odpowiednich iloczynów zwykłych macierzy, w ten sposób że:
(
A
⊗
B
)
⋅
(
C
⊗
D
)
=
(
A
⋅
C
)
⊗
(
B
⋅
D
)
.
{\displaystyle (A\otimes B)\cdot (C\otimes D)=(A\cdot C)\otimes (B\cdot D).}
Odwrotność iloczynu tensorowego
edytuj
Jeśli macierze
A
,
B
{\displaystyle A,B}
są odwracalne , to:
odwracalna jest macierz
A
⊗
B
{\displaystyle A\otimes B}
oraz
odwrotność macierzy
A
⊗
B
{\displaystyle A\otimes B}
jest równa iloczynowi tensorowemu odwrotności macierzy
A
{\displaystyle A}
przez odwrotność macierzy
B
,
{\displaystyle B,}
tj.
(
A
⊗
B
)
−
1
=
A
−
1
⊗
B
−
1
.
{\displaystyle (A\otimes B)^{-1}=A^{-1}\otimes B^{-1}.}
Rozdzielność względem dodawania
edytuj
Zachodzi rozdzielność mnożenia tensorowego macierzy przez sumę macierzy
B
,
C
{\displaystyle B,C}
(przy czym zakłada się, że macierze
B
,
C
{\displaystyle B,C}
są tych samych wymiarów), tj.
A
⊗
(
B
+
C
)
=
A
⊗
B
+
A
⊗
C
,
{\displaystyle A\otimes (B+C)=A\otimes B+A\otimes C,}
(
B
+
C
)
⊗
A
=
B
⊗
A
+
C
⊗
A
.
{\displaystyle (B+C)\otimes A=B\otimes A+C\otimes A.}
Transpozycja iloczynu tensorowego
edytuj
Transpozycja iloczynu tensorowego macierzy jest równa iloczynowi tensorowemu transpozycji tych macierzy, tj.
(
A
⊗
B
)
T
=
A
T
⊗
B
T
.
{\displaystyle (A\otimes B)^{T}=A^{T}\otimes B^{T}.}
Iloczyn tensorowy macierzy kwadratowych
edytuj
Jeśli macierze
A
,
B
{\displaystyle A,B}
są macierzami kwadratowymi wymiarów odpowiednio m i n , to
wyznacznik (det) , rząd (rz ) oraz ślad (tr ) macierzy będącej iloczynem tensorowym wyrażają się przez iloczyny wyznaczników, śladów i rzędów mnożonych tensorowo macierzy
A
,
B
{\displaystyle A,B}
wg wzorów:
det
(
A
⊗
B
)
=
(
det
A
)
n
⋅
(
det
B
)
m
,
{\displaystyle \det(A\otimes B)=(\det A)^{n}\cdot (\det B)^{m},}
t
r
(
A
⊗
B
)
=
t
r
(
A
)
⋅
t
r
(
B
)
,
{\displaystyle tr(A\otimes B)=tr(A)\cdot tr(B),}
r
z
(
A
⊗
B
)
=
r
z
(
A
)
⋅
r
z
(
B
)
.
{\displaystyle rz(A\otimes B)=rz(A)\cdot rz(B).}
Niech
{
λ
i
|
i
=
1
,
…
,
m
}
{\displaystyle \{\lambda _{i}|\,\,\,i=1,\ldots ,m\}}
oraz
{
μ
j
|
j
=
1
,
…
,
n
}
{\displaystyle \{\mu _{j}|\,\,\,j=1,\ldots ,n\}}
są zbiorami wszystkich wartości własnych odpowiednio macierzy
A
{\displaystyle A}
oraz
B
.
{\displaystyle B.}
Wtedy zbiór wszystkich wartości własnych iloczynu tensorowego
A
⊗
B
{\displaystyle A\otimes B}
tworzą iloczyny wartości własnych
λ
i
μ
j
,
{\displaystyle \lambda _{i}\mu _{j},}
tj.
{
λ
i
μ
j
|
i
=
1
,
…
,
m
,
j
=
1
,
…
,
n
}
.
{\displaystyle \{\lambda _{i}\mu _{j}|\quad i=1,\ldots ,m,\quad j=1,\ldots ,n\}.}
Wzór ogólny na współczynniki macierzy
A
⊗
B
{\displaystyle A\otimes B}
edytuj
Niech
A
=
[
a
i
j
]
i
=
1
,
…
,
m
,
j
=
1
,
…
,
n
{\displaystyle A=[a_{ij}]_{i=1,\ldots ,m, \atop {j=1,\ldots ,n}}}
oraz
B
=
[
b
p
q
]
p
=
1
,
…
,
k
,
q
=
1
,
…
,
l
.
{\displaystyle B=[b_{pq}]_{p=1,\ldots ,k, \atop {q=1,\ldots ,l}}.}
Wtedy współczynniki macierzy będącej iloczynem Kroneckera dane są wzorem
(
A
⊗
B
)
i
j
=
a
(
(
i
−
1
)
d
i
v
k
)
+
1
,
(
(
j
−
1
)
d
i
v
l
)
+
1
⋅
b
(
(
i
−
1
)
m
o
d
k
)
+
1
,
(
(
j
−
1
)
m
o
d
l
)
+
1
,
{\displaystyle (A\otimes B)_{ij}=a_{((i-1)\ div\ k)+1,((j-1)\ div\ l)+1}\cdot b_{((i-1)\ mod\ k)+1,((j-1)\ mod\ l)+1},}
gdzie div oznacza dzielenie całkowitoliczbowe.