クラス Class


|| なにかの集まりを指す総称

「集合」より範囲が広い『なんらかの集まり』のこと

スポンサーリンク

 

 

 


目次

 

素朴集合論「公理が整備されてない頃の集合論」

無制限内包「どこからでも要素を持ってきて良い」

 

ラッセルのパラドックス「クラスの存在保証」

制限内包性公理「要素のドメインを集合に限定したもの」

 

Neumann-Bernays-Gödel集合論「クラスを矛盾なく扱いたい」

真のクラス「集合ではないが何かの集まりではある」

 

 

 

 

 


素朴集合論

 

これはいわゆる「発想段階の集合論」で

 

\begin{array}{ccc} \mathrm{All} &&\to&& \mathrm{Set} \end{array}

 

特に何か制限や決まりは無く

「集合」という概念自体も特に定義されていません。

 

\begin{array}{ccc} \mathrm{Naive} && \mathrm{Axiom} \\ \\ \mathrm{Set}? &≒& \mathrm{Set} \end{array}

 

なのでここで扱われる「集合」は

厳密には「集合論で扱われる集合」ではなく

この記事の主題である「クラス」に近い概念になります。

 

 

 

 

 

無制限内包

 

どんな条件 φ を考えても

 

\begin{array}{ccc} φ(x) && \Longleftarrow && x は条件 φ を満たす \end{array}

 

↓ みたいな集合が作れる

 

\begin{array}{ccc} φ(x) &&\to&& \{ x \mid φ(x) \} \end{array}

 

これが「内包的定義」と呼ばれるもので

「素朴集合論」ではこの x に制限がありません。

 

 

 

 

 

ラッセル集合

 

「順序」を考えた時

 

\begin{array}{ccc} S&\in&S \end{array}

 

こんな形の集合を作ると順番が分からない

(例えば S=\{S\} とかは一番下が分からない)

 

\begin{array}{ccc} S & \not\in &S \end{array}

 

だから「順番が分かるもの」だけ集めてみよう

 

\begin{array}{ccc} R &=& \{ S \mid S\not\in S \} \end{array}

 

そんな発想から得られたのがこの集合で

(集合全体という概念を前提にしている点が重要)

 

\begin{array}{ccc} R&\in& R && ? \\ \\ R&\not\in& R && ? \end{array}

 

後に結果として

これが「素朴集合論」の欠陥を浮き彫りにします。

(素朴集合論では常に集合全体から要素をとる)

 

 

 


 


ラッセルのパラドックス

 

|| クラスの存在証明

「素朴集合論」で見つかった矛盾のこと

 

\begin{array}{lcl} R&=&\{S \mid S∉S\} \end{array}

 

先ほど考えたこんな集合を考えてみた時

 

\begin{array}{ccc} R&\in& R && ? \\ \\ R&\not\in& R && ? \end{array}

 

果たしてこの RR に含まれるのか

あるいは含まれないのか

 

 

考えてみるとよく分かりませんが

 

\begin{array}{ccc} R&\in& R && × \\ \\ R&\not\in& R && × \end{array}

 

結果、こんな感じになっちゃうので

これは「ラッセルのパラドックス」と呼ばれています。

R に含まれるとも含まれないとも言えない)

 

 

 

 

 

所在の検証

 

「排中律」を考えれば

 

\begin{array}{lcl} A&∨&\lnot A &&\Longleftrightarrow&& \mathrm{True} \\ \\ R\in R &∨& \lnot (R\in R) &&\Longleftrightarrow&& \mathrm{True} \end{array} 

 

これはきちんと2択になるはずで

どちらにもならないとは考え辛いです。

R\not\in R の定義は \lnot (R\in R) これ)

 

 

しかし確認してみると

 

\begin{array}{ccc} R\in R &&\to&& R\not\in R && \because R=\{ S\mid S\not\in S \} \end{array}

 

こちら側はこうなり

R 自身は順番を壊さない?)

 

