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

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

圏ΩΟ、モデル論、ambient category

ΩΟに空集合を入れるのは止めた。直和が定義できないのだから始対象だけあってもしょうがない。

なんかのモデル論をやるとき、その内部でモデルを構成する側の圏を背景圏(ambient category)と呼んでおこう。Set、Ord(順序集合)、Vect(線形空間)なんかが背景圏によく使われますね。ΩΟ(Omega-Omicron)も背景圏のために定義した。

  1. ΩΟは具象的である。手で触れる。
  2. ΩΟは直積と終対象を持つ。
  3. ΩΟは指数を持ち、デカルト閉である。
  4. ΩΟは自分自身でenrichされている。
  5. ΩΟは共変、反変のpower monadを持つ。
  6. ΩΟは集合圏からの自然な埋め込み関手を持つ。
  7. ΩΟはConway不動点オペレータを持つ。
  8. ΩΟはトレース付きモノイド圏である。

あと、dualityがあるといいんだけどな。

教訓

今までやって気が付いたことを再確認しておこう。

  • 代数構造にこだわりすぎない。
  • 順序を忘れるな、順序が本質。
  • 不動点⇔μオペレータ⇔トレース -- つまりCSHH定理を使え。
  • 対称σの扱いに注意。
  • 直和の扱いに注意。

Sequenceの代数は確かにクリーニ(クリーネ)代数になるのだが、他の領域もきれいな代数になるとは限らない。実は代数構造がなくてもなんとかなるし、演算の選び方も激しく恣意的。順序さえあればいいのだ。だから順序に注目すべき。

不動点は順序から構成する。不動点概念とμ記法による表現とトレースを使った意味論、となる。表現の圏のほうが扱いが難しい。表現の圏では、対称や直和がみえにくくなるので注意。人間が手で扱う表現とモデルとのあいだに、適当な圏(二圏、hom-catは表現の書き換えの圏)をはさむと良いだろう。α変換とμ計算の形式的体系が必要だ。

Conway不動点のμ表現

  1. 不動点:f = <f, A>;f -- μx.f(x, a) = f(μx.f(x, a), a)
  2. 自然性:[(g×X);f] = g;f -- μx.(f(x, g(b)) = (μx.f(x, a))[g(b)/a]
  3. 対角自然性:(f;g) = [(A×g);f] -- μx.g(f(x, a)) = μt.f(g(t), a)
  4. 対角性(ダブルダガー):(f) = [(A×Δ);f] -- μx.(μx'.f(x', x, a)) = μx.f(x, x, a)

μで書くと、また違った味わい。

ちなみに、Conwayのdouble iteration identities, composition identitiesは、t = t(x, y, z1, ...), s = s(x, z1, ...), r=r(x, z1, ...) として、

  1. μx.(μy.t) = μz.(t[z/x, z/y]) (ダブルダガー
  2. μx.(s[r/x]) = s[μx.(r[s/x])/x] (対角自然+不動点性)

http://citeseer.ist.psu.edu/bloom00iteration.htmlより。)

普通の自然性はどうなっているんだ?

それはそうと、λ記法やμ記法を使うと簡単になるのかな? 圏論にあわせると、なんだか風変わりなラムダになってしまう気もする。Katyだって、まーラムダみたいなもんだしな。