このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

モニャドセミナー3の内容(あくまで予定!)

モナドの概念と実例を、(なるべく)ショートカットしないで紹介する -- それがモニャドシリーズの目的でした。「ショートカットしない」とは、モナドを「自己関手の圏内のモノイド」として定義して理解することです。他の定義もありますが、これがやはり一番応用が利くし本質を突いているように思えます。

「自己関手の圏内のモノイド」を理解するには、関手と自然変換の概念が必要です。というわけで、第3回の中心的な話題は関手と自然変換です。関手をモノ(あるいは点)、自然変換をハタラキ(あるいは矢印)と思えれば、関手と自然変換の圏(圏の圏の指数対象)が構成できます。

“メタの梯子”を随分と高いところまで登りますが、登った場所から見ると、例えば自然数の足し算とモナドが同類であることがわかります。N = {0, 1, 2, ...} として、普通の足し算はモノイドです。圏Cの自己関手Mと、自然変換η、μがモナドとのとき、次のような対応があります。

舞台となる圏 集合圏 C上の自己関手の圏
具体例 自然数 とあるモナド(M, η, μ)
2項演算の定義域 N×N M;M
2項演算 + μ
単位 0 η

モナドの実例も、最低1個は出したいと思っています。モナドの最初の例をなんにしようか? まだ決まってません。

続く第4回では、モナドの例をできるだけ多くだして、クライスリ圏の説明ができればいいな、と考えてます(どうなるか分からんけど)。圏CとC上のモナドMがあれば、クライスリ圏 K = Kl(C; M) を作れます。多くの(全てではない)事例では、CをKに埋め込むことができます。そして、Cで出来なかったことがKでは出来る、という具合になります。

特に、計算の文脈では、クライスリ圏(クライスリ構成)は自然に現れてとても役に立ちます。モナドのコースでクライスリ圏まで行かないのはなんか中途半端、つうかもったいない感じです。だから、4回でクライスリ圏まで行けたらいいな、と。でも、今度は第3回です。