米田の補題にまつわるあれこれを具体例を通して整理してみる ~ 表現可能関手と米田の補題

米田の補題が分かりたい

最近、圏論の勉強が進んでついに米田の補題まで辿り着いた。何を隠そうこれまで圏論を勉強してきた目標は米田の補題を理解することだったので、ここは是非ともちゃんと理解したい。しかし、数年前に勉強したときもそうだったが、米田の補題は何を言っているのかさっぱり分からない。そもそも前提となる表現可能関手が難しいし、関連して登場する米田埋め込みとかuniversal elementとかも何がしたいのかよく分からない。

前回はそれで挫折してしまったのだが、今回は随伴までの内容を多少まじめに勉強したこと、およびChatGPTが使える世の中になったことで、多少なりとも米田の補題が言わんとすることが分かってきた。そこで、いくつかの具体例を通して、米田の補題とそれにまつわる様々な概念がどのように繋がっており、それぞれどのような意味を持つのかを考えてみる。

例によって一つの記事に書き切るのは書くのも読むのも厳しいと思われるので、本稿では表現可能関手と米田の補題に絞って話をする。それに付随するいくつかの概念については次回以降に書きたいと思う。

理論的な話

表現可能関手

話の出発点は表現可能関手である。定義を[1]から引用する。

表現可能関手(共変バージョン)
Let  \mathcal{A} be a locally small category. A functor  X: \mathcal{A} \to {\bf Set} is representable if  X \cong H^A for some  A \in \mathcal{A}. A representation of  X is a choice of an object  A \in \mathcal{A} and an isomorphism between  H^A and  X.

ただし、 H^Aは関手で、 H^A = \mathcal{A}(A,−): \mathcal{A} \to {\bf Set}である。本[1]の記法に慣れていないと分かりづらいが、locally smallな圏 \mathcal{A}に対して \mathcal{A}(A,B)と書いたときには対象 A, B \in \mathcal{A}の間の射 A \to Bの集合を意味する。'−'はここが変数になっていることを意味する。つまり、 H^Aに入力として \mathcal{A}の対象 Bを与えると、出力として \mathcal{A}(A,B)という集合が得られるということである。

 H^Aは関手なので射がどうなるのかも気にしておく必要がある。 \mathcal{A}の射 g: B \to B'が入力として与えられたとき、 H^A(g): \mathcal{A}(A,B) \to \mathcal{A}(A,B')は全ての射 p: A \to Bに対して p \to g \circ pという射を与える。以下に図を示す。

関手 H^A

ここまで説明したのは共変関手となるような表現可能関手である。これとは別に反変関手となるような表現可能関手も存在する。反変バージョンの定義を[1]から引用する。

表現可能関手(反変バージョン)
Let  \mathcal{A} be a locally small category. A functor  X: \mathcal{A}^\mathrm{op} \to {\bf Set} is representable if  X \cong H_A for some  A \in \mathcal{A}. A representation of  X is a choice of an object  A \in \mathcal{A} and an isomorphism between  H_A and  X.

 H_Aは共変バージョンの定義に出てくる H^Aと似たような関手だが、反変関手であるという点に注意が必要である。すなわち、 \mathcal{A}の射 g: B' \to B(共変の場合とは逆向き)が入力として与えられたとき、 H_A(g): \mathcal{A}(B, A) \to \mathcal{A}(B', A)は全ての射 p: B \to Aに対して p \to p \circ gという射を与える。以下に図を示す。

関手 H_A

米田の補題

米田の補題を本[1]から引用する。

米田の補題
Let  \mathcal{A} be a locally small category. Then
 \displaystyle{
[\mathcal{A}^\mathrm{op}, {\bf Set} ](H_A, X) \cong X(A)
}
naturally in  A \in \mathcal{A} and  X \in [\mathcal{A}^\mathrm{op}, {\bf Set} ].

