学習環境
- Surface
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
ラング線形代数学(上) (ちくま学現文庫)(S.ラング (著)、芹沢 正三 (翻訳)、筑摩書房)の7章(スカラー積と直交性)、2(正値スカラー積)、練習問題7の解答を求めてみる。
SP 1 の可換律について。
SP 2の分配律について。
SP 3の スカラ倍について。
よって、トレースはスカラー積である。
また、 任意の n 次の正方行列 A が任意の n 次の正方形行列 B に対してそのスカラー積が零 ならば、
なので、
よって、 トレースによるスカラー積の定義は退化していない。
(証明終)
コード
#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import Matrix, symbols
print('7.')
a = Matrix(symbols('a:16', real=True)).reshape(4, 4)
b = Matrix(symbols('b:16', real=True)).reshape(4, 4)
c = Matrix(symbols('c:16', real=True)).reshape(4, 4)
x = symbols('x', real=True)
def scalar_mul(a, b):
return (a * b).trace()
class TestTrace(TestCase):
def test1(self):
self.assertEqual(scalar_mul(a, b), scalar_mul(b, a))
def test2(self):
self.assertEqual(scalar_mul(a, b + c).expand(),
scalar_mul(a, b) + scalar_mul(a, c))
def test3(self):
for ai, bi in [(x * a, b), (a, x * b)]:
self.assertEqual(scalar_mul(ai, bi).expand(),
(x * scalar_mul(a, b)).expand())
if __name__ == "__main__":
main()
入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))
% ./sample7.py -v
7.
test1 (__main__.TestTrace) ... ok
test2 (__main__.TestTrace) ... ok
test3 (__main__.TestTrace) ... ok
----------------------------------------------------------------------
Ran 3 tests in 0.090s
OK
%
0 コメント:
コメントを投稿