学習環境
- Surface Go、タイプ カバー、ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro 10.5 + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の3章(行列)、2(行列の乗法)、練習問題17の解答を求めてみる。
問題16 より、
A の逆行列について。
n が2の とき。
n が3のとき。
一般(自然数)。
よって、 A の逆行列である。
コード
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix
print('17.')
def f(i, j):
if i == j:
return 1
if i < j:
return symbols(f'a{i}{j}', nonzero=True)
return 0
def g(i, j):
if i == j:
return 1
return 0
def h(N, n):
t = Matrix([[0 for _ in range(n)]
for _ in range(n)])
for k in range(n):
t += (-1) ** k * N ** k
return t
for n in range(0, 6):
A = Matrix([[f(i, j) for j in range(1, n + 1)]
for i in range(1, n + 1)])
In = Matrix([[g(i, j) for j in range(1, n + 1)]
for i in range(1, n + 1)])
N = A - In
for t in [A, h(N, n), (A * h(N, n)).expand()]:
pprint(t)
print()
入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))
C:\Users\...> py -3 sample17.py
17.
[]
[]
[]
[1]
[1]
[1]
⎡1 a₁₂⎤
⎢ ⎥
⎣0 1 ⎦
⎡1 -a₁₂⎤
⎢ ⎥
⎣0 1 ⎦
⎡1 0⎤
⎢ ⎥
⎣0 1⎦
⎡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⎦
⎡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 0⎤
⎢ ⎥
⎢0 1 0 0⎥
⎢ ⎥
⎢0 0 1 0⎥
⎢ ⎥
⎣0 0 0 1⎦
⎡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 0 0⎤
⎢ ⎥
⎢0 1 0 0 0⎥
⎢ ⎥
⎢0 0 1 0 0⎥
⎢ ⎥
⎢0 0 0 1 0⎥
⎢ ⎥
⎣0 0 0 0 1⎦
C:\Users\...>
0 コメント:
コメントを投稿