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

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

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

参照用 記事

圏スタンピング・モナドの代数は前層/余前層

左加群は前層、右加群は余前層、双加群はプロ関手」の続きです。余前層としての右加群(または前層としての左加群)が、ファミリー〈集合族〉の圏上のモナドのアイレンベルク/ムーア代数になってるよ、という話です。$`\newcommand{\mrm}[1]{\mathrm{#1}}
\newcommand{\cat}[1]{\mathcal{#1}}
\newcommand{\u}[1]{\underline{#1}}
%\newcommand{\o}[1]{\overline{#1}}
\newcommand{\hyp}{\text{-} }
\newcommand{\id}{\mathrm{id}}
\newcommand{\In}{\text{ in } }
\newcommand{\act}[2]{ \mathop{_{#1} \cdot_{#2}} }
\newcommand{\twoto}{\Rightarrow }
`$

内容:

モノイドの場合

$`M = (\u{M}, m, e)`$ をモノイドとします。記号の乱用をせずに、台集合〈underlying set〉は下線〈underline〉を引いて区別します。モノイド乗法(二項演算)と単位元(無項演算)のプロファイル〈仕様〉は次のようになります。

$`\quad m : \u{M}\times \u{M} \to \u{M} \In {\bf Set}\\
\quad e : {\bf 1} \to \u{M} \In {\bf Set}
`$

一般に、特定の集合を直積の意味で右から掛け算する関手を右スタンピング関手〈right stamping functor〉と呼びます(「モノイド・スタンピングと単純スタンピング」参照)。$`A`$ による右スタンピング関手は次のように書けます。

$`\quad \hyp \times A : {\bf Set} \to {\bf Set} \In {\bf CAT}\\
\quad |{\bf Set}| \ni X \mapsto X \times A \in |{\bf Set}|\\
\quad \mrm{Mor}({\bf Set}) \ni (f: X \to Y) \mapsto (f\times \id_A : X\times A \to Y\times A) \in \mrm{Mor}({\bf Set})
`$

モノイドの台集合を右から掛け算する右スタンピング関手を $`F`$ とします。

$`\quad F(\hyp) := (\hyp \times \u{M}) : {\bf Set} \to {\bf Set} \In {\bf CAT}`$

モノイドの乗法と単位元を使って、自己関手 $`F`$ をモナドにできます。モナド乗法 $`\mu`$ とモナド単位 $`\eta`$ の$`X`$-成分は次のように定義します。(図式が可換になるように $`\mu_X, \eta_X`$ を決める、ということです。)

$`\require{AMScd}
\begin{CD}
F(F(X)) = (X\times \u{M})\times \u{M} @>{\alpha_{X, \u{M}, \u{M}}}>> X\times (\u{M}\times \u{M})\\
@V{\mu_X}VV @VV{\id_X \times m}V \\
F(X) @= X\times \u{M}
\end{CD}
`$

$`\begin{CD}
\mrm{Id}(X) = X @>{ {\rho_X}^{-1} }>> X\times {\bf 1}\\
@V{\eta_X}VV @VV{\id_X \times e}V \\
F(M) @= X\times \u{M}
\end{CD}
`$

$`(F, \mu, \eta)`$ が集合圏 $`{\bf Set}`$ 上のモナドになるのは容易に確認できます。このモナドを、($`M`$ による)右・モノイド・スタンピング・モナド〈right monoid stamping monad〉と呼びます。

($`M`$ による)右・モノイド・スタンピング・モナドのアイレンベルク/ムーア代数は次の形をしています。

$`\quad a: X \times \u{M} \to X \In {\bf Set}`$

アイレンベルク/ムーア代数としての結合法則と単位法則は、右作用の結合法則と単位法則を与えるので、$`a`$ はモノイド $`M`$ による右作用〈right action〉になります。つまり、このモナドのアイレンベルク/ムーア代数は右$`M`$-加群〈right $`M`$-module〉になります。

左スタンピング関手、左・モノイド・スタンピング・モナド、左$`M`$-加群も同様に定義できます。

圏の場合: モナド

前節のモノイドを、圏に拡張しましょう。$`\cat{C}`$ は小さい圏だとします。行きがかり上(「左加群は前層、右加群は余前層、双加群はプロ関手」と記法を揃えるため)、圏の対象はギリシャ文字小文字で表します。例えば:

$`\quad f:\alpha \to \beta \In \cat{C}`$

$`\alpha`$ が直積の結合律子〈associator〉とかぶりますが、以下では $`\alpha`$ を避けて記述します。

集合圏の代わりにファミリーの圏が基礎圏〈ground category〉になります。圏の対象の集合(仮定より小さい)$`|\cat{C}|`$ をインデキシング集合とするファミリー〈集合族〉の圏を $`{\bf Fam}[|\cat{C}|]`$ とします。ファミリーの圏については以下の記事を参照してください。

