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

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

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

参照用 記事

自然変換を全部列挙する

米田の補題から言えることのひとつに、「自然変換はそんなに多くはない」ことがあります。2つの関手 $`F, G`$ のあいだの“すべての自然変換”というと、初見では、そもそも通常の集合〈小さい集合〉になるのかさえ不安ですが、たいていは通常の集合として記述可能です。

具体的な事例においては、2つの関手のあいだの自然変換が有限個しかなくて、完全に列挙できることもあります。そんな事例を紹介します。$`\newcommand{\mrm}[1]{\mathrm{#1}}
\newcommand{\hyp}{\text{-} }
\newcommand{\In}{\text{ in } }
\newcommand{\For}{\text{For } }
`$

二値真偽値の集合を $`{\bf B}`$ とします。$`{\bf B}`$ の2つの要素は何でもいいですが、ここでは、

$`\quad {\bf B} = \{0, 1\}`$

とします。

$`\mrm{Pow}(X)`$ は、集合 $`X`$ のベキ集合ですが、ベキ集合を反変関手に仕立てます。写像に対する値は次のように定義します。

$`\For f:X \to Y \In {\bf Set}\\
\quad \mrm{Pow}(f) := (f^{-1} : \mrm{Pow}(Y) \to \mrm{Pow}(X) \In {\bf Set})
`$

$`f^{-1}`$ は逆写像ではなくて、部分集合の逆像を対応させる写像です。

反変関手 $`\mrm{Pow}`$ は、集合圏の対象 $`{\bf B}`$ によって表現可能〈representable〉です。どういうことかと言うと、次の自然同型が成立することです。

$`\quad {\bf Set}(\hyp, {\bf B}) \cong \mrm{Pow} \In [{\bf Set}^\mrm{op}, {\bf Set}]`$

この自然同型を与える自然変換を $`\varphi`$ とします。

米田の補題によれば:

$`\quad \mrm{Nat}({\bf Set}(\hyp, {\bf B}), \mrm{Pow}) \cong \mrm{Pow}({\bf B}) \In {\bf Set}`$

左辺の自然変換の集合 $`\mrm{Nat}({\bf Set}(\hyp, {\bf B}), \mrm{Pow})`$ に上記の $`\varphi`$ が入ってますが、それ以外に3個の自然変換(自然同型とは限らない)が存在するはずです。全部書き出してみましょう。

米田の補題のいいところ(のひとつ)は、補題が主張する同型を具体的に計算できることです。$`\mrm{Pow}({\bf B})`$ の要素に対応する自然変換を次のように名前を付けて、順に計算していくことにします。

$`\text{要素}`$ $`\text{自然変換}`$
$`\{\}`$ $`\alpha`$
$`\{0\}`$ $`\beta`$
$`\{1\}`$ $`\gamma`$
$`\{0, 1\}`$ $`\delta`$

このなかの一個は自然同型 $`\varphi`$ に一致します。

背景知識

背景知識となる米田の補題や関手の表現可能性に関しては、例えば以下の過去記事にあります。

α の計算

$`X \in |{\bf Set}|`$ に対する $`\alpha`$ の成分は、

$`\quad \alpha_X : {\bf Set}(X, {\bf B}) \to \mrm{Pow}(X) \In {\bf Set}`$

この成分の具体的な表示は:

$`\For p \in {\bf Set}(X, {\bf B})\\
\quad \alpha_X(p) := \mrm{Pow}(p)(\{\}) \text{ where } \{\}\in \mrm{Pow}({\bf B})
`$

計算すると:

$`\quad \mrm{Pow}(p)(\{\})\\
= p^{-1}(\{\})\\
= \{\} \; \in \mrm{Pow}(X)
`$

となり、すべての成分が、述語 $`p`$ を($`\mrm{Pow}(X)`$ の要素である)空集合に移す定数関数になります。

β の計算

$`\beta`$ の成分の具体的な表示は:

$`\For p \in {\bf Set}(X, {\bf B})\\
\quad \beta_X(p) := \mrm{Pow}(p)(\{0\}) \text{ where } \{0\}\in \mrm{Pow}({\bf B})
`$

計算すると:

$`\quad \mrm{Pow}(p)(\{ 0 \})\\
= p^{-1}(\{ 0 \}) \; \in \mrm{Pow}(X)
`$

となり、$`\beta`$ の$`X`$-成分は、$`X`$ 上の述語 $`p`$ に対して $`0`$ (偽)の逆像をとる写像です。

γ の計算

$`\gamma`$ の成分の具体的な表示は:

$`\For p \in {\bf Set}(X, {\bf B})\\
\quad \gamma_X(p) := \mrm{Pow}(p)(\{1\}) \text{ where } \{1\}\in \mrm{Pow}({\bf B})
`$

計算すると:

$`\quad \mrm{Pow}(p)(\{ 1 \})\\
= p^{-1}(\{ 1 \}) \; \in \mrm{Pow}(X)
`$

となり、$`\gamma`$ の$`X`$-成分は、$`X`$ 上の述語 $`p`$ に対して $`1`$ (真)の逆像をとる写像です。これが $`\varphi`$ と同じものです。

δ の計算

$`\delta`$ の成分の具体的な表示は:

$`\For p \in {\bf Set}(X, {\bf B})\\
\quad \delta_X(p) := \mrm{Pow}(p)(\{0, 1\}) \text{ where } \{1\}\in \mrm{Pow}({\bf B})
`$

計算すると:

$`\quad \mrm{Pow}(p)(\{0, 1 \})\\
= p^{-1}(\{0, 1 \})
= X \; \in \mrm{Pow}(X)
`$

となり、$`\delta`$ の成分は、述語 $`p`$ を集合($`\mrm{Pow}(X)`$ の要素) $`X`$ に移す定数関数になります。

まとめ

まとめると、4つの自然変換は次のようなものでした。

  1. $`X`$ 上の述語 $`p`$ に、常に空集合 $`\{\} \in \mrm{Pow}(X)`$ を対応させる。
  2. $`X`$ 上の述語 $`p`$ に、述語の値が偽である部分集合 $`p^{-1}(\{0\}) \in \mrm{Pow}(X)`$ を対応させる。
  3. $`X`$ 上の述語 $`p`$ に、述語の値が真である部分集合 $`p^{-1}(\{1\}) \in \mrm{Pow}(X)`$ を対応させる。
  4. $`X`$ 上の述語 $`p`$ に、常に全体集合 $`X \in \mrm{Pow}(X)`$ を対応させる。

具体的に列挙できるって、なんか楽しいですよね。