トップ «前の日記(2015-11-25) 最新 次の日記(2015-11-28)» 編集

日々の破片

Subscribe with livedoor Reader
著作一覧

2015-11-27

_ ちょっと圏論を歩いてみた

高橋さんの達人出版会 高橋征義の ITエンジニア向けおすすめブックガイドの『圏論の歩き方』の説明がおもしろかったので、つい買って半分読んだ。

多分、残り半分は読まずに、しばらく置いておく。

続けては読まないけど、実におもしろかった。というか無茶苦茶におもしろい。しかもすごく新鮮な読書体験で驚いた。これ、絶対に読んでみるべきだ。とにかくおもしろいから(でも、残り半分はおれは読まないと書いているくらいに、自分にとって、このおもしろさに今、時間を使う価値があるかどうかは別問題だし、それなりの値段もするので、必読とまでは言わないけど、でもおもしろい)。

なんかいい加減なまえがきがあって、はてどういうことだろう? と読み進めると目次があって、さっぱりわからない名前(タングルの圏とかモナドのクライスリ圏だの)が並んでいて、はてどうなることやらとさらに読み進めると、いきなりえらく野放図な座談会になる。座談会は野放図なのだが、飛び交う言葉はくそまじめである。

学際研究の大切さをわかっている人たちの言葉として、圏論は異分野協働のための知のベースとなるというようなことを言い出す。

こういうのはわかる。いかなる問題であろうとも、観察(考察)-仮説-検証(事例発掘)というフレームワークがまずあって、演繹かあるいは帰納か方向は異なれど、論理によって事物を解釈していことは共通であり、そういった思考の方法論が共通基盤として機能する。圏論とは、そういった事物を正しく見るための基盤として、きわめて大きな範囲で物事をとらえて分析するためのフレームワークというようなことなのだな、ととりあえずおれは解釈して先へ進む。

それにしても、出てくる人物がみな京都の地名らしいが、1人西郷という名前がいて、しかも最後に「みんな京都っぽい雅な名前になっているのに、なぜ私だけ実名なんですか?」というセリフまで出てきて、おもしろすぎる。のりが軽いのは結構なことだ。

2章から説明になる。記号がいっぱい出てきて圏とは何か説明しているのだが、読んだ先からおおざっぱに理解はできるし、ここらあたりまでは数式も普通に読める(もっとも次々と忘れてもいくので、他人には説明できるレベルにはならない。概念は掴んだような気がするというレベルである)。同値というのが、えらくおおざっぱな同値で、なるほどカテゴリーの世界ではそういうことなのだな、と数学の正確性とは別に、概念的な理解はだいたいできてくるような気がしてくる。

3章がタングルの圏で、言葉がいちいちタングルだ、イソトピックだと見慣れないので、これまた読んだ先から忘れて行くのだが、これまた数式含めておもしろく読める。

でもQ&Aがあって(各章にある)、座談会の続きののりで(専門家が自分の専門分野での圏論を説明するので、他分野の人と、圏論を知らないということになっている二条という人がいろいろツッコミを入れて、読者の理解を促す仕組みらしい)いろいろツッコミを入れるのを読むと、ああ、おれはまったく読めていないのだな、と理解できて、そこもまたおもしろい。というか、おれは何を読んでいるんだ?

4章になると、プログラムの意味論で、これは普通にわかったつもり。

操作性意味論と、表示的意味論の説明のところで、ぱーと命令型プログラミング言語の展開と、関数型プログラミング言語の展開が開けて、おお、やはりそうだったのかと得心した。関数型プログラミング言語の場合、ソースコードがソースコードのまま展開されていくイメージがあったのだが(逆に命令型の場合は文字通りCPUがレジスターとメモリーとIOデバイスの間を操作していくイメージがあるのだが)、本能的に正しく認識しているっぽいぞ、と感じる。

それはそれとして読んでいて楽しい。

5章のモナドと計算効果もそののりでずいずい読めるのだが、なんだか随分式が面倒になってきてあまり味わえないことに気付く。でもやはりおもしろい。

早い話が電車の中で読んでいてまったく普通に読めるのだ。

6章になると難易度が急にあがる。「具体的な話をゆっくり見てもらおうと思います」とあるので、プログラミングの話のあたりくらいに具体的なのかと思うと、「具体例を見てみましょう。ベキ集合モナド℘に対するクライスリ圏Kℓ(℘)は、対象が集合で、射は(略)です。」……そういえば高橋さんが「だいたい数学者が例に挙げる「具体的な例」というのも「要素が3つしかない群」とかだったりして、いやそれ具体的じゃなくて抽象的ではと思ってしまうわけです。」と書いていたなぁと思い出したりする。

で、Q&Aで二条氏が「完全にポカーン……」と書いているので、まあ、読み返すこともあるかも知れないなぁと、良くわからないまま先へ進むわけだが、ここまでも普通におもしろい。

で7章が「表現を<表現>する話」とメタな書き方をしているので、これまた楽しそうだわいと読みはじめるとマグリットの絵の話がマクラで、まあ普通だと読みはじめたら違った。

なんだこれ?

うんと抽象的なレベルでは書いていることはわかる。リソースからリプレゼンテーションへの変換のためのMIMEタイプが関手というような話らしい(多分、正確性は無くても抽象的な理解としてはこれで良いと思う)。が、まったく理解できない。えらくおもしろいことを言っているのはわかる。おもしろさもわかり、書き手が楽しんでいるのもわかる。しかし、まったく理解ができない。おもしろいので読めるのだが、さっぱり何も頭に入らないのには驚いた。普通、ここまでわからなければ、少しもおもしろくないはずだが、おもしろいんだなぁこれが。

で、次の章へ進むといきなり「第7章、あれは何ですか。失礼を承知で言わせてもらいますけど、あなた、自分の書いたものが他の章の内容と同程度の難易度だと、本気で思ってますか?」と二条氏が、西郷氏を怒鳴りつけている。思わず爆笑したが、おお、さっぱりわからなくても別におかしかないようだと読者の気持ちを穏やかにしてくれる章らしい。

で、座談会のメンバーが出てきて、きちんと解釈しながら読むのもあれば、流し読みで必要になったとき用に脳内のどこかに引っかけとく読み方でも良いとか、いろいろ解説が入って、まあ、そうなるよなぁと納得した。

圏論の歩き方(圏論の歩き方委員会)

奇書だな。

# 思い出したが、P.026の下から7行目はあまりにトートロジーなので、「かつ」の後ろはπrじゃないかなぁ(と自信が持てないところが確実な理解ではないところだ)。


2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|

ジェズイットを見習え