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

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

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

参照用 記事

クラン、ファイブレーション、スパン

クラン〈clan〉は、ジョイアル〈Andre Joyal〉によって導入された圏論的構造〈構造付きの圏〉です。ジョイアルは、型理論の理論〈theory of type theories〉の基礎としてクランを定義したようです。クランとその双対であるコクランは型理論や計算科学で有用そうです。

クランはディスプレイクラス付き圏と類似しています。ディスプレイクラス付き圏が現れるところでは、代わりにクランを使えることが多いでしょう。

この記事では、クランと、クランから作られる左ファイブレーション的スパンの圏を紹介します。$`
\newcommand{\cat}[1]{ \mathcal{#1} }
\newcommand{\mbf}[1]{ \mathbf{#1} }
\newcommand{\mrm}[1]{ \mathrm{#1} }
%\newcommand{\o}[1]{ \overline{#1} }
\newcommand{\u}[1]{ \underline{#1} }
%\newcommand{\id}{ \mathrm{id} }
\newcommand{\In}{ \text{ in }}
%\newcommand{\On}{ \text{ on }}
\newcommand{\op}{ \mathrm{op}}
\newcommand{\hyp}{\text{-} }
\newcommand{\MC}[1]{\mathscr{#1} }
`$

内容:

ファイブレーションクラス付き圏

クランは、ジョイアルによる次のモノグラムで導入されました。

クランは(特定された)終対象を持つ圏にファイブレーションクラスが載ったものです。まず、ファイブレーションクラスから定義しましょう。

ファイブレーションクラスは、ディスプレイクラスを精密化したものなので、先にディスプレイクラスに関する以下の記事(のひとつの節)を読んでおくとよいでしょう

ファイブレーションクラスは、ディスプレイクラスと同様に、圏 $`\cat{C}`$ の射のクラス〈class of morphisms〉です。ディスプレイクラスの公理である「ファイバー引き戻しに関して閉じている〈closed under fiber pullbacks〉」以外に、追加の公理を要求します。

