2018年6月18日月曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の7章(スカラー積と直交性)、2(正値スカラー積)、練習問題7.を取り組んでみる。


  1. A B = k = 1 n a i k b k j t r A B = l = 1 n k = 1 n a l k b k l t r B A = l = 1 n k = 1 n b l k a k l = l = 1 n k = 1 n a k l b l k = l = 1 n k = 1 n a l k b k l

    よって、可換。

    A , B = t r A B = t r B A = B , A
    A B + C = A B + A C t r A , B + C = t r A B + t r A C A , B + C = A , B + A , C

    また、

    t r x A B = t r x A B = x t r A B t r A x B = t r x A B = x t r t B x A , B = x A , B A , x B = x A , B

    よって、スカラー積である。

    また、行列 A がすべての行列 B に対して、

    t r A , B = 0

    のとき、

    A = O

    よって、退化していない。

コード(Emacs)

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve

print('7.')


def sp(a, b):
    return (a * b).trace()


x = symbols('x')
for n in range(1, 6):
    A = Matrix([[symbols(f'a{i + 1}{j + 1}') for j in range(n)]
                for i in range(n)])
    B = Matrix([[symbols(f'b{i + 1}{j + 1}') for j in range(n)]
                for i in range(n)])
    C = Matrix([[symbols(f'c{i + 1}{j + 1}') for j in range(n)]
                for i in range(n)])
    for t in [A, B, sp(A, B),
              sp(A, B) == sp(B, A),
              sp(A, B + C).expand() == sp(A, B) + sp(A, C),
              sp(x * A, B) == (x * sp(A, B)).expand() == sp(A, x * B)]:
        pprint(t)
        print()
    print()

入出力結果(Terminal, Jupyter(IPython))

$ ./sample7.py
7.
[a₁₁]

[b₁₁]

a₁₁⋅b₁₁

True

True

True


⎡a₁₁  a₁₂⎤
⎢        ⎥
⎣a₂₁  a₂₂⎦

⎡b₁₁  b₁₂⎤
⎢        ⎥
⎣b₂₁  b₂₂⎦

a₁₁⋅b₁₁ + a₁₂⋅b₂₁ + a₂₁⋅b₁₂ + a₂₂⋅b₂₂

True

True

True


⎡a₁₁  a₁₂  a₁₃⎤
⎢             ⎥
⎢a₂₁  a₂₂  a₂₃⎥
⎢             ⎥
⎣a₃₁  a₃₂  a₃₃⎦

⎡b₁₁  b₁₂  b₁₃⎤
⎢             ⎥
⎢b₂₁  b₂₂  b₂₃⎥
⎢             ⎥
⎣b₃₁  b₃₂  b₃₃⎦

a₁₁⋅b₁₁ + a₁₂⋅b₂₁ + a₁₃⋅b₃₁ + a₂₁⋅b₁₂ + a₂₂⋅b₂₂ + a₂₃⋅b₃₂ + a₃₁⋅b₁₃ + a₃₂⋅b₂₃ 
+ a₃₃⋅b₃₃

True

True

True


⎡a₁₁  a₁₂  a₁₃  a₁₄⎤
⎢                  ⎥
⎢a₂₁  a₂₂  a₂₃  a₂₄⎥
⎢                  ⎥
⎢a₃₁  a₃₂  a₃₃  a₃₄⎥
⎢                  ⎥
⎣a₄₁  a₄₂  a₄₃  a₄₄⎦

⎡b₁₁  b₁₂  b₁₃  b₁₄⎤
⎢                  ⎥
⎢b₂₁  b₂₂  b₂₃  b₂₄⎥
⎢                  ⎥
⎢b₃₁  b₃₂  b₃₃  b₃₄⎥
⎢                  ⎥
⎣b₄₁  b₄₂  b₄₃  b₄₄⎦

a₁₁⋅b₁₁ + a₁₂⋅b₂₁ + a₁₃⋅b₃₁ + a₁₄⋅b₄₁ + a₂₁⋅b₁₂ + a₂₂⋅b₂₂ + a₂₃⋅b₃₂ + a₂₄⋅b₄₂ 
+ a₃₁⋅b₁₃ + a₃₂⋅b₂₃ + a₃₃⋅b₃₃ + a₃₄⋅b₄₃ + a₄₁⋅b₁₄ + a₄₂⋅b₂₄ + a₄₃⋅b₃₄ + a₄₄⋅b₄
₄

True

True

True


⎡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₅₅⎦

⎡b₁₁  b₁₂  b₁₃  b₁₄  b₁₅⎤
⎢                       ⎥
⎢b₂₁  b₂₂  b₂₃  b₂₄  b₂₅⎥
⎢                       ⎥
⎢b₃₁  b₃₂  b₃₃  b₃₄  b₃₅⎥
⎢                       ⎥
⎢b₄₁  b₄₂  b₄₃  b₄₄  b₄₅⎥
⎢                       ⎥
⎣b₅₁  b₅₂  b₅₃  b₅₄  b₅₅⎦

a₁₁⋅b₁₁ + a₁₂⋅b₂₁ + a₁₃⋅b₃₁ + a₁₄⋅b₄₁ + a₁₅⋅b₅₁ + a₂₁⋅b₁₂ + a₂₂⋅b₂₂ + a₂₃⋅b₃₂ 
+ a₂₄⋅b₄₂ + a₂₅⋅b₅₂ + a₃₁⋅b₁₃ + a₃₂⋅b₂₃ + a₃₃⋅b₃₃ + a₃₄⋅b₄₃ + a₃₅⋅b₅₃ + a₄₁⋅b₁
₄ + a₄₂⋅b₂₄ + a₄₃⋅b₃₄ + a₄₄⋅b₄₄ + a₄₅⋅b₅₄ + a₅₁⋅b₁₅ + a₅₂⋅b₂₅ + a₅₃⋅b₃₅ + a₅₄⋅
b₄₅ + a₅₅⋅b₅₅

True

True

True


$

0 コメント:

コメントを投稿