河野真治 @ 琉球大学情報工学です。

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

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

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

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

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

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

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

---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科