学習環境
- Surface 3 (4G LTE)、Surface 3 タイプ カバー、Surface ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro + Apple Pencil
- MyScript Nebo(iPad アプリ)
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の3章(行列)、3(行列の乗法)、練習問題18.を取り組んでみる。
よって、 I-N は可逆で、その逆行列は、
となる。
コード(Emacs)
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, Rational
import random
for n in range(1, 6):
print(f'n = {n}')
N = Matrix([[symbols(f'a{i}{j}') if i < j else 0 for j in range(n)]
for i in range(n)])
r = n - 1
I = Matrix([[1 if i == j else 0 for j in range(n)]
for i in range(n)])
Z = Matrix([[0 for _ in range(n)]
for _ in range(n)])
X = I
for i in range(1, r + 1):
X += N ** i
for t in [N, N ** (r + 1), N ** (r + 1) == Z,
I - N, X, (I - N) * X, ((I - N) * X).expand() == I]:
pprint(t)
print()
print()
入出力結果(Terminal, Jupyter(IPython))
$ ./sample18.py
n = 1
[0]
[0]
True
[1]
[1]
[1]
True
n = 2
⎡0 a₀₁⎤
⎢ ⎥
⎣0 0 ⎦
⎡0 0⎤
⎢ ⎥
⎣0 0⎦
True
⎡1 -a₀₁⎤
⎢ ⎥
⎣0 1 ⎦
⎡1 a₀₁⎤
⎢ ⎥
⎣0 1 ⎦
⎡1 0⎤
⎢ ⎥
⎣0 1⎦
True
n = 3
⎡0 a₀₁ a₀₂⎤
⎢ ⎥
⎢0 0 a₁₂⎥
⎢ ⎥
⎣0 0 0 ⎦
⎡0 0 0⎤
⎢ ⎥
⎢0 0 0⎥
⎢ ⎥
⎣0 0 0⎦
True
⎡1 -a₀₁ -a₀₂⎤
⎢ ⎥
⎢0 1 -a₁₂⎥
⎢ ⎥
⎣0 0 1 ⎦
⎡1 a₀₁ a₀₁⋅a₁₂ + a₀₂⎤
⎢ ⎥
⎢0 1 a₁₂ ⎥
⎢ ⎥
⎣0 0 1 ⎦
⎡1 0 0⎤
⎢ ⎥
⎢0 1 0⎥
⎢ ⎥
⎣0 0 1⎦
True
n = 4
⎡0 a₀₁ a₀₂ a₀₃⎤
⎢ ⎥
⎢0 0 a₁₂ a₁₃⎥
⎢ ⎥
⎢0 0 0 a₂₃⎥
⎢ ⎥
⎣0 0 0 0 ⎦
⎡0 0 0 0⎤
⎢ ⎥
⎢0 0 0 0⎥
⎢ ⎥
⎢0 0 0 0⎥
⎢ ⎥
⎣0 0 0 0⎦
True
⎡1 -a₀₁ -a₀₂ -a₀₃⎤
⎢ ⎥
⎢0 1 -a₁₂ -a₁₃⎥
⎢ ⎥
⎢0 0 1 -a₂₃⎥
⎢ ⎥
⎣0 0 0 1 ⎦
⎡1 a₀₁ a₀₁⋅a₁₂ + a₀₂ a₀₁⋅a₁₂⋅a₂₃ + a₀₁⋅a₁₃ + a₀₂⋅a₂₃ + a₀₃⎤
⎢ ⎥
⎢0 1 a₁₂ a₁₂⋅a₂₃ + a₁₃ ⎥
⎢ ⎥
⎢0 0 1 a₂₃ ⎥
⎢ ⎥
⎣0 0 0 1 ⎦
⎡1 0 0 a₀₁⋅a₁₂⋅a₂₃ + a₀₁⋅a₁₃ - a₀₁⋅(a₁₂⋅a₂₃ + a₁₃)⎤
⎢ ⎥
⎢0 1 0 0 ⎥
⎢ ⎥
⎢0 0 1 0 ⎥
⎢ ⎥
⎣0 0 0 1 ⎦
True
n = 5
⎡0 a₀₁ a₀₂ a₀₃ a₀₄⎤
⎢ ⎥
⎢0 0 a₁₂ a₁₃ a₁₄⎥
⎢ ⎥
⎢0 0 0 a₂₃ a₂₄⎥
⎢ ⎥
⎢0 0 0 0 a₃₄⎥
⎢ ⎥
⎣0 0 0 0 0 ⎦
⎡0 0 0 0 0⎤
⎢ ⎥
⎢0 0 0 0 0⎥
⎢ ⎥
⎢0 0 0 0 0⎥
⎢ ⎥
⎢0 0 0 0 0⎥
⎢ ⎥
⎣0 0 0 0 0⎦
True
⎡1 -a₀₁ -a₀₂ -a₀₃ -a₀₄⎤
⎢ ⎥
⎢0 1 -a₁₂ -a₁₃ -a₁₄⎥
⎢ ⎥
⎢0 0 1 -a₂₃ -a₂₄⎥
⎢ ⎥
⎢0 0 0 1 -a₃₄⎥
⎢ ⎥
⎣0 0 0 0 1 ⎦
⎡1 a₀₁ a₀₁⋅a₁₂ + a₀₂ a₀₁⋅a₁₂⋅a₂₃ + a₀₁⋅a₁₃ + a₀₂⋅a₂₃ + a₀₃ a₀₁⋅a₁₂⋅a₂₃⋅a₃₄
⎢
⎢0 1 a₁₂ a₁₂⋅a₂₃ + a₁₃
⎢
⎢0 0 1 a₂₃
⎢
⎢0 0 0 1
⎢
⎣0 0 0 0
+ a₀₁⋅a₁₄ + a₀₁⋅(a₁₂⋅a₂₄ + a₁₃⋅a₃₄) + a₀₂⋅a₂₃⋅a₃₄ + a₀₂⋅a₂₄ + a₀₃⋅a₃₄ + a₀₄⎤
⎥
a₁₂⋅a₂₃⋅a₃₄ + a₁₂⋅a₂₄ + a₁₃⋅a₃₄ + a₁₄ ⎥
⎥
a₂₃⋅a₃₄ + a₂₄ ⎥
⎥
a₃₄ ⎥
⎥
1 ⎦
⎡1 0 0 a₀₁⋅a₁₂⋅a₂₃ + a₀₁⋅a₁₃ - a₀₁⋅(a₁₂⋅a₂₃ + a₁₃) a₀₁⋅a₁₂⋅a₂₃⋅a₃₄ + a₀₁⋅a
⎢
⎢0 1 0 0
⎢
⎢0 0 1 0
⎢
⎢0 0 0 1
⎢
⎣0 0 0 0
₁₄ + a₀₁⋅(a₁₂⋅a₂₄ + a₁₃⋅a₃₄) - a₀₁⋅(a₁₂⋅a₂₃⋅a₃₄ + a₁₂⋅a₂₄ + a₁₃⋅a₃₄ + a₁₄) + a
a₁₂⋅a₂₃⋅a₃₄ + a₁₂⋅a₂₄ - a₁₂⋅(a₂₃⋅a₃₄ + a₂₄)
0
0
1
₀₂⋅a₂₃⋅a₃₄ + a₀₂⋅a₂₄ - a₀₂⋅(a₂₃⋅a₃₄ + a₂₄)⎤
⎥
⎥
⎥
⎥
⎥
⎥
⎥
⎦
True
$
0 コメント:
コメントを投稿