ファミリー $`X \in |{\bf Fam}[|\cat{C}|]|`$ は次のように書きます。

$`\quad X = (X_\xi)_{\xi \in |\cat{C}|} \:\text{ where }X_\xi \in |{\bf Set}|`$

ファミリーに対する右・圏スタンピング関手〈right category stamping functor〉$`F`$ は次のように定義します。

$`\text{For } X \in |{\bf Fam}[|\cat{C}|]|\\
\text{For } \beta \in |\cat{C}|\\
\quad F(X)_\beta := \sum_{\xi \in |\cat{C}|} (X_\xi \times \cat{C}(\xi, \beta) ) \;\in |{\bf Set}|
`$

ファミリーのあいだの射 $`\phi : X \to Y \In {\bf Fam}[|\cat{C}|]`$ は次のような関数の族です。

$`\quad \phi = (\phi_\xi : X_\xi \to Y_\xi)_{\xi \in |\cat{C}|} \:\text{ where }\phi_\xi \in \mrm{Mor}({\bf Set})`$

$`F(\phi) : F(X) \to F(Y) \In {\bf Fam}[|\cat{C}|]`$ は次のように書けます。

$`\quad F(\phi)_\beta := \sum_{\xi \in |\cat{C}|} (\phi_\xi \times \id_{\cat{C}(\xi, \beta)} )
\;: F(X)_\beta \to F(Y)_\beta \In {\bf Set}
`$

右・圏スタンピング関手 $`F`$ は、ファミリーの圏 $`{\bf Fam}[|\cat{C}|]`$ 上の自己関手になります(詳細は省略しますが)。

圏の結合と恒等射を使って、自己関手 $`F`$ をモナドにできます。モナド乗法 $`\mu`$ とモナド単位 $`\eta`$ の$`X`$-成分を定義するための、計算のアウトラインを示します。

$`\mu`$ の$`X`$-成分は:

$`\quad \mu_X : F(F(X)) \to F(X) \In {\bf Fam}[|\cat{C}|]`$

これを定義するには、ファミリーのあいだの射の成分を定義すればいいので、

$`\quad (\mu_X)_\beta : F(F(X))_\beta \to F(X)_\beta \In {\bf Set}`$

を決めます。

集合 $`F(F(X))_\beta`$ の具体的な表示は、

$`\quad \sum_{\tau}\left( (\sum_{\xi}(X_\xi \times \cat{C}(\xi, \tau) )\times \cat{C}(\tau, \beta)) \right)\\
\cong \sum_{\tau} \sum_{\xi} ( X_\xi \times ( \cat{C}(\xi, \tau) \times \cat{C}(\tau, \beta)) )\\
\cong \sum_\xi \left( X_\xi \times \sum_\tau (\cat{C}(\xi, \tau) \times \cat{C}(\tau, \beta) )
\right)`$

圏の結合 $`\mrm{comp}_{\xi, \tau, \beta}: \cat{C}(\xi, \tau)\times \cat{C}(\tau, \beta)`$ を $`\tau`$ に沿って適用すれば、次の写像(コタプル)が得られます。

$`\quad [\mrm{comp}_{\xi, \tau, \beta}]_{\tau \in |\cat{C}|} : \sum_{\tau \in |\cat{C}|} (\cat{C}(\xi, \tau) \times \cat{C}(\tau, \beta)) \to \cat{C}(\xi, \beta)
\In {\bf Set}
`$

上記写像(コタプル)を使って、次のような写像を組み立てます。

$`\quad \sum_\xi \left( X_\xi \times \sum_\tau (\cat{C}(\xi, \tau) \times \cat{C}(\tau, \beta) )
\right) \to
\sum_\xi ( X_\xi \times \cat{C}(\xi, \beta) )
\In {\bf Set}
`$

この写像が、$`(\mu_X)_\beta`$ を与えます。

$`\eta`$ の$`X`$-成分は:

$`\quad \eta_X : X \to F(X) \In {\bf Fam}[|\cat{C}|]`$

これを定義するには、ファミリーのあいだの射の成分を定義すればいいので、

$`\quad (\eta_X)_\beta : X_\beta \to F(X)_\beta \In {\bf Set}`$

つまり、

$`\quad (\eta_X)_\beta : X_\beta \to \sum_\xi (X_\xi \times \cat{C}(\xi, \beta)) \In {\bf Set}`$

を決めます。

$`x\in X_\beta`$ に対する具体的な値を次のように定義します。

$`\quad x \mapsto (\beta, (x, \id_\beta)) \:\text{where }
\beta \in |\cat{C}|, x \in X_\beta, \id_\beta \in \cat{C}(\beta, \beta)
`$

この写像が、$`(\eta_X)_\beta`$ を与えます。