\begin{array}{ccc} R\not\in R &&\to&& R\in R && \because R=\{ S\mid S\not\in S \} \end{array}

 

こちら側もこうなるので

(入る方が間違いなら入らないはず)

 

\begin{array}{ccc} R&\in& R && × \\ \\ R&\not\in& R && × \end{array}

 

こんな結論が得られてしまいます。

(これがラッセルのパラドックス)

 

 

 

 

 

ラッセルのパラドックスの結論

 

整理すると

 

\begin{array}{ccc} R&=& \{ S \mid S\not\in S \} \end{array}

 

簡単に定義できて

「存在するはずのもの」が

(この時点では材料の使用法に制限が無い)

 

\begin{array}{ccc} R\in R &&\to&& R\not\in R && \because R=\{ S\mid S\not\in S \} \\ \\ R\not\in R &&\to&& R\in R && \because R=\{ S\mid S\not\in S \} \end{array}

 

「存在しない」というのが

このパラドックスの端的な結論になります。

(パラドックスは R が存在するという仮定の下で成立)

 

 

 

 

 

集合論の欠陥という解釈

 

このパラドックスの発見当時

これは「集合論の不備」と解釈されて

(この時点の集合論は後に素朴集合論と呼ばれる)

 

\begin{array}{ccc} 集合論? &&\to&& 素朴集合論 \end{array}

 

「無制限の内包」を見直すきっかけになり

 

\begin{array}{ccc} パラドックスの回避 &&\to&& 公理的集合論 \end{array}

 

果ては「集合論」自体を厳密に定義し

そのルールを整備するきっかけにもなりました。

(現代の公理的集合論はこれがあったから生まれた)

 

 

 

 

 

真クラスの存在保証という解釈

 

この結果として

「集合」という概念が厳密に定義され

(集合の公理に矛盾しないものだけが集合)

 

\begin{array}{ccc} \mathrm{Axiom} &&\to&& \mathrm{Set} \end{array}

 

「集合ではないが存在する」ものとして

(クラスはこれと集合の総称)

 

\begin{array}{ccc} R &\not\in& \mathrm{SET} \\ \\ R &\mathrm{is}& \mathrm{Class} && \mathrm{NBG} \end{array}

 

これは解釈されるようになりました。

(これに真クラスという名前が付いた)

 

 

 

 

 


制限内包性公理

 

↑ を解決したい

この要請により得られた成果が

 

\begin{array}{lcccr} φ(x) &&\Longrightarrow && \{ x \mid φ(x) \} && △ \\ \\ φ(x) &&\Longrightarrow && \{ x\in S \mid φ(x) \} && 〇 \end{array}

 

「無制限の内包」を制限する

「制限内包性公理(分出公理・分離公理)」で

 

\begin{array}{ll} \forall S&\exists{}S_{\mathrm{intension}}{}&{}\forall x&\Bigl(&x\in{}S_{\mathrm{intension}}⇔\Bigl(x\in{}S∧\varphi(x)\Bigr)&\Bigr) \end{array}

 

これは「要素を持ってくる場所」を

『議論領域』ではなく『集合』に限定することで

 

\begin{array}{l}R&\in&S\end{array}

 

こうならないようにしています。

R はどの集合にも含まれないことを利用)

 

 

 

 

 

論理式から見る違い

 

比較しておくと

 

\begin{array}{ccc} x\in S_{\mathrm{intension}} &\Longleftrightarrow& \varphi(x) \end{array}

 

「無制限の内包」はこうで

(議論領域全体から述語 φ により要素が定義される)

 

\begin{array}{ccc} x\in S_{\mathrm{intension}} &\Longleftrightarrow& \Bigl(x\in S∧\varphi(x)\Bigr) \end{array}

 

「制限内包性公理」はこうです。

(議論領域内で定義されている集合 S から要素をとる)

 

 

 

 

 

制限内包性公理の発想

 

なんでこうするとうまくいくのか

 