この定義も本[1]の記法に慣れていないと理解しづらいので補足しておく。まず、 [\mathcal{A}^\mathrm{op}, {\bf Set} ]は関手圏を表す。この関手圏における射 H_A \to X全体の集合が [\mathcal{A}^\mathrm{op}, {\bf Set} ](H_A, X)である。関手圏の射とは自然変換のことであるから、これは要するに H_Aから Xへの自然変換全体の集合を意味する。Wikipedia[2]なんかを見ると \mathop {\mathrm {Nat} } (H_{A},F)\cong F(A)みたいに書かれていたりするが、同じことである。

見ての通り本[1]に書かれている米田の補題は H_Aを用いて書かれており、いわば反変バージョンであると言えるが、 H^Aを用いても同じような主張が成り立つらしい[2]。

話の流れ的に大変ややこしいのだが、補題の主張に出てくる Xは必ずしも表現可能関手である必要はない。

証明のアウトライン

この場で米田の補題の完全な証明をするつもりはない。それについては本[1]が素晴らしいのでそちらを見て頂ければと思う。しかし、この後に説明する例を理解する上で証明が全く頭に入っていないと辛い部分があるのと、シンプルに面白い話があるので、ざっくりアウトラインだけ述べておく。まず、自然変換 \alpha \in [\mathcal{A}^\mathrm{op}, {\bf Set} ](H_A, X)について、これに対応する X(A)の元を得るための写像を作ってやる(これを米田写像というらしい[2])。それが全単射であることを示す。その後、 A, Xに関する自然性条件をコツコツと調べればよい。

前半の全単射性の証明についてもう少し説明する。まず、 \alphaに対して \hat{\alpha} = \alpha_A(1_A)と定める。 \alpha_A \alpha A成分であり、 H_A(A) \to X(A)という写像になる。定義より H_A(A) = \mathcal{A}(A, A)であり、 1_A \in \mathcal{A}(A, A)なので確かに \hat{\alpha} \in X(A)となっている。

この後は^の逆向きの写像を構成して全単射性を示していく流れになるわけだが、ここで面白いのが \hat{\alpha} 1_Aの値だけで決まるということである。あたかも 1_Aが「 \alpha全体の代表です」みたいな顔をして右向きの写像を定義しているわけだが、これがちゃんと全単射になるから驚きである。こういうところに圏論の面白さが詰まっているように(個人的には)感じる。

具体例

ではいよいよ具体例を見ていこう。共変バージョンと反変バージョンでそれぞれ微妙に違った面白さがあるので、どちらの例も取り上げる。

なお、米田の補題に登場する関手 Xは必ずしも表現可能関手である必要はないのだが、次の記事へのつなぎとして表現可能関手だと都合がよい。というわけで、ここでは Xが表現可能関手であるような例を紹介する。

共変バージョンの例

 k上の線形空間の圏 {\bf Vect}_kに対する忘却関手 U : {\bf Vect}_k \to {\bf Set}を考える。まずは Uが共変バージョンの表現可能関手であることを示す。

線形空間 V \in {\bf Vect}_kについて線形写像 \phi: k \to Vを考える。 \phi kのいろいろな値を取るので、それぞれに対して行き先がどうなるかを決めてやらないと写像として定まらないように思える。しかし、 \phiの線形性より任意の \lambda \in kに対して \phi(\lambda) = \lambda \phi(1)\; (1 \in k)となるので、実は \phi(1)の行き先さえ決まれば \phiは定まる。 \phi(1)の行き先としては Vの任意の元を取れるので、このような線形写像全体の集合と Vの元は一対一に対応する。これより {\bf Vect}_k(k, V) \cong U(V)となる。

しかもこれは Vについて自然になる。 \alpha: {\bf Vect}_k(k, −) \to U V成分を \alpha_V: \phi \mapsto U(\phi)(1)\;(1 \in U(k))と定める。このとき、任意の V, W \in {\bf Vect}_kおよび f: V \to Wについて以下の可換図式が成り立つ。

 \displaystyle{
\require{amscd}
\begin{CD}
{\bf Vect}_k(k, V)  @>{\bf Vect}_k(k, f)>>  {\bf Vect}_k(k, W) \\
@V\alpha_{V}VV                     @VV\alpha_{W}V \\
U(V)         @>>U(f)>  U(W)
\end{CD}
}

