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

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

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

参照用 記事

順序集合の上でモナドなど

昨日の「またインデックス付き圏が出てきたけど、これはどうなっている?」とかで当てずっぽうを言ってるわけですが、圏論の一般的命題で「だいたいこんな感じかなー?」と山勘で思ったときは特殊例を作って状況証拠ぐらいは集めるようにしています。特殊例として便利なモノとして順序集合があります。順序集合は圏とみなせるので、一般的な命題を順序集合に適用してみると、簡単に確認できることがあるのです。

もちろん、順序集合で成立しているからって、圏一般で成立するとは限りませんが、実験の道具としては使いやすいと思います。id:oto-oto-otoさんが、順序集合を圏とみなす話を書いているので、参考にしてみてください。

次のような対応があります。

圏一般 順序
順序構造を持つ集合
対象 集合の要素
順序 x≦y
恒等射 反射性 x≦x
射の結合 推移性
順序 x≦y のx
余域 順序 x≦y のy
反対圏 反対(逆)の順序構造
関手 単調(順序を保存する)写像
自然変換 単調写像のあいだの順序
関手圏 単調写像全体と順序構造

モナドと閉演算

もう少し対応を進めて、順序集合の上でモナドを考えてみます。以下、記号「≦」で順序関係を表すとします。線形順序(全順序)とは限らないし、実際はプレ順序でかまいません。反対称性は必須ではないし、邪魔になることもあります(後述)。

モナドの台は自己関手なので、上の対応表から自己単調写像 f:A→A に注目することになります。自然変換は、単調写像の順序なので、モナド単位は、id ≦ f、モナド乗法は f・f ≦ f となります。ここで、f ≦ g とは ∀x∈A.(f(x)≦g(x)) のこと。また、「・」は反図式順の結合(合成)です。fの性質を具体的に書くと:

  1. x∈X に対して x≦f(x) (増大性)
  2. x∈X に対して f(f(x))≦f(x)

反対称律を仮定すれば、この2つの性質から f(f(x)) = f(x) が出てくるので、fはベキ等写像です。モナドの単位律と結合律は自動的に満たされます。

順序集合Aの自己単調写像で、上の性質を満たすものは閉演算とか閉包演算子(closure operator)とか呼ばれるものです。単に閉包と呼ぶことも多いですね。閉演算の例をいくつか挙げます。

  1. 実数の普通の順序に関して、切り上げ操作は閉演算です。
  2. Xを位相空間として、A = Pow(X) をベキ集合に包含順序を考えたものとします。Xの部分集合にその(位相的)閉包を対応させる操作はA上の閉演算です。
  3. Xをアフィン空間として、A = Pow(X) をベキ集合に包含順序を考えたものとします。Xの部分集合にそのアフィン凸包を対応させる操作はA上の閉演算です。
  4. Sを演繹系、Xを演繹系の命題(論理文)全体の集合とします。A = Pow(X) をベキ集合に包含順序を考えたものとします。Xの部分集合に、その集合を公理系として証明可能な命題全体を対応させる操作はA上の閉演算です。
  5. Vを集合として、A = DiGraph(V) を、頂点集合をVとする(多重辺は持たない)有向グラフの全体とします。辺集合の包含順序をグラフの順序とします。G∈A に対して、その反射的推移的閉包を対応させる操作はA上の閉演算です。

クライスリ圏の構成

Aが順序集合で、f:A→A が閉演算とします。モナドのクライスリ圏に相当するものは、閉演算fから作った新しい順序集合です。順序構造の台集合は同じAを使い、新しい順序 ≦' を次にように定義します。

  • x≦'y ⇔ x≦f(y)

≦' が順序になっているでしょうか?

  • x≦'x ⇔ x≦f(x)
  • (x≦'y かつ y≦'z ならば x≦'z) ⇔ (x≦f(y) かつ y≦f(z) ならば x≦f(z))

これは閉演算の性質からすぐに出ます。

  • (x≦'y かつ y≦'x ならば x=y) ⇔ (x≦f(y) かつ y≦f(x) ならば x=y)

これは反例があります。アフィン凸包の例で、xは2点、yはその2点の中点を入れた3点とします。xの凸包もyの凸包も線分です。凸包で見ると区別付きませんが、xとyは等しくありません。

というわけで、クライスリ圏に相当する“順序集合”を考えるときはプレ順序集合まで定義を弱めないとうまくいきません。プレ順序集合の範囲内で考えると次が成立します。

  • (A, ≦)がプレ順序集合、fがA上の閉演算のとき、x≦'y ⇔ x≦f(y) で定義される関係≦'は再びA上のプレ順序となる。
  • 集合A上の恒等写像は、(A, ≦)→(A, ≦') とみなして単調写像である。

以上の手順で(A, ≦)から作った(A, ≦')がクライスリ圏に当たり、恒等写像による (A, ≦)→(A, ≦') が標準的な埋め込みとなります。

アイレンベルク/ムーア圏だのナンダノの構成

fがA上の閉演算のとき、モナドの代数に相当するものは、f(x)≦x となるようなxですね。Aが順序集合なら、反対称律からxはfの不動点になります。「モナドの代数≒閉演算の不動点」です。Aがプレ順序集合のときは、「x≦f(x) かつ f(x)≦x」な点です。厳密にはxは不動じゃないですが、たいして動いてはいないので「ほぼ不動点」と言っていいでしょう。

閉演算fの不動点(ほぼ不動点)の集合を Fix(f) = {x∈A | f(x)≦x} とすると、AとFix(f)を一緒にした構造(A, Fix(f))がアイレンベルク/ムーア圏に対応します。Xが位相空間で、A = Pow(X) のときは、Fix(A)がXの閉集合の集合になります。ですから、(A, Fix(f)) = (Pow(X), Xの閉集合全体) となり、アイレンベルク/ムーア圏が位相構造の表現になっています。

インデックス付き圏に対応するのは、順序集合(プレ順序集合)Iでインデックス付けられた順序集合の族です。関係する事例が、「ホーア論理の圏論的な定式化」にあります。ホーアトリプルは、順序に関するグロタンディーク構成から得られると考えられます。

圏の圏Catに相当する圏は、順序集合と単調写像の圏Ord、あるいはプレ順序を考えたPreOrdとかです。圏とプロ関手の圏に相当すると思われるORelに関しては「順序付き関係の圏」で触れています。

随伴に相当する概念はガロア対応(Galois connection)と呼ばれます。単調写像の組 f:A→B、g:B→A で、f(x)≦b ⇔ x≦g(b) となるものです。したがって、圏と随伴対の圏の対応物は、(プレ)順序集合とガロア対応の圏だろうと思われます。

という具合に対応を追えば、思い付きを実験してみることが比較的容易にできます。