Steve Awodey の Category Theory を読む シリーズトップ
6.2 Cartesian closed categories
Example 6.5
CPO はプログラミング言語の Denotational Semantics で使用される重要な代数構造なのでここでは詳しく証明しておきます。
is an
CPO
任意の に対して、
を任意の
に対して
で定義します。この
が monotone かつ
-continuous であることを証明します。
任意の と任意の
に対して、
が monotone であることより、
が成り立つ。よって colimit の UMP より
が成り立つ。
次に が
-continuous であることを証明するのですが、その前に準備として任意の
と任意の
に関して次の事柄を証明しておきます。
任意の に対して
を示せば、
が
chain となる。すると
が
CPO であることから残りの性質は明らかである。
が
-continuous であることから、
を示せばよいが、
であるからこれは成り立つ。
任意の に対して
を示せば、
が
chain となる。すると
が
CPO であることから残りの性質は明らかである。
が monotone であることより
が成り立つ。
任意の と任意の
に対して
と上で示したことより
が成り立つ。
すると chain
に対する colimit の UMP より
が成り立つ。
さらに上で示した chain
に対する colimit の UMP より
が成り立つ。
任意の と任意の
に対して
が monotone であることと上で示したことより
が成り立つ。
すると chain
に対する colimit の UMP より
が成り立つ。
さらに上で示した chain
に対する colimit の UMP より
が成り立つ。
以上の準備を元に が
-continuous であることを証明します。
\begin{align*}
\left( \varinjlim_{i} f_{i} \right) (\varinjlim_{j} p_{j}) &\underset{\text{def}}{=} \varinjlim_{i} f_{i} \left( \varinjlim_{j} p_{j} \right) \\
&\underset{f_{i} \text{ is continuous}}{=} \varinjlim_{i} \left( \varinjlim_{j} f_{i}(p_{j}) \right) \\
&= \varinjlim_{j} \left( \varinjlim_{i} f_{i}(p_{j}) \right) \\
&\underset{\text{def}}{=} \varinjlim_{j} \left( \left( \varinjlim_{i} f_{i} \right) (p_{j}) \right)
\end{align*}
is
-continuous
まず任意の chain
に関して以下の事柄を証明します。
任意の に対して
かつ
が成り立つ。よって
が成り立つ。
任意の と任意の
に対して
が成り立つとする。すると
chain
に対する colimit の UMP より
が成り立つ。同様に
が成り立つ。よって
が成り立つので、
である。
上で証明したことと の定義より、証明するべきことは
である。
任意の に対して、
\begin{align*}
f_{i}(p_{i}) &\underset{f_{i} \text{ is monotone}}{\leq} f_{i} \left( \varinjlim_{k} p_{k} \right) \\
&\leq \varinjlim_{j} \left( f_{j} \left( \varinjlim_{k} p_{k} \right) \right) \\
&\underset{\text{def}}{=} \left( \varinjlim_{j} f_{j} \right) \left( \varinjlim_{k} p_{k} \right)
\end{align*}
chain
に対する colimit の UMP より
が成り立つ。
任意の と任意の
に対して、
を示す。
のとき、
が成り立つ。
のとき、
が成り立つ。
よって chain
に対する colimit の UMP より
が成り立つ。これは
が continuous であることより
と同値である。
すると chain
に対する colimit の UMP より
が成り立つ。定義より
である。
is
-continuous if
is so
任意の chain
に対して、以下の事柄を証明します。
任意の に対して
を示せばよいが、これは
の定義より
と同値である。
chain
に対して、上で証明したことより
が成り立つ。
よって が
-continuous であることより
が成り立つ。
Example 6.6
初めにテキストの通りに定義された が graph homomorphism であることを証明します。
上の diagram が可換になることを示せばよい。
任意の と任意の
に対して、
が成り立つ。さらに、
が成り立つ。よって
が成り立つ。
同様に が成り立つ。
次に が exponential object in
であることを証明します。
初めに、任意の に対してテキストの通りに定義される
が graph homomorphism となることを証明する。それには次の diagram が可換となることを示せばよい。
これは任意の に対して、
となることと同値であり、さらに
の定義より以下の diagram が可換になることと同値である。
任意の に対して、
が成り立つ。同様に
が成り立つ。よって
は graph homomorphism である。
この に対して
が成り立つことは明らかである。
次に任意の が
を満たすとする。
任意の と任意の
に対して
が成り立つ。
また、任意の と任意の
に対して
が成り立つ。よって
が成り立つ。
6.3 Heyting Algebras
Definition 6.10
lattice に関しては complete であることと cocomplete であることが同値であることを証明します。
さらっと書かれていますが、その前の poset がすべての set-indexed meets を持てば、圏論的な意味で complete となるということの証明はできますか?
set-indexed meets を持つというのは、任意の集合 を離散圏とみなした場合に任意の diagram
が limit を持つことと言い換えられます。一方で、圏論的な意味で complete になるためには任意の diagram に対して limit を持たないといけません。
poset を圏とみなした場合、任意の対象間にはただ一つしか arrow が存在しないということから証明できます。
任意の -index 集合
に対して、集合
を
で定義する。すると、
が complete であることから、
の limit
が存在する。これが
の colimit
であることを示す。
任意の と任意の
に対して
の定義より
が成り立つ。すると、
は
の limit であるから limit の UMP より
が成り立つ。
次に、任意の が任意の
に対して
を満たすとする。すると
の定義より
が成り立つ。よって limit の定義より
が成り立つ。
poset の anti-symmetricity より である。
6.7 Variable sets
6.7.1 において証明が省略されている事柄は exercise 15 としてまとめられているので、そちらの証明をしておきます。
Exercise 15(a)
has a terminal object
を任意の
に対して
で定義すると、任意の
と任意の
に対して、
が成り立つので
が成り立つ。
has products
任意の に対して
を任意の
に対して
で定義する。すると
かつ
が成り立つ。このとき
が product となることを示す。
任意の に対して
かつ
が成り立つとすると、任意の
に対して
が成り立つので、
が成り立つ。
が poset であることより、これはただ一つに決まる。
has an initial object
を任意の
に対して
で定義すれば、任意の
に対して
が成り立つ。
has coproducts
任意の に対して
を任意の
に対して
で定義する。すると product の場合と同様に
は coproduct となる。
has exponentials
任意の に対して
を任意の
に対して
で定義する。
ならば
が成り立つこと。
任意の に対して
を示せばよい。
ならば
は明らかである。
とすると、任意の
に対して
を示せばよいが、仮定より
が成り立つ。また
が monotone であることより
が成り立つ。よって
が成り立つ。
ならば
が成り立つこと。
任意の に対して
を示せばよい。
ならば
は明らかである。
とすると
が成り立つことを示せばよい。仮定より
が成り立つが、
より
である。よって exponential の定義より
が成り立つ。
Exercise 15(b)
任意の に対して
を示せばよい。
の場合を考えれば十分である。このとき
が成り立つ。また
ならば
が成り立つので
が成り立つ。よって
となるので
が成り立つ。
任意の に対して
を示す。任意の
に対して
とすると
が成り立つ。
より
が成り立つので
となる。よって
が成り立つ。
任意の に対して
が成り立つとする。このとき任意の
に対して
が成り立つ。
とすると
より
が成り立ち
が成り立つ。同様に
とすると
が成り立つので
となる。
- preserves terminal object
任意の に対して
が成り立つので
である。
- preserves products
任意の と任意の
に対して
を示せばよい。つまり
を示せばよいが、これは
が product であることより明らかである。
- preserves exponentials
任意の と任意の
に対して
を示せばよい。つまり
を示せばよい。
only if case
とすると
より
であるから、
が成り立つ。一方、仮定より
であるから
が成り立つ。よって
となるので
が成り立つ。
if case
が成り立つことから
が成り立つ。すると仮定より
が成り立つ。
は常に成り立つので、
となるから
つまり
が成り立つ。よって
が成り立つ。
参考書籍

Category Theory (Oxford Logic Guides)
- 作者:Awodey, Steve
- 発売日: 2008/01/10
- メディア: ペーパーバック

- 作者:スティーブ アウディ
- 発売日: 2015/09/19
- メディア: 単行本