実際、右回り・左回りのパスにおける写像を合成して \phi \in {\bf Vect}_k(k, V)に適用するとそれぞれ以下のように一致することが分かる。


\begin{align}
\alpha_{W} \circ {\bf Vect}_k(k, f)(\phi) &= \alpha_{W} \circ f \circ \phi \\
  &= U(f \circ \phi)(1) \\
U(f) \circ \alpha_{V}(\phi) &= U(f) \circ U(\phi)(1) \\
  &= U(f \circ \phi)(1)
\end{align}

以上の議論により U \cong H^kなので Uは表現可能関手である。

忘却関手 Uに対して体 kを渡すのは型が合っていないのではないか?と思われるかもしれないが、ここでは kは体であり、かつ k上の一次線形空間でもあると考えて記号を乱用している。
ここでの議論では k U(k)を厳密に区別した。しかし、 kを線形空間として扱っているか集合として扱っているかは文脈で大体わかるので U(k)のことを kと書いてしまっても良かったかもしれない。このあたりの流儀は良く分かっていない。と言いつつ、1だけは kの元だったり U(k)の元だったりをあまり区別なく書いている。これも1と U(1)のように書き分けても良かったが、まあ分かるだろうということでサボっている。

続いて、米田の補題が成り立っている様子を観察してみよう。(本稿では明に説明していないが)米田の補題の共変バージョンより以下の同型が成り立つ。

 \displaystyle{
[{\bf Vect}_k, {\bf Set} ](H^k, U) \cong U(k)
}

左辺の自然変換の一つである \alpha k成分は \alpha_k: \phi \mapsto U(\phi)(1)\;(\phi \in {\bf Vect}_k(k, k))である。証明のアウトラインで述べたように、 \hat{\alpha} = \alpha_k(1_k)とすればこれは U(k)の元である。よって \alpha_kの式に \phi=1_kを代入して得られる \alpha_k(1_k) = U(1_k)(1) = 1 \alphaに対応する U(k)の元である。

少々ややこしいが、1は kとか U(k)の元を表しており、 1_kは対象 kの恒等射である。両者は指しているものが全然違うので注意されたい。

さて、米田の補題より [{\bf Vect}_k, {\bf Set} ](H^k, U)という自然変換の集合は U(k)と一対一に対応するわけだから、他にもたくさんの自然変換が存在するはずである。これには \alphaの代わりに \alpha^{(s)}\;(s \in k)を考えればよい。これの k成分は \alpha^{(s)}_k: \phi \mapsto U(\phi)(s)と定める(ちなみに \alpha^{(1)}_k = \alpha_kである)。すると先ほどと同様の議論により \alpha^{(s)}_k(1_k) = U(1_k)(s) = U(s) \alpha^{(s)}に対応する U(k)の元となる。

反変バージョンの例

集合に対する冪集合を返す関手 \mathcal{P}: {\bf Set}^\mathrm{op} \to {\bf Set}を考える。この関手によって射がどのように移されるかを理解するのがなかなか難しいのだが、端的に言うと {\bf Set}の射 g: A' \to Aに対して (\mathcal{P}(g))(U)=g^{−1}(U)\;(U \in \mathcal{P}(A))と定めればよい。これは \mathcal{P}(A) \to \mathcal{P}(A')という射になっている。

 \mathcal{P}が反変バージョンの表現可能関手であることを示す。集合 Aとその部分集合 Uについて写像 \chi_U​: A \to {\bf 2} = \{0, 1\}を以下のように定義する。

 \displaystyle{
\chi_U(x) =
\begin{cases}
1 & x \in U \\
0 & x \notin U
\end{cases}
}

これは Aの各要素が Uに含まれるかどうかを表す関数となっている。このような関数は Aの部分集合それぞれに対して定めることができる。つまり、 \mathcal{P}(A) \cong {\bf Set}​(A, {\bf 2})=H_{\bf 2}(A)となる。

