このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

圏的オペレータ

最近(とはいっても3年とかのスパンで)思っているのだが、圏的なオペレータ(cateogorical operators)が重要だよね。でも、あまりまとまった記述や指摘がないし、そもそもオペレータの定義や一般論が難しいので、オペレータは影にかくれやすい。ここで、定義らしきことを考えてみる。

Cが圏のとき、Obj(C)を|C|、Mor(C)は単にCと書く。オペレータは族の集合として与えられるから、先に族を定義する。Aがなんらかの集合だとして、Aをインデックス集合とする族は次のようなもの。

  1. 対象の族: A→|C| という写像
  2. 射の族: A→C という写像
  3. 対象写像の族: A→PMap(|C|, |D|) という写像。PMapは下に説明。
  4. 写像の族: A→PMap(C, D) という写像。PMapは下に説明。

ここで、「f∈PMap(A, B) ⇔ f:X→Y, X⊆A, Y⊆B」、Aの部分集合からBの部分集合への写像がPMap。

インデックス集合Aは、たいていは、圏の対象類|C|や、その直積になっている。典型的なオペレータはトレースだろう。TrA,BX:C(A×X, B×X)→C(A, B) なので、インデックス集合(|C|×|C|)×|C|とする、射写像の族になっている。射写像(部分写像)の場合、その定義域、余域はホムセットの場合が圧倒的に多い。

圏の結合、恒等、関手、自然変換もオペレータと思える。その他に思いつく例を挙げると:

  1. スター・オペレータ: X |→ X*
  2. 二重双対同型:τX:X→X**
  3. ブレイディング:βX,Y:X×Y→Y×X、特殊ケースが対称σ
  4. ツイスト:θX:X→X
  5. アソシエータ:αA,B,C:A×(B×C)→(A×B)×C
  6. ユニッタ:λA:1×A→A
  7. Kelly単位:ηA:1→A*×A
  8. Kelly余単位:A×A*→1

関手性や自然性を持つとは限らないオペレータを使って定義される構造がどんどん増えているような気がする。