著作一覧 |
以前買ったまま放置していたエルデシュの伝記を読了。
知識のある人間についてかかれたところは興味深いということもあるのだが、晩年(どうも30代以降はすべて晩年だったような)のゲーデルが妻の作った食べ物以外は一切口にできなくなり(毒を盛られることを心配していたそうだ)、妻が入院したために餓死したというエピソードに恐怖する。
主人公のエルデシュが一時期プリンストンの研究所で働いていたので、ゲーデルやアインシュタインも登場するのだ。
モンテカルロ法はノイマンに関係しているのだと思っていたが、この本を読むとスタニスワフ・ウラム(読み物だからしょうがないとは思うが、途中からスタンと書かれるので、この初出のスタンとはどこの誰だ? となったりする)という人が方法論を確立したことが、共通の知人がモンティ・ホール問題をモンテカルロ法(この名前もウラムの知人にちなんで命名されたとしている)を使ってエルデシュに示すところで書かれていたりするのだが、そういうものなのだろうか。
ベーラ・クーンは、反スタ文献にちょろっと出てきて粛正されてしまうだけの良くわからない人物だが、ここで無血革命と3ヶ月天下の人として出てきて、はじめてつながりがわかったという、読む前にはまったく期待してもいないことを知ったりもした。エルデシュの母親はクーン体制に好意的だったせいで、続く独裁政権(必ずしも親ナチではなく、圧力によってナチ化したこともこの本で初めて知ったり。というか東欧の歴史というのはあまりに断片的にしかわからないものだ)ではパージされていて、逆にそのせいでソ連による(ある種の)解放後は優遇されて、おかげでエルデシュは特別製のパスポートをもらえた(しかし、ソ連の圧力によって良い関係も長くは続かない)とか、それ以上に、中国人の数学者と文通をしていたり、日本人の数学者とうろうろしてスパイとして捕まったりとかのせいでアメリカから追放されたり、政治とは無縁に生きていそうでどっぷり1930年以降の政治の最前線に立たされていたりと、いかにでも読みどころがある。
突然友人の家に門付にきてそのまま議論を戦わせて去っていくとか、こだわりの単語を使うとか(女性をボス、アメリカをサム、ザブックは誰でもザブックなのかな?とか、SFとか。最初何かサンフランシスコの天候のことを書いているのかと思ったら全能の存在の意味だったり)、それなりに人間としての奇矯な振る舞いについても書かれているが、それはそれほど興味深いことではない。
むしろ、素数回りについてだけで一生を考え続けることができるネタがあるということのほうに驚嘆した。
というわけで、20世紀の国際政治史やら多分何かのスペクトラムの内側の人についてやら、素数や、(途中でゲーデルの成果を説明するためだと思うが、リーマンによって幾何学の基盤が破戒されたのに恐怖した数論の人たちが基盤を確立させようとフレーゲが立ち上がり、ヒルベルトが鼓吹して、それをラッセルが突き崩して(集合の集合が矛盾することについて簡単に書かれているが、それはメタ数学でなければならないという指摘なのかな、ここはすごくおもしろかったが理解できたとは思わない)、絶望したフレーゲの代わりにラッセルがホワイトヘッドといっしょに再興させようとしたところを、ゲーデルが完膚なきまでに叩き崩し、それによってラッセルが政治の人に転身し…というようなエピソードとか、いろいろな内容が詰め込まれているので読み物としてのおもしろさは抜群だった。
そういえばモンティホール問題のエピソードで、なぜエルデシュほどの数学者が1/2と考えてしまうのかについて、状態より現象という姿勢から来るのではないか(状態というのは連続しているが、現象というのは独立しているというような意味だと思う)とヴァージョニという数学者が考察しているのが、興味深かった。興味深いというかわけがわからないというか。エルデシュという人の功績として確率的方法の考案ということが直前の章に出ているのだが、(ここでわからなくなって再度、本を眺めてみる)だからモンテカルロ法の結果を見て納得したのだろうけど、どうも奇妙な感じがある。
久々の青木さんの日記を読んでいて、つい最近、仕事でJavaのプログラムを書いていて、何か一点、あーC#のあの面倒なvirtual−overrideにもすごく利点があるな、と思ったのだが思い出せない、と書いているうちにやっと思い出した。
確実なんだよね。
例によってEmacsを使って(Eclipseなんか使わないし、それよりはましとはいえNetBenasだっていまさんよんだし)いて、どうもこのメソッドはオーバーライドしているつもりだが、本当にこの綴り(だか引数だか)で良かったかな? と詰まったところがあったのであった。
で、リファレンスを参照すれば(参照の重複)良いのだが、面倒だね。
これが、C#ならコンパイルすれば存在しないメソッドはoverrideできませんエラーになるか、OKかどっちかだ。基本はOKとして、間違っていたら教えてもらえるわけで、それはそのほうが楽だ。
というわけで、わざわざコンパイルしてチェックする言語なら、C#のほうがいいや。J型のチェックをするなら、メソッドの?(作用か位置か実装形か)もチェックするほうが一貫している。しなきゃしないで、それはそれだし。その一方でJavaはしてほしくもないチェック例外のチェックとかするし。
しかし、C#で書くときはほぼVS使うから、そもそもそんなことを考える必要すらないというわなであったり。
ジェズイットを見習え |
それは @Override で解決したのでは?
ツッコミどうも。エンタなシステムなので1.4.2なんですよ。