学習環境
- Surface Go、タイプ カバー、ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の1章(R^n におけるベクトル)、6(複素数)、練習問題6.を取り組んでみる。
ここで A が O のとき、
ここで A が O ではない場合、
(証明終)
コード(Emacs)
Python 3
#!/usr/bin/env python3 import random from sympy import pprint, symbols, I, Matrix print('6.') def dot(a, b): return sum([ai * bi.conjugate() for ai, bi in zip(a, b)]) n = 5 a = Matrix(symbols([f'a{i + 1}' for i in range(n)])) b = Matrix(symbols([f'b{i + 1}' for i in range(n)])) c = Matrix(symbols([f'c{i + 1}' for i in range(n)])) o = Matrix([0 for _ in range(n)]) alpha = symbols('a') lrs = [(dot(a, b), dot(b, a).conjugate()), (dot(a, b + c), dot(a, b) + dot(a, c)), (dot(alpha * a, b), alpha * dot(a, b)), (dot(a, alpha * b), alpha.conjugate() * dot(a, b))] for l, r in lrs: for t in [l, r, l.expand() == r.expand()]: pprint(t) print() print() print(dot(o, o) == 0) for _ in range(n): a = Matrix([random.randrange(-5, 6) + random.randrange(-5, 6) * I for _ in range(n)]) for t in [a, dot(a, a), dot(a, a).expand(), dot(a, a) > 0]: pprint(t) print() print()
入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))
$ ./sample6.py 6. __ __ __ __ __ a₁⋅b₁ + a₂⋅b₂ + a₃⋅b₃ + a₄⋅b₄ + a₅⋅b₅ __ __ __ __ __ a₁⋅b₁ + a₂⋅b₂ + a₃⋅b₃ + a₄⋅b₄ + a₅⋅b₅ True ⎛__ __⎞ ⎛__ __⎞ ⎛__ __⎞ ⎛__ __⎞ ⎛__ __⎞ a₁⋅⎝b₁ + c₁⎠ + a₂⋅⎝b₂ + c₂⎠ + a₃⋅⎝b₃ + c₃⎠ + a₄⋅⎝b₄ + c₄⎠ + a₅⋅⎝b₅ + c₅⎠ __ __ __ __ __ __ __ __ __ __ a₁⋅b₁ + a₁⋅c₁ + a₂⋅b₂ + a₂⋅c₂ + a₃⋅b₃ + a₃⋅c₃ + a₄⋅b₄ + a₄⋅c₄ + a₅⋅b₅ + a₅⋅c₅ True __ __ __ __ __ a⋅a₁⋅b₁ + a⋅a₂⋅b₂ + a⋅a₃⋅b₃ + a⋅a₄⋅b₄ + a⋅a₅⋅b₅ ⎛ __ __ __ __ __⎞ a⋅⎝a₁⋅b₁ + a₂⋅b₂ + a₃⋅b₃ + a₄⋅b₄ + a₅⋅b₅⎠ True _ __ _ __ _ __ _ __ _ __ a₁⋅a⋅b₁ + a₂⋅a⋅b₂ + a₃⋅a⋅b₃ + a₄⋅a⋅b₄ + a₅⋅a⋅b₅ ⎛ __ __ __ __ __⎞ _ ⎝a₁⋅b₁ + a₂⋅b₂ + a₃⋅b₃ + a₄⋅b₄ + a₅⋅b₅⎠⋅a True True ⎡5 - 4⋅ⅈ⎤ ⎢ ⎥ ⎢ 3⋅ⅈ ⎥ ⎢ ⎥ ⎢1 - 5⋅ⅈ⎥ ⎢ ⎥ ⎢ 5 - ⅈ ⎥ ⎢ ⎥ ⎣ 0 ⎦ 9 + (1 - 5⋅ⅈ)⋅(1 + 5⋅ⅈ) + (5 - ⅈ)⋅(5 + ⅈ) + (5 - 4⋅ⅈ)⋅(5 + 4⋅ⅈ) 102 True ⎡-2 - 2⋅ⅈ⎤ ⎢ ⎥ ⎢-3 + 2⋅ⅈ⎥ ⎢ ⎥ ⎢ ⅈ ⎥ ⎢ ⎥ ⎢-5 + 4⋅ⅈ⎥ ⎢ ⎥ ⎣-5 + 4⋅ⅈ⎦ 1 + (-2 - 2⋅ⅈ)⋅(-2 + 2⋅ⅈ) + (-3 - 2⋅ⅈ)⋅(-3 + 2⋅ⅈ) + 2⋅(-5 - 4⋅ⅈ)⋅(-5 + 4⋅ⅈ) 104 True ⎡-5 + 4⋅ⅈ⎤ ⎢ ⎥ ⎢ 5⋅ⅈ ⎥ ⎢ ⎥ ⎢1 + 3⋅ⅈ ⎥ ⎢ ⎥ ⎢4 + 2⋅ⅈ ⎥ ⎢ ⎥ ⎣ 5⋅ⅈ ⎦ (1 - 3⋅ⅈ)⋅(1 + 3⋅ⅈ) + (4 - 2⋅ⅈ)⋅(4 + 2⋅ⅈ) + (-5 - 4⋅ⅈ)⋅(-5 + 4⋅ⅈ) + 50 121 True ⎡-3 - 4⋅ⅈ⎤ ⎢ ⎥ ⎢1 - 2⋅ⅈ ⎥ ⎢ ⎥ ⎢ 1 + ⅈ ⎥ ⎢ ⎥ ⎢-3 + 3⋅ⅈ⎥ ⎢ ⎥ ⎣2 + 3⋅ⅈ ⎦ (1 - ⅈ)⋅(1 + ⅈ) + (1 - 2⋅ⅈ)⋅(1 + 2⋅ⅈ) + (2 - 3⋅ⅈ)⋅(2 + 3⋅ⅈ) + (-3 - 3⋅ⅈ)⋅(-3 + 3⋅ⅈ) + (-3 - 4⋅ⅈ)⋅(-3 + 4⋅ⅈ) 63 True ⎡5 - 2⋅ⅈ ⎤ ⎢ ⎥ ⎢-2 - 3⋅ⅈ⎥ ⎢ ⎥ ⎢-1 + 3⋅ⅈ⎥ ⎢ ⎥ ⎢-4 + 4⋅ⅈ⎥ ⎢ ⎥ ⎣ 5 ⎦ (-1 - 3⋅ⅈ)⋅(-1 + 3⋅ⅈ) + (-2 - 3⋅ⅈ)⋅(-2 + 3⋅ⅈ) + 25 + (5 - 2⋅ⅈ)⋅(5 + 2⋅ⅈ) + (-4 - 4⋅ⅈ)⋅(-4 + 4⋅ⅈ) 109 True $
0 コメント:
コメントを投稿