2017年12月8日金曜日

学習環境

数学読本〈5〉微分法の応用/積分法/積分法の応用/行列と行列式(松坂 和夫(著)、岩波書店)の第21章(もう1つの数学の基盤 - 行列と行列式)、21.2(行列式)、3次の行列式、第1行と第1列に関する展開式の一致.を取り組んでみる。

det A = a 11 det A 11 - a 21 det A 21 + a 31 det A 31 = a 11 a 22 a 33 - a 23 a 32 - a 21 a 12 a 33 - a 13 a 32 + a 31 a 12 a 23 - a 13 a 22 = a 11 a 22 a 33 - a 11 a 23 a 32 - a 21 a 12 a 33 + a 21 a 13 a 32 + a 31 a 12 a 23 - a 31 a 13 a 22 = a 11 a 22 a 33 - a 11 a 23 a 32 - a 12 a 21 a 33 + a 12 a 23 a 31 + a 13 a 21 a 32 - a 13 a 22 a 31

よって右辺と一致することが確認できた。

コード(Emacs)

Python 3

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

a11, a12, a13, a21, a22, a23, a31, a32, a33 = symbols(
    'a11, a12, a13, a21, a22, a23, a31, a32, a33')

A = Matrix([[a11, a12, a13],
            [a21, a22, a23],
            [a31, a32, a33]])

expr = a11 * A[1:, 1:].det() - a21 * A[0::2, 1:].det() + a31 * A[0:2, 1:].det()

for t in [A, A.det(), expr, expr.expand(), A.det() == expr.expand()]:
    pprint(t)
    print()

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

$ ./sample01.py
⎡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₃₁

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₃₁ + a₁₃⋅a₂₁⋅a₃₂ - a₁₃⋅a₂₂⋅
a₃₁

True

$

0 コメント:

コメントを投稿