学習環境
- Surface、Surface ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro 10.5 + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の3章(行列)、2(行列の乗法)、練習問題22の解答を求めてみる。
A、 B はベキ零なので、ある1以上の整数 r、 s が存在して、
Ar=OBs=Oよって、
t=max{r,s}とおけば、可換であることから
(AB)t=AtBt=ArAt-rBsBt-s=OAt-rOBt-s=O和について。
k=r+sておけば、
(A+B)k=∑ki=0(ki)AiBk-iここでも、
0≤i≤rのとき、
k-i=m+n-i≥r+s-r=sよって、
Bk-i=BsBk-i-s=Oまた、
r<i≤kの場合、
Ai=ArAr-i=OAr-i=Oよって、
(A+B)k=Oゆえに、和はベキ零行列である。
(証明終)
コード
Python 3
#!/usr/bin/env python3
from sympy import pprint, symbols, randMatrix, Matrix
print('22.')
def is_equal(a, b, n):
for i in range(n):
for j in range(n):
if a[i, j] != b[i, j]:
return False
return True
for n in range(2, 6):
O = Matrix([[0 for j in range(n)]
for i in range(n)])
while True:
is_zero = False
while True:
A = randMatrix(n, min=-10, max=10, percent=20)
if is_equal(A, O, n):
continue
for r in range(1, 11):
if is_equal(A ** r, O, n):
is_zero = True
break
if is_zero:
break
is_zero = False
while True:
B = randMatrix(n, min=-10, max=10, percent=20)
if is_equal(B, O, n):
continue
for s in range(1, 11):
if is_equal(B ** s, O, n):
is_zero = True
break
if is_zero:
break
if is_equal(A * B, B * A, n):
print(f'r = {r}, s = {s}')
for t in [A, B, (A * B) ** r, (A + B) ** (r + s)]:
pprint(t)
print()
print()
break
入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))
C:\Users\...> py -3 sample22.py 22. r = 2, s = 2 ⎡0 2⎤ ⎢ ⎥ ⎣0 0⎦ ⎡0 7⎤ ⎢ ⎥ ⎣0 0⎦ ⎡0 0⎤ ⎢ ⎥ ⎣0 0⎦ ⎡0 0⎤ ⎢ ⎥ ⎣0 0⎦ r = 3, s = 2 ⎡0 0 0⎤ ⎢ ⎥ ⎢-4 0 0⎥ ⎢ ⎥ ⎣0 9 0⎦ ⎡ 0 0 0⎤ ⎢ ⎥ ⎢ 0 0 0⎥ ⎢ ⎥ ⎣-10 0 0⎦ ⎡0 0 0⎤ ⎢ ⎥ ⎢0 0 0⎥ ⎢ ⎥ ⎣0 0 0⎦ ⎡0 0 0⎤ ⎢ ⎥ ⎢0 0 0⎥ ⎢ ⎥ ⎣0 0 0⎦ r = 2, s = 2 ⎡0 0 0 0⎤ ⎢ ⎥ ⎢0 0 0 0⎥ ⎢ ⎥ ⎢-5 2 0 0⎥ ⎢ ⎥ ⎣10 3 0 0⎦ ⎡0 0 0 0⎤ ⎢ ⎥ ⎢0 0 0 0⎥ ⎢ ⎥ ⎢-7 -10 0 0⎥ ⎢ ⎥ ⎣2 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 0⎥ ⎢ ⎥ ⎣0 0 0 0⎦ r = 3, s = 2 ⎡0 0 0 0 0⎤ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎢10 0 0 0 0⎥ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎣9 1 -1 0 0⎦ ⎡0 0 0 0 0⎤ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎣3 0 0 -3 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 0⎤ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎢0 0 0 0 0⎥ ⎢ ⎥ ⎣0 0 0 0 0⎦ C:\Users\...>
0 コメント:
コメントを投稿