定義はしましたが、$`\mu, \eta`$ が自然変換であること、モナドの法則を満たすことを確認する必要があります。面倒です。割愛します。

$`(F, \mu, \eta)`$ は、右・圏スタンピング関手を台にして作られたモナドなので、右・圏スタンピング・モナド〈right category stamping monad〉と呼びます。$`|\cat{C}|`$ が単元集合のとき、右・モノイド・スタンピング・モナドが再現します。

左・圏スタンピング関手、左・圏スタンピング・モナドも同様に定義できます。

圏の場合: アイレンベルク/ムーア代数

($`\cat{C}`$ による)右・圏スタンピング・モナドのアイレンベルク/ムーア代数は次の形をしています。

$`\quad \phi: F(X) \to X \In {\bf Fam}[|\cat{C}|]`$

ファミリーのあいだの射 $`\phi`$ の$`\beta`$-成分を見ると:

$`\quad \phi_\beta : \sum_{\xi \in |\cat{C}|}( X_\xi \times \cat{C}(\xi, \beta) )
\to X_\beta
\In {\bf Set}
`$

シグマ型からの写像の、$`\gamma \in |\cat{C}|`$ でのファイバー成分を取り出すと:

$`\quad (\phi_\beta)_\gamma : X_\gamma \times \cat{C}(\gamma, \beta) \to X_\beta
\In {\bf Set}`$

この写像 $`(\phi_\beta)_\gamma`$ を中置演算子記号 $`\act{\gamma}{\beta}`$ と書くことにします。$`\phi`$ がアイレンベルク・ムーア代数の演算であることは次のように書けます。

$`\text{For } x\in X_\gamma, f\in \cat{C}(\gamma, \beta), g \in \cat{C}(\beta, \tau)\\
\quad x \act{\gamma}{\beta} f \act{\beta}{\tau} g
= x \act{\gamma}{\tau} (f ; g)\\
\quad x \act{\gamma}{\gamma} \id_\gamma = x
`$

これは、ファミリー $`X`$ が右$`\cat{C}`$-加群であることです(「左加群は前層、右加群は余前層、双加群はプロ関手」参照)。ファミリーが“圏 $`\cat{C}`$ が右作用する右$`\cat{C}`$-加群である”ことと、“$`\cat{C}`$ 上の余前層(集合値の共変関手)である”ことは同値なので、$`\cat{C}`$ による右・圏スタンピング・モナドのアイレンベルク/ムーア代数は、$`\cat{C}`$ 上の余前層になります。

$`{\bf Fam}[|\cat{C}|]`$ 上に $`\cat{C}`$ による左・圏スタンピング・モナドを考えれば、そのアイレンベルク/ムーア代数は、圏 $`\cat{C}`$ が左作用する左$`\cat{C}`$-加群となり、$`\cat{C}`$ 上の前層(集合値の反変関手)になります。

応用例

なんでこんなことを考えたのか? を丁寧に説明すれば分かりやすいとは思うのですが、なかなか面倒で。代わりに、ことの発端になった事例を応用として述べます(時間順とは逆だけど)。

一般に、圏 $`\cat{D}`$ 上のモナド $`(F, \mu, \eta)/\cat{D}`$ があると、$`X \in |\cat{D}|`$ に対する $`F(X)`$ は自由代数の構造を持ちアイレンベルク/ムーア代数となります。前節のケースなら、任意のファミリー $`X:|\cat{C}| \to |{\bf Set}|`$ に対して、ファミリー $`F(X)`$ はアイレンベルク/ムーア代数となるので、右(または左)$`\cat{C}`$-加群となり、$`\cat{C}`$ 上の前層(または余前層)になります。

小さい圏 $`\cat{C}`$ として特に亜群を考えるので、$`\cat{G}`$ と置きます。$`|\cat{G}|`$ の要素は、インターフェイス〈プロファイル | スキーマ〉の記述で、リラベリングによる変換が $`\cat{G}`$ の射だと想定します。シンボルの集合 $`S`$ があり、シンボルにインターフェイスが対応しています。その対応を次の形に書きます。

$`\quad p: S \to |\cat{G}| \In {\bf Set}`$

$`p`$ の逆像をとると、$`|\cat{G}|`$ 上のファミリー $`P = p^{-1}`$ になります。右・圏スタンピング・モナドを $`(F, \mu, \eta)/{\bf Fam}[|\cat{G}|]`$ として、$`F(P)`$ を作れば、これは余前層または前層を定義します。亜群上では、余前層でも前層でもほとんど差はありません。

シンボルへのインターフェイス割り当て $`p`$ から作られた余前層/前層は、$`p`$ のリラベリングに関する“閉包”と考えることができます。また、亜群から集合圏への余前層/前層はスピシーズ(ジョイアルのオリジナルの定義を少し拡張)なので、スピシーズの議論を適用できます。