エレファント・コンピューティング調査報告

極限に関する順序を論理プログラミングの手法を使って指定することを目指すブロクです。

代数的構造による圏論(6)

第5章 普遍性

最初の方は定義を引用するだけとします。

①終対象と始対象

定義 5.1 \mathcal{C} の対象  T が、 \mathcal{C} の任意の対象  X に対して  X から  T への射がただ一つ存在するとき、 T \mathcal{C} の終対象と呼びます。この一意的な射を  !X と書きます。 \mathcal{C} の反対圏  \mathcal{C}^\mathrm{op} の終対象を  \mathcal{C} の始対象と呼びます。

終対象(始対象)は存在するとは限らず、一意的でもありませんが、存在すれば同型となります。これを同型を除いて一意と言います。

集合圏  \mathbf{Set} では、終対象は「一点のみからなる集合」、始対象は空集合となります。

量系の圏  \mathbf{Qua} では、量  0 のみからなる量系が終対象かつ始対象となります。このような対象を零対象と呼びます。

②積と余積

定義 5.2 圏の対象  A, B に対して、対象  P、射  P \xrightarrow{p_A} A、射  P \xrightarrow{p_B} B の三つ組  \langle P, p_A, p_B \rangle A, B の積であるとは、対象  X、射  X \xrightarrow{x_A} A、射  X \xrightarrow{x_B} B の三つ組  \langle X, x_A, x_B \rangle に対して  x_A = p_A \circ x x_B = p_B \circ x を満たす射  X \xrightarrow{x} P がただ一つ存在することを言います。このとき対象  P A \times B と書き、射  x を(この本では)  \begin{pmatrix} x_A \\ x_B \end{pmatrix} と書きます。 p_A, p_B を射影と呼びます。

 \mathbf{Set} では集合の直積が積、 \mathbf{Qua} では集合の直積で定まるものとなります。

定義 5.3 圏の対象  A, B に対して、対象  S、射  S \xleftarrow{\iota_A} A、射  S \xleftarrow{\iota_B} B の三つ組  \langle S, \iota_A, \iota_B \rangle A, B の余積であるとは、対象  X、射  X \xleftarrow{x_A} A、射  X \xleftarrow{x_B} B の三つ組  \langle X, x_A, x_B \rangle に対して  x_A = x \circ \iota_A x_B = x \circ \iota_B を満たす射  X \xleftarrow{x} P がただ一つ存在することを言います。このとき対象  P A + B と書き、射  x を(この本では)  \begin{pmatrix} x_A & x_B \end{pmatrix} と書きます。 \iota_A, \iota_B を入射と呼びます。

 \mathbf{Set} では集合の「非交和」が余積、 \mathbf{Qua} では  A + B A \times B が同型となります。

③積関手

積を持つ圏  \mathcal{C} において、射  A \xrightarrow{f} A' と射  B \xrightarrow{g} B' に対して  A \times B から  A' \times B' への射で、 p_{A'} \circ (f \times g) = f \circ p_A p_{B'} \circ (f \times g) = g \circ p_B を満たすただ一つの射( f, g の積)  f \times g = \begin{pmatrix} f \circ p_A \\ g \circ p_B \end{pmatrix} が存在します。

積を持つ圏  \mathcal{C} において、任意の対象  A に対して「 A と積をとる関手」 A \times () が、任意の対象  X に対しては対象  A \times X を、任意の射  X \xrightarrow{f} Y に対しては射  A \times X \xrightarrow{1_A \times f} A \times Y を対応させるものとして定義できます。 A \times X は同型を除いて一意に定まるので一つを選ぶことで定義することができます。この関手は  \mathcal{C} から  \mathcal{C} 自身への関手( \mathcal{C} 上の自己関手)となります。

各対象  X に対して  A \times X から  X への射影  p_X を対応させる対応付けは、関手  A \times () から  \mathcal{C} 上の恒等関手への自然変換となります。

線型代数の土壌

この項は後で見ていくことにします。

⑤極限と余極限の例

この項は後で見ていくことにします。できれば図式を使わずに説明したいと思います。

⑥射圏,そして一般射圏
  •  \mathbf{1} を「対象を一つだけ持ち、射としてその対象の恒等射のみを持つ圏」
  •  \mathbf{2} を「対象を二つ持ち、射としてその対象の恒等射の他に一方の対象から他方の対象への射(射を  0 \to 1 とします)を一つだけ持つ圏」

