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

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

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

参照用 記事

All Evil comes form dualities

モニャドセミナー4のとき、hirataraさんが、「モノイドの双対であるコモノイド」の定義に関して、なにかにこだわっている様子でした。後からご自分で「イコライザの双対はコイコライザ」*1という例を出してますので、コモノイド概念はご理解いただけたのだろうと思います。

それにしても、毎度のことではありますが、用語の多義的使用にはホントにまいりますよ。懇親会でも出た話題ですが; 僕は「白紙で考えてね」と強調するんですが、そうはいっても自分が知っている言葉が出れば、それを自分が知っている意味で解釈するのは当たり前で、なにもかも白紙で考えるなんて不可能です。

「双対」という言葉も、色々な場面で色々な意味で使われる言葉で、頭痛の種ですわ。「モノイドの双対はコモノイド」というときの「双対」は、次のような意味です -- ある概念や構造を、圏論の標準的方法で定義したとき、その定義に出てくる射を全部逆向きにした概念/構造を、もとの概念/構造の「双対」と呼ぶのです。

矢印のひっくり返しとしての「双対」

簡単な例として、「終対象」という概念を考えてみます。圏Cのなかで「Aが終対象である」という命題は、次のように書けます。

  • ∀X∈|C| ∃!f∈C .(f:X→A)

論理式の代わりに自然言語で書けば:

  • Cの任意の対象Xに対して、f:X→A という射fが、常にただ1つだけ存在する。

この命題に出現する射(の記号)はfだけで、f:X→A、矢印をひっくり返すと f:X←A ですが、普通は f:A→X と書きます。「f:X→A」を「f:A→X」に置き換えてみると、先の命題は次のようになります。

  • ∀X∈|C| ∃!f∈C .(f:A→X)
  • Cの任意の対象Xに対して、f:A→X という射fが、常にただ1つだけ存在する。

これは、「Aが始対象である」という命題です。つまり、「終対象」という概念の双対概念である「始対象」は、矢印のひっくり返しにより定義できます。このことを、「終対象の双対は始対象」と言うわけです。

「終←→始」のように、うまくペアになる形容詞がないときは、「余/コ」を付けて命名します。それが、「イコライザ←→コイコライザ」、「代数←→余代数」、「モノイド←→コモノイド」「クライスリ圏←→余クライスリ圏」といった言葉の対です。「直積←→直和」も双対で、人により「直積←→余直積」とも言います。

双対な概念/構造はまったくの別物

ある概念/構造の定義から、何も考えなくても機械的に双対的な概念/構造を定義できます。そうやって定義した2つの概念は、定義の上では「単なるひっくり返し」なんですが、具体的な圏のなかで具体例を考えてみると、たいていはまったくの別物です。

終対象と始対象は、概念/定義としては双対ですが、だからといって、終対象と始対象が同じとか似てるとかにはなりません。終対象の存在が、始対象の存在を保証するわけでもないし、その逆も成立しません。モノ(モニックな射)とエピ(エピックな射)も双対ですが、モノ射とエピ射は全然似てません。モノ射からエピ射を作る手段もないし、モノ射の背後にエピ射があるとか、モノ射とエピ射が1:1に対応するとかいうこともありません。

ここで注意しなくてはならないのは、「圏Cのモノ射は、Cの反対圏Copではエピ射」という事実があることです。これをもって「モノ射とエピ射が1:1対応する」と主張するのは間違いではないのですが、あまりにもつまらなくて、何も言ってないのと同じです。モノもエピも同じ圏Cのなかで考えてはじめて興味深くなるのであって、C内の概念がCop内の双対概念に対応するのは当たり前過ぎます。

Copのようなツマラナイ例じゃなくて、双対概念/構造の具体例を考えると、もとの概念/構造と驚くほど似てないのです。ほんとに別物なんです。例えば、「代数←→余代数」の双対性は、圏論の枠組みがないと気付くのは困難でしょう。例えば、足し算のように任意有限個のモノから結果(答)を出せる演算を備えた「代数」に対して、非決定性オートマトンが、双対である「余代数」の例になっています。

「モノイド←→コモノイド」双対は、「代数←→余代数」の特殊な例ですが、現実に登場するコモノイドは、モノイドとまったく似てないし、背後にモノイドがいるわけでもないし、モノイドからコモノイドを自動的に作れるわけでもありません(特殊な状況では作れることもあります)。

線形代数の双対概念

同じ「双対」という言葉を使っていても、線形代数に出てくる双対空間や双対写像は状況も意味も違います。有限次元ベクトル空間の圏で考えることにすると、ベクトル空間Vにその双対空間V*を対応させることができ、(V*)* は V と同じ(正確には自然同型)です。

有限次元ベクトル空間の圏をFdVectとして、D(V) = V*, D(f) = f* (fの双対写像)とすると、D:FdVectFdVect は反変関手となり、D;D = IdFdVect となります。ホントはイコールじゃないけど、だいたい「2回適用するともとに戻る」と言っていいでしょう。

「2回適用するともとに戻る」ことは、Dは鏡映変換に似ています。つまり、双対の世界を「鏡の世界」と思えるわけです。有限次元ベクトル空間の圏は、もとの世界と鏡の世界が重なったような構造を持つのですが、これはとても特殊な例です。

白紙から考える

冒頭に書いたように、「なにもかく白紙で考えるなんて不可能」ですが、それでも、矢印をひっくり返す双対に関しては、臆断を排して、愚直に矢印をひっくり返してみてください。矢印をひっくり返した定義を、できるだけ白紙で眺めて、それから事例を見つけたり、性質を調べてみてください。



見出しの All Evil comes form dualities は、「圏論講義ビデオの制作ユニット The Catsters」で紹介した tom74730 (Tom Sunders)さんの奇妙なビデオ http://www.youtube.com/watch?v=U1DN0_PEJAE に出てきたセリフです。Tomさんの真意はサッパリわかりませんが、dualities をうまく使えば、All Virtue comes form dualities かも知れません(まー、言い過ぎだけど)。

*1:僕は、「等値射、または等値核」、「余等値射、または余等値核、または等値余核」と漢字で書くほうが好きです。