学習環境
線型代数入門 (松坂 和夫 (著)、岩波書店 )の第3章(線型写像)、7(行列の積)、問題11.を取り組んでみる。
行列Bの(i, j)成分について考え、成分表示してみる。
1 ≤ i ≤
l
1
1 ≤ j ≤
m
1
B = (
B
11
の ( i , j ) 成 分
)
m
1
+ 1 ≤ j ≤
m
2
B = (
B
12
の ( i , j -
m
1
) 成 分
)
l
1
+ 1 ≤ i ≤
l
2
1 ≤ j ≤
m
1
B = (
B
21
の ( i -
l
1
, j ) 成 分
)
m
1
+ 1 ≤ j ≤
m
2
B = (
B
22
の ( i -
l
1
, j −
m
1
) 成 分
)
同様に行列Aの(i, j)成分について考え、Aの成分表示を考えてみる。
1 ≤ i ≤
m
1
1 ≤ j ≤
n
1
A = (
A
11
の (
i , j
) 成 分
)
n
1
+ 1 ≤ j ≤
n
2
A = (
A
12
の (
i , j −
n
1
) 成 分
)
m
1
+ 1 ≤ i ≤
m
2
1 ≤ j ≤
n
1
A = (
A
21
の (
i −
m
1
, j
) 成 分
)
n
1
+ 1 ≤ j ≤
n
2
A = (
A
22
の (
i −
m
1
, j −
n
1
) の 成 分
)
行列の積BAの(i, j)成分について考えてみる。
1 ≤ i ≤
l
1
1 ≤ j ≤
n
1
(
∑
k = 1
m
1
(
(
B
11
(
i , k
)
) · (
A
11
(
k , j
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i , k −
m
1
)
) · (
A
21
(
k −
m
1
, j
)
)
)
)
n
1
+ 1 ≤ j ≤
n
2
(
∑
k = 1
m
1
(
(
B
11
(
i , k
)
) · (
A
12
(
k , j −
n
1
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i , k −
m
1
)
) · (
A
22
(
k −
m
1
, j −
n
1
)
)
)
)
l
1
+ 1 ≤ i ≤
l
2
1 ≤ j ≤
n
1
(
∑
k = 1
m
1
(
(
B
21
(
i −
l
1
, k
)
) · (
A
11
(
k , j
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i −
l
1
, k −
m
1
)
) · (
A
21
(
k −
m
1
, j
)
)
)
)
n
1
+ 1 ≤ j ≤
n
2
(
∑
k = 1
m
1
(
(
B
21
(
i −
l
1
, k
)
) · (
A
12
(
k , j −
n
1
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
22
(
i −
l
1
, k −
m
1
)
) · (
A
22
(
k −
m
1
, j −
n
1
)
)
)
)
問題の等式の右辺の行列の(i, j)成分について考える。
1 ≤ i ≤
l
1
1 ≤ j ≤
n
1
(
∑
k = 1
m
1
(
(
B
11
(
i , k
)
) · (
A
11
(
k , j
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i , k −
m
1
)
) · (
A
21
(
k −
m
1
, j
)
)
)
)
n
1
+ 1 ≤ j ≤
n
2
(
∑
k = 1
m
1
(
(
B
11
(
i , k
)
) · (
A
12
(
k , j −
n
1
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i , k −
m
1
)
) · (
A
22
(
k −
m
1
, j −
n
1
)
)
)
)
l
1
+ 1 ≤ i ≤
l
2
1 ≤ j ≤
n
1
(
∑
k = 1
m
1
(
(
B
21
(
i −
l
1
, k
)
) · (
A
11
(
k , j
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
12
(
i −
l
1
, k −
m
1
)
) · (
A
21
(
k −
m
1
, j
)
)
)
)
n
1
+ 1 ≤ j ≤
n
2
(
∑
k = 1
m
1
(
(
B
21
(
i −
l
1
, k
)
) · (
A
12
(
k , j −
n
1
)
)
)
+
∑
k =
m
1
+ 1
m
j
(
(
B
22
(
i −
l
1
, k −
m
1
)
) · (
A
22
(
k −
m
1
, j −
n
1
)
)
)
)
よって、左辺と右辺の(i, j)成分は一致するので、問題の等号は成り立つ。
コード(Emacs )
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve
import functools
print ( '11.' )
m1 = 1
m2 = 2
n1 = 2
n2 = 3
l1 = 3
l2 = 2
BS = [ Matrix ( range ( l * m)). reshape ( l, m)
for l in [ l1, l2]
for m in [ m1, m2]]
B = Matrix ([ BS]). reshape ( 2 , 2 )
AS = [ Matrix ( range ( m * n)). reshape ( m, n)
for m in [ m1, m2]
for n in [ n1, n2]]
A = Matrix ([ AS]). reshape ( 2 , 2 )
for t in [ B, A, B * A]:
pprint ( t)
print ()
入出力結果(Terminal, Jupyter(IPython))
$ ./sample11.py
11.
⎡⎡0⎤ ⎡0 1⎤⎤
⎢⎢ ⎥ ⎢ ⎥⎥
⎢⎢1⎥ ⎢2 3⎥⎥
⎢⎢ ⎥ ⎢ ⎥⎥
⎢⎣2⎦ ⎣4 5⎦⎥
⎢ ⎥
⎢⎡0⎤ ⎡0 1⎤⎥
⎢⎢ ⎥ ⎢ ⎥⎥
⎣⎣1⎦ ⎣2 3⎦⎦
⎡[0 1] [0 1 2]⎤
⎢ ⎥
⎢⎡0 1⎤ ⎡0 1 2⎤⎥
⎢⎢ ⎥ ⎢ ⎥⎥
⎣⎣2 3⎦ ⎣3 4 5⎦⎦
⎡⎡2 3 ⎤ ⎡3 4 5 ⎤⎤
⎢⎢ ⎥ ⎢ ⎥⎥
⎢⎢6 12⎥ ⎢9 15 21⎥⎥
⎢⎢ ⎥ ⎢ ⎥⎥
⎢⎣10 21⎦ ⎣15 26 37⎦⎥
⎢ ⎥
⎢⎡2 3 ⎤ ⎡3 4 5 ⎤ ⎥
⎢⎢ ⎥ ⎢ ⎥ ⎥
⎣⎣6 12⎦ ⎣9 15 21⎦ ⎦
$
0 コメント:
コメントを投稿