Processing math: 100%

2017年10月29日日曜日

学習環境

線型代数入門(松坂 和夫(著)、岩波書店)の第3章(線型写像)、9(線型写像の像と核)、問題8.を取り組んでみる。

  1. X1、X2を任意の2次元行列とする。

    F(X1+X2)=A(X1+X2)=AX1+AX2=F(X1)+F(X2)

    Xを任意の二次元の行列、cをスカラーとする。

    F(cX)=A(cX)=c(AX)=cF(X)

    よって、FはM2(R)の線型変換。

    F((1000))=A(1000)=(1144)(1000)=(1040)F((0100))=A(0100)=(1144)(0100)=(0104)F((0010))=A(0010)=(1144)(0010)=(1040)F((0001))=A(0001)=(1144)(0001)=(0104)a1=(1040),a2=(0104),a3=(1040),a4=(0104)a3=a1,a4=a2ImF=a1,a2rankF=2

    よって、線型変換の階数は2。

    F((abcd))=OA(abcd)=O(1144)(abcd)=O(acbd4a+4c4b+4d)=Oac=0bd=04a+4c=04b+4d=0c=ad=b(abcd)=(abab)=a(1010)+b(0101)KerF=(1010),(0101)nullityF=2

    よって、線型変換の退化次数は2。

コード(Emacs)

Python 3

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

print('8.')
A = Matrix([[1, -1],
            [-1, 0]])
X1 = Matrix([symbols('a b'),
             symbols('c d')])
X2 = Matrix([symbols('e f'),
             symbols('g h')])
Z = Matrix([[0, 0],
            [0, 0]])
F = lambda X: A * X
k = symbols('k')
for t in [A, X1, X2, F(X1 + X2), F(X1) + F(X2), F(X1 + X2) == F(X1) + F(X2),
          F(k * X1), k * F(X1), F(k * X1) == k * F(X1)]:
    pprint(t)
    print()

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

$ ./sample8.py
8.
⎡1   -1⎤
⎢      ⎥
⎣-1  0 ⎦

⎡a  b⎤
⎢    ⎥
⎣c  d⎦

⎡e  f⎤
⎢    ⎥
⎣g  h⎦

⎡a - c + e - g  b - d + f - h⎤
⎢                            ⎥
⎣   -a - e         -b - f    ⎦

⎡a - c + e - g  b - d + f - h⎤
⎢                            ⎥
⎣   -a - e         -b - f    ⎦

True

⎡a⋅k - c⋅k  b⋅k - d⋅k⎤
⎢                    ⎥
⎣  -a⋅k       -b⋅k   ⎦

⎡k⋅(a - c)  k⋅(b - d)⎤
⎢                    ⎥
⎣  -a⋅k       -b⋅k   ⎦

False

$

0 コメント:

コメントを投稿