Linear Algebra (7)
以下の連立方程式をまず手動で解いてみる事に。
2a + 2b + 3c = 15 3a + 5b + 2c = 19 5a + 3b + 3c = 20
matrix にしてみるとこうなる。
((2 2 3 15) (3 5 2 19) (5 3 3 20)
ちなみに試行錯誤ですので、ボケかましてる場合はご容赦を。
まず最初の行
ケツから 0 にしてみます。使う基本演算は
- i 行目を λ 倍する
- i 行目に j 行目の λ 倍を加える
ってコトでまず
1 行目を 2 行 3 列の値倍する
(4 4 6 60)
次。1 行目に 2 行目の -3 倍を加えれば良い
1 行目に 2 行目の -3 倍を加える
((+ 4 -9) (+ 4 -15) (+ 6 -6) (+ 60 -57))
なので
(-5 -11 0 3)
になるのか。今度は 1 行 2 列を 0 にする。
1 行目に 2 行 2 列の値倍する
(-25 -55 0 15)
次は 2 行目を 11 倍したソレを加えれば良いのか
1 行目に 2 行目の 11 倍を加える
こうなる?
((+ -25 33) (+ -55 55) (+ 0 22) (+ 15 209)
これはダメですな。
リトライ
考え方として、列に着目して操作という手法がある模様。手動で試してみます。
- 2 行目に 1 行目の -3/2 を加える
- 3 行目に 1 行目の -5/2 を加える
- 1 行目を 1/2 倍する
2 行目に 1 行目の -3/2 を加える
こうなります。
((2 2 3 15) (0 2 -5/2 -7/2) (5 3 3 20))
むむ、本当に良いのかなぁ。
3 行目に 1 行目の -5/2 を加える
((2 2 3 15) (0 2 -5/2 -7/2) (0 -2 -9/2 -35/2))
随分壮絶なコトになってる模様。最後に
1 行目を 1/2 倍する
((1 1 3/2 15/2) (0 2 -5/2 -7/2) (0 -2 -9/2 -35/2))
次は 2 列目。
- 1 行目に 2 行目の -1/2 倍を加える
- 3 行目に 2 行目の 1 倍を加える
- 2 行目を 1/2 倍する
てコトで以下
1 行目に 2 行目の -1/2 倍を加える
1 行目が
((+ 1 0) (+ 1 (* 2 -1/2)) (+ 3/2 (* -1/2 -5/2)) (+ 15/2 (* -1/2 -7/2)))
結果が以下。
(1 0 11/4 37/4)
なんか随分分母が大きいんですが気にせず続行
3 行目に 2 行目の 1 倍を加える
3 行目は
((+ 0 0) (+ -2 2) (+ -9/2 -5/2) (+ -35/2 -7/2))
結果は以下?
(0 0 -7 -21)
2 行目を 1/2 倍する
(0 (* 1/2 2) (* 1/2 -5/2) (* 1/2 -7/2))
結果が以下
(0 1 -5/4 -7/4)
結果は
((1 0 11/4 37/4) (0 1 -5/4 -7/4) (0 0 -7 -21))
今度はどうなるかというか、4 倍して 4 で割れば良いのかなぁ。てか
- 1 行目に 3 行目を 11/28 (11/4 を 7 で割った数値) 倍した値を加える
- 2 行目に 3 行目を -5/28 (-5/4 を 7 で割った数値) 倍した値を加えるn
- 3 行目を -1/7 倍する
1 行目に 3 行目を -11/28 倍した値を加える
((+ 0 1) (+ 0 0) (+ 11/4 (* -7 11/28)) (+ 37/4 (* -21 11/28)))
これは以下になります。
(1 0 0 1)
をー。
2 行目に 3 行目を 5/28 倍した値を加える
((+ 0 0) (+ 1 0) (+ -5/4 (* -7 -5/28)) (+ -7/4 (* -21 -5/28)))
これは以下になります。
(0 1 0 2)
3 行目を -1/7 倍する
これは以下になります。
(0 0 1 3)
結果として以下のリストが出てきます。
((1 0 0 1) (0 1 0 2) (0 0 1 3))
解けはした。どう一般化すりゃ良いんだっけ (を