とします。

  • 圏の対象  X に対して、圏  \mathbf{1} からの関手で圏  \mathbf{1} の対象を  X
  • 圏の射  f に対して、圏  \mathbf{2} からの関手で圏  \mathbf{2} の恒等射ではない射を  f

対応させるものが存在します。

「射を対象とする圏」は「圏  \mathbf{2} から  \mathcal{C} への関手を対象とする圏」、すなわち  \mathrm{Fun}(\mathbf{2}, \mathcal{C}) とみなすことができます。圏  \mathbf{2} から  \mathcal{C} への関手  F, G に対して 射  0 \to 1 F によって  X \xrightarrow{f} Y G によって  X' \xrightarrow{f'} Y' に写されるとします。自然変換  F \overset{t}{\Longrightarrow} G \require{AMScd}
\begin{CD}
X @> f >> Y \\
@V t_0 VV @VV t_1 V \\
X' @>> f' > Y'
\end{CD}
が可換となるので  \mathrm{Fun}(\mathbf{2}, \mathcal{C}) の射は「図式を可換にするような射の組  \langle t_0, t_1 \rangle」と考えられます。このような圏を射圏と呼びます。

この射圏の概念を一般化したものがコンマ圏(「圏論の道案内 ~矢印でえがく数学の世界~」では「一般射圏」)となります。

