数学ガール

もっと若い頃にこういう本読んでたらもう少し真面目に勉強したのかもしれない。


そう思えるくらいのわかりやすさと感動があった。フィボナッチ数列くらいは知ってたけど、こいつを一般項で表せるとは。母関数を使って数列の一般項を表す式を導き出す様はなんとも面白い。それから、今まで難しい言葉と思い込んでたものもちゃんと読んでいけば意外と理解できる範囲内のものだとわかったことが本書を読んで得た一番の価値だ。ゼータ関数って名前だけ聞いたことあって、超難しいやつだと思ってたけど数式自体は簡単。これ。

\zeta(s) = \sum_{n=1}^\infty \frac{1}{n^s}

数式はこんなに簡単。簡単なのはここまでだけど。


それから本書で解いてたバーゼル問題。これ、昔は難問だったのだよなぁ。それが今では俺でも理解できるような世の中になってる。解くことと理解できることはレベルが違うけどさ、今は問題を解くための色々な、十分に磨きがかけられた武器があるから理解できるわけだ。と言うことは、世の中には俺の知らない問題を解くための武器がめちゃくちゃたくさんあるだろうから、まずどんな武器があるのかを知って、それからそれぞれの取説読むのが賢者への近道なのではなかろうか。

・・・とここまで書いて思ったけど、これってEffective Javaの項目30,「ライブラリーを知り、ライブラリーを使う」ってやつだ。武器を知って武器を使うってことだ。こんなの数年前から知ってたのに別分野の世界に来るとなんで今まで知らなかったかのようになってしまうんだ?ここに大きな理解の壁があるに違いない。分野が変わっても今までの学びを活かせるところなんてきっと山ほどあるだろうに、「違うもの」として見てしまうからこんなことになってしまうんじゃないか。


前回数学ガールシリーズのゲーデル不完全性定理を読んで、Σはfor文、みたいなこと書いたけど今回はswitch文見つけた。

 a_k = \left\{  {0 \text{       if k mod 4 = 0} \\ \frac{1}{k!} \text{      if k mod 4 = 1} \\ 0 \text{       if k mod 4 = 2 } \\ -\frac{1}{k!} \text{    if k mod 4 = 3}}\right

なんというswitch文。switchがあまり美しくないのはプログラミングでも数式でも一緒だ。場合分けせずピッと一発で一般項与えられたらカッコいいのに。


この作者の本はデザパタ本リファクタ本などハズレが無い。これだけわかりやすくて知的好奇心を刺激することができるのなら、プログラマーやサラリーマンが片手間に読むものじゃなくて教科書作っちゃう方向にシフトしていくってのはどうかな。教科書って重要なことたくさん書いてあるけど感動が無い。だから授業がつまらなくなる。学ぶ楽しさをずっと知ること無く、勉強は苦痛であることとしか知らないまま大人になってしまう。もっとみんなが楽しく学べる環境って作れないものかね。


最後に、今後の自分に向けて本書の主人公の一言を引用しようと思う。

数学を、酸っぱいブドウにしてはだめだ。

数学ガール (数学ガールシリーズ 1)

数学ガール (数学ガールシリーズ 1)