\begin{array}{ccc} R\in R &&\to&& R\not\in R && \because R=\{ S\mid S\not\in S \} \\ \\ R\not\in R &&\to&& R\in R && \because R=\{ S\mid S\not\in S \} \end{array}

 

これは「ラッセルのパラドックス」で得られた結果から

(集合に含むとも含まないとも言えない)

 

\begin{array}{ccc} R &\not\in& \mathrm{SET} \end{array}

 

このような「 R を追い出す」という方向で考えると

R が集合の要素にならないようにする)

 

\begin{array}{ccc} \varphi(x) &&\to&& x\in S∧\varphi(x) \end{array}

 

なんとなく自然な発想であることが分かります。

(集合 S の要素に R はならない)

 

 

 

 

 

制限内包性公理と無制限内包

 

発想の流れを追っていくと

 

\begin{array}{ccc} ラッセルのパラドックス \\ \\ ↓ \\ \\ 例外となるRを排除したい \end{array}

 

まず始めは「例外の排除」

これはまあ普通の発想ですね。

 

\begin{array}{ccc} 例外となるRを排除したい \\ \\ ↓ \\ \\ Rをそもそも作れなくしたい \end{array}

 

そしてここから

R という矛盾が作られない」ような

そんな理屈を考えるという発想に繋がるわけですが

 

\begin{array}{ccc} Rをそもそも作れなくしたい \\ \\ ↓ \\ \\ Rを作れる材料に問題が? \end{array}

 

この時点では

まだ「 R を作れなくする方法」は曖昧です。

 

 

ただこれは

「無制限の内包」という

 

\begin{array}{ccc} φ(x) &\to& x \in S \end{array}

 

直感的に考えてまずそうな操作が普通にあるので

(他の操作は帰属関係 \in\lnot くらい)

 

\begin{array}{ccc} Rを作れる材料の問題点 \\ \\ ↓ \\ \\ 無制限内包に注目 \\ \\ ↓ \\ \\ 内包の範囲は制限が必要? \end{array}

 

ここまでは普通に分かります。

 

 

そしてここまで分かれば

 

\begin{array}{ccc} 内包の範囲は制限が必要? \\ \\ ↓ \\ \\ どのように制限すれば良いのか \\ \\ ↓ \\ \\ とりあえず問題の無い集合だけで考えてみる \end{array}

 

こういった発想には自然に繋がるので

 

\begin{array}{ccccl} φ(x) &&\to&& x\in 有限集合 &∧&\varphi(x) \\ \\ φ(x) &&\to&& x\in 有限の自然数 &∧&\varphi(x) \\ \\ φ(x) &&\to&& x\in 自然数全体 &∧&\varphi(x) \\ \\ φ(x) &&\to&& x\in 実数全体 &∧&\varphi(x) \end{array}

 

後は帰納的に推論をしていけば

(ここのドメインを「問題の無い集合」に拡張)

 

\begin{array}{ccc} φ(x) &&\to&& x\in 問題の無い集合 &∧&\varphi(x) \end{array}

 

この形を推測することができます。

(これがそのまま制限内包性公理になった)

 

 

 

 

 


\mathrm{Neumann}\text{-}\mathrm{Bernays}\text{-}\mathrm{Gödel} 集合論

 

これは「 \mathrm{Zermelo}\text{-}\mathrm{Fraenkel} 集合論」に

 

\begin{array}{ccc} \mathrm{ZF}+\mathrm{Class} &&\to&& \mathrm{NBG} \end{array}

 

「クラス」を矛盾なく導入した集合論のことで

(要はクラス周りを整備した成果物)

 

\begin{array}{lc} 全ての集合 &\to& \mathrm{SET} \\ \\ 全ての順序数 &\to& \mathrm{ON} \end{array}

 

こういった「クラス」を扱う時に

『矛盾が発生しないようなルール』

これを提供するという役割を担っています。

 

 

 

 

 

\mathrm{ZF} ではクラスを扱えない

 

\mathrm{ZF} 集合論」で扱えるのは

