Wednesday 28 September 2005

手の届かないもの (fj.sci.math)



まぁ、たくさんあるよね。お金で買えるものって割りとなんとかなるものなんだけど、自分の頭で理解できないものの話。



物理でも数学でもすごく高度で複雑なものってのはあるわけで理解できないものってあるよね。いろんな前提が入っていて、それを勉強しなければならなくて、量が多いものとか。一方で「論理的に正しいものなら誰にでも一つずつ追っていけばわかる」はずでもある。なので、どんなに複雑な理論でも分解していけば一つ一つの正しさはわかるはず。でも理解するってのは、それを全体的に把握しているかどうかでもある。そのあたりの限界みたいなのはあって、何十年かかっても理解できないものってのもあるわけだ。時間さえかければ良いってわけじゃない。



ファインマン先生の言うように「自分で発見しないと理解したことにならないWhat I cannot create, I do not understand」ってことだから。



例えば、僕はガロア理論は結構細かく追ったけど、可解群が結局なんなのかっていう直観的な理解はないです。量子論も摂動計算は出来るけど、場の量子論の計算はやったことないです。ってわけで標準理論とか弦理論はやってません。熱力学とかも構造関数あたりになってくると落ちこぼれてます。プログラムの型理論とかCPS変換とかも面白そうってよりは、めんどくさい感じ。Fix point意味論とか時相論理とか理解した部分もあるけど。



自分でプログラムを書いていても自分の限界を越える時がたまにあって、そういう時は、プログラム全体の複雑度を下げるようにやり直します。コンパイラが越えやすい。デバッグ出来なくなるとか、正しさを確認出来なくなるような感じ。関連するソースのコードが3000行を越えるとやばい。



そういう限界を縮小していくと、高校の数学が理解できなくて落ちこぼれるってのになるのかな? いや、やっぱり「めんどくさいから諦めてる」? でも、もしそう思うなら、自分の手の届かないものもそうなんじゃないか?



「できない」って決めつけるのは、まぁ、ある意味では楽なんだけど、やっぱり「一つずつ追っていけばできる」はず。そこを諦めちゃいけないってことかな。あるいは、その「理解する」ってこと、そのもにコンピュータって関与できないの? 複雑なプログラムに関してはなんか出来そうな気がするが... コンピュータが代わりに理解するってのではなくて、自分が複雑なものを理解するのを手助けするみたいな感じかなぁ。

No comments: