

線形代数について初歩から書かれたとても素晴らしい本。しっかりと学びたい人に適している。題名には「プログラミングのための」という文字が入っている。これは数値計算や近似についても扱われているから。プログラミング言語のコードが出てくるわけではない。コンピューターサイエンスへの応用を視野に入れた上での、線形代数の解説になっている。
根本的な発想として、行列は写像だとしている(p.25)。行列を単純な数の並びと見るのではなくて、与えられたベクトルを別のベクトルに変換する写像として見ることが本書が一番の特徴となっている。行列によってベクトルを徐々に変換していく様が見えるコードも用意されている。 これによって例えば行列式は、変換するベクトルをどれだけ拡大縮小するかの拡大率として捉えられるし、 特異行列はベクトルの次元を潰してしまうので逆行列が存在しないということが直感的に分かるようになっている。
このように単純に行列にまつわる性質の定義や計算方法を知っていることよりも、写像としての行列という観点からそうした性質が何を意味しているのかを理解することの方が大事だとしている(p.69, 134)。とはいえ、すべての行列の性質がこうしたやり方で説明できるわけではなく、例えば転置行列の意味についての説明は本書ではやや苦しいものになっている(p. 87)。
行列式をはじめとする行列の基本的な性質、ランクを用いた一次方程式の解法、固有値問題とジョルダン標準形といったところが本書の扱う話題。固有値問題以降は行列は写像であるという観点からではなく、べき乗していった時に値が発散するか、すなわち時間が経った時にシステムが「暴走」するかどうかという設定で扱われている。
また本書がユニークなのは、 行列式、逆行列、固有値などを求める効率的なアルゴリズムについて扱っている点だ。例えばLU分解、固有値を求めるための行列の対角化、Jacobi法、べき乗法、Hessenberg行列を使ったQR法など。Jordan標準形は行列が対角化できない場合のものとして導入される。すべてのn次正方行列がJordan標準形に変換できることの証明は難しかった。
本書で線形代数が何をしているのかについて、具体的なイメージを持つことができた。もっと高く評価されてよい一冊。
スポンサーサイト
- https://exphenomenologist.blog.fc2.com/tb.php/887-5bd18a97
トラックバック
純粋数学系の人ではなく、工学系の人が書いているのがポイントでしょうか。
線形代数に限らず代数系は何らかの「操作」について扱っている分野ですね。
こうした書きぶりの本が少ないのは、行列は確かに初等的な範囲では写像として見られるが、
一般論としては写像のアナロジーで語れない物事がたくさんあるからではないでしょうか。
数学的に一般論を展開しようとすると、写像のアナロジーでは筋が通らないことも多くなり
それなら初めから導入しない方がよい、という判断になるのかもしれません。
実際に本書でも転置行列については、写像としての解釈が難しいようですし。