「問題の無い集合(集合の厳密な定義)」のみで

 

\begin{array}{ccc} \mathrm{Set} &\to& \mathrm{Class} && × \end{array}

 

「クラス(真クラス)」を記述することはできません。

\mathrm{ZF} 内で触れるのは集合だけ)

 

 

\mathrm{ZF} 内における「クラス」とは

あくまで「理論の外側」にあるもので

理論内では「存在しない」という扱いになります。

 

 

 

 

 

導入された定義

 

この狭さを取り払った

 

\begin{array}{ccl} \mathrm{Set}(X) &←& Xは集合である \\ \\ \mathrm{ProperClass}(X) &←& Xは真のクラスである \end{array}

 

「拡張された \mathrm{ZF} 」が \mathrm{NBG}

 

\begin{array}{ccc} \mathrm{Set}(X) &\Longleftrightarrow& \exists Y \,\, X\in Y \end{array}

 

「集合である」の厳密な定義を筆頭に

(要素になれるというのが集合の定義)

 

\begin{array}{ccc} \mathrm{ProperClass}(X) &\Longleftrightarrow& \lnot \mathrm{Set}(X) \end{array}

 

「真クラス」の厳密な定義や

(真のクラスは要素になれない)

 

\begin{array}{ccc} C &=& \{ x \mid x=x \} \end{array}

 

「全体クラス」なんかを

\mathrm{NBG}\mathrm{ZF} に追加しています。

 

 

 

 

 

真クラスは要素では無いとする

 

「ラッセルのパラドックス」や

 

\begin{array}{ccc} R\in R &&\to&& R\not\in R && \because R=\{ S\mid S\not\in S \} \\ \\ R\not\in R &&\to&& R\in R && \because R=\{ S\mid S\not\in S \} \end{array}

 

ブラリ=フォルティのパラドックス」を見れば

 

\begin{array}{ccc} \mathrm{Ordinal}(\mathrm{ON}) &\Longrightarrow& \mathrm{ON} \in \mathrm{ON} \end{array}

 

「帰属関係」で

 

\begin{array}{ccc} R &\in& ~ \\ \\ \mathrm{ON} &\in& ~ \end{array}

 

問題のやつらが

「要素側に来る」ことが問題だと推測できるので

(全体は α\in \mathrm{ON} 常に右側だとするのが自然)

 

 

その結果として

 

\begin{array}{ccl} \mathrm{ProperClass}(X) &\Longleftrightarrow& \lnot \mathrm{Set}(X) \\ \\ \mathrm{ProperClass}(X) &\Longleftrightarrow& \lnot \Bigl( \exists Y \,\, X\in Y \Bigr) \end{array}

 

「真クラス」は

「要素にならない」と定義されています。

(後で検証してみたら問題が見つからなかった)

 

 

 

 

 

拡張された公理

 

この定義における C がドメインになる

 

\begin{array}{ccc} \mathrm{Set} &\to& \mathrm{Class} \end{array}

 

この結果として

\mathrm{ZF} の各公理のドメインは

「集合」から「クラス」に拡張されていて

 

\begin{array}{ccc} \forall X \forall Y & \Bigl( \forall S \,\, S\in X ⇔S\in Y \Bigr) ⇒ X=Y \end{array}

 

例えば「外延性公理」における

S\in XX は「クラス」になります。

(他の公理も形は変わらずドメインだけ広がっている)

 

 

 

 

 

再調整された内包性公理

 

\mathrm{ZF} の公理で違いがあるのは

 

\begin{array}{ccc} \{ S\in U \mid \mathrm{Set}(U) ∧φ(S) \} \end{array}

 

「制限内包性公理」のみで

(他はドメインがクラスになるだけ)

 

 

これは \mathrm{NBG} では

 

\begin{array}{ccc} \exists C & \forall S & S\in C ⇔ φ(S) \end{array}

 

「無制限内包」に近い形で

このように拡張されています。

φ で量化できるのは集合に限る)