2018年5月30日水曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の6章(線形写像)、9(行列の逆転)、練習問題2.を取り組んでみる。


  1. det A = 0

    とし、 A が逆行列をもつと仮定すると、

    det A A - 1 = det A det A - 1 det I = 0 · det A - 1 1 = 0

    よって矛盾する。

    ゆえに、 A は逆行列をもたない。

コード(Emacs)

Python 3

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

print('2.')

t = 0
n = 5
while t < 5:
    A = Matrix([[random.randrange(-10, 10) for _ in range(5)]
                for _ in range(5)])
    if A.det() == 0:
        try:
            pprint(A)
            pprint(A ** -1)
        except Exception as err:
            print(type(err), err)
        finally:
            t += 1

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

$ ./sample2.py
2.
⎡-3  -6   -7   2   0 ⎤
⎢                    ⎥
⎢0    0    0   0   0 ⎥
⎢                    ⎥
⎢7    9   -4   -1  -8⎥
⎢                    ⎥
⎢4   -10  -10  4   -7⎥
⎢                    ⎥
⎣1   -10  -4   9   -2⎦
<class 'ValueError'> Matrix det == 0; not invertible.
⎡0   -8  -6  -6  -2⎤
⎢                  ⎥
⎢-9  -6  -7  -2  -3⎥
⎢                  ⎥
⎢-3  -2  -9  -4  9 ⎥
⎢                  ⎥
⎢6   -3  -9  -5  1 ⎥
⎢                  ⎥
⎣3   -7  -5  -7  2 ⎦
<class 'ValueError'> Matrix det == 0; not invertible.
⎡-4  -1  1   4   4 ⎤
⎢                  ⎥
⎢8   5   9   9   -4⎥
⎢                  ⎥
⎢-3  1   1   3   7 ⎥
⎢                  ⎥
⎢-5  -5  -8  -9  -3⎥
⎢                  ⎥
⎣4   -7  -2  -4  8 ⎦
<class 'ValueError'> Matrix det == 0; not invertible.
⎡-8  -10  5   0   -8⎤
⎢                   ⎥
⎢5    4   0   5   5 ⎥
⎢                   ⎥
⎢7    8   -7  -7  0 ⎥
⎢                   ⎥
⎢8   -7   2   2   8 ⎥
⎢                   ⎥
⎣-7   1   -4  -9  7 ⎦
<class 'ValueError'> Matrix det == 0; not invertible.
⎡4   -4  0   -2  4 ⎤
⎢                  ⎥
⎢3   3   -4  1   9 ⎥
⎢                  ⎥
⎢8   9   -7  0   -5⎥
⎢                  ⎥
⎢5   -3  -1  -2  2 ⎥
⎢                  ⎥
⎣-6  -5  3   1   -1⎦
<class 'ValueError'> Matrix det == 0; not invertible.
$

0 コメント:

コメントを投稿