射のクラス $`\MC{F} \subseteq \mrm{Mor}(\cat{C})`$ が次の条件〈公理〉を満たすとき、ファイブレーションクラス〈fibration class〉と呼びます。

  1. $`\MC{F}`$ は、ファイバー引き戻しに関して閉じている(「拡張包括構造のもうひとつの定式化 // ディスプレイ射とディスプレイ前層」参照)。
  2. $`f\in \mrm{Mor}(\cat{C})`$ が同型射〈isomorphism〉ならば、$`f\in \MC{F}`$ 。
  3. $`f, g\in \MC{F}`$ 、かつ $`\mrm{cod}(f) = \mrm{dom}(g)`$ ならば、$`f;g \in \MC{F}`$ 。これは、「$`\MC{F}`$ は結合〈composition〉に関して閉じている」とも言える。

二番目の条件〈公理〉から、恒等射は $`\MC{F}`$ に属します。これと三番目の条件から、$`|\cat{C}|`$ と $`\MC{F}`$ は、圏 $`\cat{C}`$ の広い部分圏〈{wide | broad} subcategory〉を形成します。この広い部分圏のことも(記号の乱用で)$`\MC{F}`$ と書くことがあります。広い部分圏 $`\MC{F}`$ は、一番目の条件からファイバー引き戻しに関して閉じています。あるいは(同じことですが)、プルバックを持つ圏〈category with pullbacks〉です。

圏 $`\cat{C}`$ とその上のファイブレーションクラス $`\MC{F}`$ の組 $`(\cat{C}, \MC{F})`$ をファイブレーションクラス付き圏〈category with fibration class〉と呼びます。定義より、ファイブレーションクラス付き圏は、ディスプレイクラス付き圏〈category with display class〉です*1

ファイブレーションクラス付き圏 $`(\cat{C}, \MC{F})`$ を、記号の乱用で、

$`\quad \cat{C} = (\cat{C}, \MC{F})`$

とも書きます。記号の乱用をしたくないなら、次のように書きます。

$`\quad \cat{C} = (\u{\cat{C}}, \MC{F}_{\cat{C}})`$

ここで、$`\u{\cat{C}}`$ は、ファイブレーションクラス付き圏の台圏〈underlying category〉で、$`\MC{F}_{\cat{C}}`$ は、ファイブレーションクラス付き圏のファイブレーションクラスです。

ファイブレーションクラス付き圏 $`\cat{C}`$ (記号の乱用)のファイブレーションクラスに属する射をファイブレーション〈fibration〉と呼びます。様々な具体的“ファイブレーション”がありますが、ここでのファイブレーションはあくまで公理的・形式的に定義されたファイブレーションなので、具体的にそれが何であるかは何も規定していません。「それをファイブレーションと呼ぶ」と決めたからファイブレーションなのであって、それ以上に具体的な内容を持ちません。

クランとコクラン

圏 $`\cat{C}`$ が終対象を持つとき、終対象のひとつを特定して、それを $`\mbf{1}`$ と書きます。終対象付きの圏を、(記号の乱用で)$`\cat{C} = (\cat{C},\mbf{1})`$ と書きます。

クラン〈clan〉は、終対象付き圏 $`(\cat{C}, \mbf{1})`$ の上にファイブレーションクラス $`\MC{F}`$ が載った構造です。終対象 $`\mbf{1}`$ とファイブレーションクラス $`\MC{F}`$ のあいだに次の関係性〈公理〉を要求します。

  • 任意の対象 $`X\in |\cat{C}|`$ に対する終射〈{terminal | final} morphism〉$`!_X : X \to \mbf{1}`$ はファイブレーションである。

クランのプロトタイプ的〈prototypical〉な実例を挙げます。終対象付き圏としては、集合圏に“特定された単元集合”〈distinguished singleton set〉を添えた $`(\mbf{Set}, \mbf{1})`$ をとります。ファイブレーションクラスは、すべての全射からなるクラスをとります。これがクランとなるには、次が満たされる必要があります。

  1. 任意の写像〈関数〉による全射のプルバック引き戻しはまた全射である。
  2. 全単射は全射である。
  3. 全射と全射の結合〈合成〉は再び全射である。
  4. 任意の集合から単元集合への唯一の写像は全射である。

どれも容易に示せます。

コクラン〈coclan〉はクランの双対概念です。念のため、コクランの定義を白紙から〈from scratch〉述べると; コクランは、始対象付き圏 $`(\cat{C}, \mbf{0})`$ にコファイブレーションクラス $`\MC{C}`$ が載った構造で、すべての始射〈initial morphism〉がコファイブレーションであるものです。コファイブレーションクラスの定義もアンパックして〈ほどいて〉述べれば:

  1. $`\MC{C}`$ は、コファイバー前送りに関して閉じている。
  2. $`f\in \mrm{Mor}(\cat{C})`$ が同型射〈isomorphism〉ならば、$`f\in \MC{C}`$ 。
  3. $`f, g\in \MC{C}`$ 、かつ $`\mrm{cod}(f) = \mrm{dom}(g)`$ ならば、$`f;g \in \MC{C}`$ 。
  4. 任意の対象 $`X\in |\cat{C}|`$ に対する始射 $`\theta_X : \mbf{0} \to X`$ はコファイブレーションである。

コクランのプロトタイプ的な実例は、集合圏に空集合を添えた $`(\mbf{Set}, \mbf{0})`$ に、コファイブレーションクラスとしてすべての単射からなるクラスを載せたものがあります。これは、先のクランの実例の双対です。

クランはファミリーの集まり

英単語 "clan" は「部族」という意味です。なぜに部族か? というと、「家族〈ファミリー〉の集まりだからだ」とのことです。専門用語に関する語源のエピソードはあまり真に受けないほうがいいですが、記憶の足し〈ヒント〉にはなります。

前節のクランの実例を $`(\mbf{Set}, \mbf{1}, \MC{S})`$ とします。$`\MC{S}`$ は全射〈surjection〉達のクラスです。この実例においては、全射がファイブレーションとなります。“ファイブレーション=全射”においては、ファイバー(一点の逆像)が非空集合になります。バンドル-ファミリー対応(「バンドル-ファミリー対応 再考」参照)を適用すると、ファイブレーションと非空集合のファミリー〈集合族〉が対応します。

非空集合のファミリーを“ファミリー”と呼ぶ用語法を採用するなら、ファイブレーション〈全射〉とファミリー〈非空集合の族〉は同一視可能です。したがって、ファイブレーションクラスはファミリーのクラスとも言えます。

クランで特筆すべき構成素はファイブレーションクラスです。ファイブレーションクラスはファミリー〈家族〉のクラス〈集まり〉と言っても同じことですから、すなわちクラン〈部族〉です。

実際、ファイブレーションが何らかの意味のファミリーと解釈可能なことは多いので、クランの語源を知っておくことは無駄でもないでしょう。

クランの左ファイブレーション的スパン

$`\cat{C} = (\cat{C}, \mbf{1}, \MC{F})`$ をクランとします。クランは圏なので、そのなかでスパンを考えることができます。特に、左脚がファイブレーションであるスパンを考えます。以下の図のようです。矢頭〈アローヘッド〉が二重の矢印はファイブレーションを表すとします。

$`\quad \xymatrix{
{}
& X \ar@{->>}[dl] \ar[dr]
&{}
\\
A
&{}
&B
}\\
\quad \In \cat{C}
`$

左脚がファイブレーションであるスパンは左ファイブレーション的スパン〈left fibrational span〉と呼びます。当然ですが、左ファイブレーション的スパンの概念は、ファイブレーション概念がないと定義できません。

大雑把に言うと、左ファイブレーション的スパン達は、スパンの結合により圏になります。アイディアは下の図のようです。

$`\quad \xymatrix{
{}
&{}
&Z \ar@{.>>}[dl] \ar@{.>}[dr]
&{}
&{}
\\
{}
&X \ar@{->>}[dl] \ar[dr]
&{}
&Y \ar@{->>}[dl] \ar[dr]
&{}
\\
A
&{}
&B
&{}
&C
}\\
\quad \In \cat{C}`$

$`X`$ をボディとするスパンの右脚と、$`Y`$ をボディとするスパンの左脚は、$`B`$ をコボディとするコスパンを形成します。このコスパンの右余脚はファイブレーションなので、ファイブレーションクラスの公理からプルバック四角形〈極限錐〉が存在し、$`Z`$ から出る左脚(二重矢頭の点線)はファイブレーションです。

ファイブレーションの結合はファイブレーションなので、$`Z`$ をボディとして、$`A`$ を左足、$`C`$ を右足とする左ファイブレーション的スパンを構成できます。できた左ファイブレーション的スパンが、もとの2つの左ファイブレーション的スパンの結合です。

「大雑把に言うと」と断ったのは、プルバック四角形/ファイバー引き戻しが一意に決まるとは限らないからです。また、スパンそのものではなくて、スパンの同値類を射とすることもあります。細部を処理する必要があるのですが、左ファイブレーション的スパンが面白い対象物であることは感じ取れるでしょう。

プロトタイプ的事例である $`(\mbf{Set}, \mbf{1}, \MC{S})`$ の場合を考えると、以下の左ファイブレーション的スパンは、ファイバー $`X_a := q^{-1}(a)`$ ごとの関数 $`f_a : X_a \to B`$ の $`A`$-インデックス付きファミリー〈関数族〉になります。

$`\quad \xymatrix{
{}
& X \ar@{->>}[dl]_{p} \ar[dr]^f
&{}
\\
A
&{}
&B
}\\
\quad \In \mbf{Set}
`$

関数の$`A`$-インデックス付きファミリー $`(f_a : X_a \to B)_{a\in A}`$ は、$`B`$ をコボディとして、$`A`$本の余脚を持つ複コスパン〈multi-cospan | multi-coleg cospan〉とも解釈できます。複コスパンは複スパン〈multi-span | multi-leg span〉の双対ですから、左ファイブレーション的スパンの計算の双対は、複スパンの計算になります。

クランの左ファイブレーション的スパンの計算、コクランの右コファイブレーション的コスパンの計算は、興味深い計算系だし、おそらく実用性も高いと思います。

そしてそれから

ジョイアルがクランを定義したオリジナルの動機は、型理論的圏をクランをベースに構成することでした。ディスプレイクラス付き圏も型理論的圏の構成に使えますが、ディスプレイクラス付き圏より使い勝手が良い圏論的構造としてクランを位置づけているようです。

とりあえずは、カートメル/ヴォエヴォドスキーのC-システムや、パルムグレンの複前層の圏を、クランをベースに考え直してみたいですね。

*1:正確に言えば、ファイブレーションクラス付き圏からディスプレイクラス付き圏への“規準的忘却”が存在します。