定義 5.7  \mathcal{A} \mathcal{B} \mathcal{C} を圏、 \mathcal{A} \xrightarrow{F} \mathcal{C} \xleftarrow{G} \mathcal{B} を関手とします。 \mathcal{A} の対象  X \mathcal{B} の対象  Y \mathcal{C} の射  F(X) \xrightarrow{f} G(Y) を、三つ組  \langle X, Y, f \rangle で表します。これらを対象として、 \langle X, Y, f \rangle から  \langle X', Y', f' \rangle への射としては、 \mathcal{A} の射  X \xrightarrow{\alpha} X' \mathcal{B} の射  Y \xrightarrow{\beta} Y' の組  \langle \alpha, \beta \rangle
\begin{CD}
F(X) @> f >> G(Y) \\
@V F(\alpha) VV @VV G(\beta) V \\
F(X') @>> f' > G(Y')
\end{CD}
を可換にするものを考えます。この圏をコンマ圏(「圏論の道案内 ~矢印でえがく数学の世界~」では「一般射圏」)と呼び、 (F \downarrow G)(Wikipediaによる。「圏論の道案内 ~矢印でえがく数学の世界~」では「 (F \to G)」)と表します。

⑦極限,余極限の定義

定義 5.8 \mathcal{J} から圏  \mathcal{C} への関手のことを  \mathcal{J} 型の図式と呼びます。

 \mathcal{C} の任意の対象  X に対して、圏  \mathcal{J} の任意の対象を  X に、任意の射を  X の恒等射  1_X に対応させる関手が存在します。この関手を  X への定関手と呼びます。定関手は  \mathrm{Fun}(\mathcal{J}, \mathcal{C}) の対象となります。

対角関手  \Delta とは、 \mathcal{C} から  \mathrm{Fun}(\mathcal{J}, \mathcal{C}) への関手で、 \mathcal{C} の対象  X に対して  X への定関手を対応させるものです。 \mathcal{C} の射  X \xrightarrow{f} Y は定関手  \Delta(X) から定関手  \Delta(Y) への自然変換  \Delta(f) に写されます。 \Delta(f) のすべての成分が  f であるとします。 \mathcal{J} の任意の射  A \xrightarrow{a} B は定関手で恒等射に写されるので
\begin{CD}
X @> 1_X >> X \\
@V \Delta(f)_A VV @VV \Delta(f)_B V \\
Y @>> 1_Y > Y
\end{CD}
が可換である必要があります。これは  \Delta(f) のすべての成分が  f であれば成り立ちます。

(1)  \mathcal{J} 型の図式  D \mathrm{Fun}(\mathcal{J}, \mathcal{C}) の対象だから、圏  \mathbf{1} から  \mathrm{Fun}(\mathcal{J}, \mathcal{C}) への関手と同一視すれば、一般射圏  (\Delta \to D) を考えることができます。

 (\Delta \to D) の終対象を極限と呼びます。双対的に  (D \to \Delta) の始対象を余極限と呼びます。圏  \mathcal{J} が有限個の対象、射から構成されているとき、特に有限極限、有限余極限と呼びます。

(2)「圏論入門 - Haskellで計算する具体例から」の定義では、 \mathcal{J} 型の図式  D に対して、 \mathcal{C} の対象  A (錐の頂点と呼びます)、 \mathcal{J} のすべての対象  j に対して射(射影と呼びます)  p_j: A \to D(j) で、任意の  \mathcal{J} の射  f: j \to k に対して  D(f) \circ p_j = p_k (以下の図式が可換。「錐の条件」)であるものを、 A から  D への錐と呼び、 (A, \{p_j\}) と書きます。
\begin{CD}
A @> p_j >> D(j) \\
@| @VV D(f) V \\
A @>> p_k > D(k)
\end{CD}

 (\mathcal{C}, D) を、圏  \mathcal{C} の任意の対象  A から  D への錐を対象とし、錐  (A, \{p_j\}) から錐  (A', \{q_j\}) への射は  \mathcal{A} の射  u: A \to A' で、任意の  \mathcal{J} の対象  j に対して  q_j \circ u = p_j (以下の図式が可換。「射の条件」)であるものを射とする圏とします。(「圏  \mathcal{C} の射の合成」を射の合成をとして圏  (\mathcal{C}, D) が圏となることが図式からわかります。)
\begin{CD}
A @> p_j >> D(j) \\
@V u VV @| \\
A' @>> q_j > D(j)
\end{CD}

 (\mathcal{C}, D) に終対象があるとき、その終対象、あるいはその終対象の頂点を  \mathcal{J} 型の図式  D の極限と呼びます。

 D を圏  \mathbf{1} (対象を  X とする)から  \mathrm{Fun}(\mathcal{J}, \mathcal{C}) への関手と同一視」したものを  D' とします。(1) の  (\Delta \to D) は、 \mathcal{C} の対象  A \mathbf{1} の(ただ一つの)対象  X \mathrm{Fun}(\mathcal{J}, \mathcal{C}) の射  \Delta(A) \xrightarrow{p} D'(X) = D からなる三つ組  \langle A, X, p \rangle を対象として、 \langle A, X, p \rangle から  \langle A', X, p' \rangle への射としては、 \mathcal{C} の射  A \xrightarrow{u} A' \mathbf{1} の(ただ一つの)射  1_X の組  \langle u, 1_X \rangle
\begin{CD}
\Delta(A) @> p >> D = D'(X)\\
@V \Delta(u) VV @| \\
\Delta(A') @>> p' > D = D'(X)
\end{CD}
を可換とする射(「 (\Delta \to D) の射の条件」)からなる圏となります。

 p, p' は自然変換  \Delta(A) \overset{p}{\Longrightarrow} D \ (: \mathcal{J} \to \mathcal{C}) であるから、 \mathcal{J} の対象  j に対して成分  p_j A = \Delta(A)(j) \xrightarrow{p_j} D(j) \ (\in \mathcal{C}) \mathcal{J} の射  j \xrightarrow{f} k に対して
\begin{CD}
A @> p_j >> D(j) \\
@| @VV D(f) V \\
A @>> p_k > D(k)
\end{CD}
を可換とするものとなります。これは (2) の「錐の条件」と同じものとなります。

 (\Delta \to D) の射の条件」から
\begin{CD}
A @> p_j >> D(j) \\
@V u VV @| \\
A' @>> p'_j > D(j)
\end{CD}
は可換となります。これは (2) の「射の条件」と同じものとなります。

よって (2) の  (\mathcal{C}, D) は圏となり、 (\Delta \to D) に終対象が存在することと  (\mathcal{C}, D) に終対象が存在することは同値となります。 (\Delta \to D) の終対象の  A (\mathcal{C}, D) の終対象の頂点となります。

(3) (Wikipediaでは) 対象  L から  D への錐  (L, \{p_j\}) であって、任意の錐  (N, \{q_j\}) に対して射  u: N \to L が一意的に存在して  \mathcal{J} の任意の対象  j に対して  p_j \circ u = q_j を満たすとき、錐  (L, \{p_j\}) または対象  L \mathcal{J} 型の図式  D の極限と呼びます。

このとき、錐  (L, \{p_j\}) は (2) の定義の圏  (\mathcal{C}, L) の終対象、対象  L はその頂点となります。