しかもこれは Aについて自然になる。 \alpha: {\bf Set}(−, {\bf 2}) \to \mathcal{P} A成分を \alpha_A: \phi \mapsto \phi^{-1}(\{1\})と定める。このとき、任意の A, B \in {\bf Set}および f: B \to Aについて以下の可換図式が成り立つ。

 \displaystyle{
\require{amscd}
\begin{CD}
{\bf Set}(A, {\bf 2})  @>{\bf Set}(f, {\bf 2})>>  {\bf Set}(B, {\bf 2}) \\
@V\alpha_{A}VV                     @VV\alpha_{B}V \\
\mathcal{P}(A)         @>>\mathcal{P}(f)>  \mathcal{P}(B)
\end{CD}
}

実際、右回り・左回りのパスにおける写像を合成して \phi \in {\bf Set}(A, {\bf 2})に適用するとそれぞれ以下のように一致することが分かる。


\begin{align}
\alpha_{B} \circ {\bf Set}_k(f, {\bf 2})(\phi) &= \alpha_{B} \circ \phi \circ f \\
  &= (\phi \circ f)^{-1}(\{1\}) \\
\mathcal{P}(f) \circ \alpha_{A}(\phi) &= \mathcal{P}(f) \circ \phi^{-1}(\{1\}) \\
  &= f^{-1}(\phi^{-1}(\{1\})) \\
  &= (\phi \circ f)^{-1}(\{1\})
\end{align}

以上の議論により \mathcal{P} \cong H_{\bf 2}なので \mathcal{P}は表現可能関手である。

続いて、米田の補題が成り立っている様子を観察してみよう。米田の補題より以下の同型が成り立つ。

 \displaystyle{
[{\bf Set}^\mathrm{op}, {\bf Set} ](H_{\bf 2}, \mathcal{P}) \cong \mathcal{P}({\bf 2})
}

左辺の自然変換の一つである \alpha {\bf 2}成分は \alpha_{\bf 2}: \phi \mapsto \phi^{-1}(\{1\})\;(\phi \in {\bf Set}^\mathrm{op}({\bf 2}, {\bf 2}))である。証明のアウトラインで述べたように、 \hat{\alpha} = \alpha_{\bf 2}(1_{\bf 2})とすればこれは \mathcal{P}({\bf 2})の元である。よって \alpha_{\bf 2}の式に \phi=1_{\bf 2}を代入して得られる \alpha_{\bf 2}(1_{\bf 2}) = 1_{\bf 2}^{-1}(\{1\}) = \{1\} \alphaに対応する \mathcal{P}({\bf 2})の元である。

さて、米田の補題より [{\bf Set}^\mathrm{op}, {\bf Set} ](H_{\bf 2}, \mathcal{P})という自然変換の集合は \mathcal{P}({\bf 2})と一対一に対応するわけだから、 \alpha以外に \emptyset, \{0\}, {\bf 2} \in \mathcal{P}({\bf 2})と対応する自然変換が存在するはずである。これには \alphaの代わりに \alpha^{(U)}を考えればよい。これの {\bf 2}成分は \alpha^{(U)}_{\bf 2}: \phi \mapsto \phi^{-1}(U)\;(U \in \mathcal{P}({\bf 2}))と定める(ちなみに \alpha^{(\{1\})}_{\bf 2} = \alpha_{\bf 2}である)。すると先ほどと同様の議論により \alpha^{(U)}_{\bf 2}(1_{\bf 2}) = 1_{\bf 2}^{-1}(U) = U \alpha^{(U)}に対応する \mathcal{P}({\bf 2})の元となる。

まとめ

本稿では米田の補題にまつわる話題として、表現可能関手および米田の補題について具体例を用いながら説明した。米田の補題は初見だと本当に何が言いたいのかさっぱり分からなかったが、例をいじくりまわしているうちに少しずつ感覚が掴めてきたように思う。

長年の目標であった米田の補題そのものについてはひとまず理解できたので、この世に対する未練がまた一つなくなった。あとは孫の顔さえ見られれば成仏できるかもしれない(何十年後になるか分からないが)。