等号の定義
定義1(クラスが等しいということの定義) |
2つのクラス\( A \)と\( A' \)に対し、以下の条件が成り立つということを\( A = A' \)と表記し*1、「\( A \)と\( A' \)は等しい」と読む。 |
(1) 任意のクラス\( U \)に対し、\( A \in U \)と\( A' \in U \)が同値である。 |
(2) 任意の集合\( x \)に対し、\( x \in A \)と\( x \in A' \)が同値である。 |
また\( \neg(A = A') \)を\( A \neq A' \)と略記し、「\( A \)と\( A' \)は等しくない」または「\( A \)と\( A' \)は異なる」と読む。 |
論理式の再帰的定義の方法から、2つのクラス\( A \)と\( A' \)が等しいとはいかなる論理式\( \Phi(X) \)*2に代入して得られる論理式\( \Phi(A) \)と\( \Phi(A') \)が同値ということであることが分かります。例えば「\( a \)は集合である」という文は\( \exists X, a \in X \)という論理式で表せるため、次が成り立つことが分かります。
命題2(集合であることの等号不変性) |
2つのクラス\( a \)と\( a' \)に対し、\( a = a' \)ならば、\( a \)が集合であることと\( a' \)が集合であることが同値である。 |
論理式\( \Phi(X) \)に対し、\( \forall A(\forall A'( (\Phi(A) \wedge \Phi(A') ) \to (A = A') ) ) \)という論理式を「\( \Phi(A) \)を満たすクラス\( A \)は一意である」と読むことにします。また\( (\exists A(\Phi(A) ) ) \wedge (\forall A(\forall A'( (\Phi(A) \wedge \Phi(A') ) \to (A = A') ) ) \)という論理式を\( \exists ! A(\Phi(A) ) \)と略記し、「\( \Phi(A) \)を満たすクラス\( A \)が一意に存在する」や「ただ1つのクラス\( A \)が存在し、\( \Phi(A) \)が成り立つ」と読むことにします。量化子に対する流儀と同様に、与えられたクラス\( A \)に対して\( \exists ! a( (a \in A) \wedge (\Phi(a) ) ) \)という論理式を\( \exists ! a \in A, \Phi(a) \)と略記し、「\( \Phi(a) \)を満たす\( a \in A \)が一意に存在する」や「ただ1つの集合\( a \in A \)が存在し、\( \Phi(a) \)である」と読むことにします。
さて、等号の定義に使った「同値」という概念と「等しい」という概念の違いに注意しましょう。前者は2つの「論理式」の間の関係ですが、後者は2つの「クラス」の間の関係です。以上を踏まえて、次の演習に取り組んでみて下さい。
演習3(等号の同値関係性) |
以下を証明せよ。 |
(1) 任意のクラス\( A \)に対し、\( A = A \)が成り立つ。 |
(2) 2つの任意のクラス\( A \)と\( A' \)に対し、\( A = A' \)ならば\( A' = A \)である。 |
(3) 3つの任意のクラス\( A \)と\( A' \)と\( A' ' \)に対し、\( A = A' \)かつ\( A' = A' ' \)ならば\( A = A' ' \)である。 |
等号の同値関係性に実際に取り組んでみて分かることは、2つのクラスが等しいことを証明するのが二度手間で面倒であるということです。次の公理は、その手間を半分にすると共に、クラスという形式的な対象に「意味付け」を与えます。
公理4(外延性公理*3) |
2つの任意のクラス\( A \)と\( A' \)に対し、以下は同値である: |
(1) \( A = A' \) |
(2) 任意の集合\( a \)に対し、\( a \in A \)と\( a \in A' \)が同値である。 |
外延性公理により、2つのクラスが等しいことを示すためには、それらのクラスに属する元が同じであることを示せば良いということになります。つまり、クラスというものは「集合の(集合とは限らない)集まり」に他ならない(他の意味や情報を持たない)という意味付けが与えられました*4。
クラス同士に等号が成立する必要十分条件が外延性公理で与えられましたが、その必要十分条件を半分だけ満たすものとして、「包含」という関係を定義します。
定義5(包含関係の定義) |
2つのクラス\( A \)と\( A' \)に対し、「任意の\( a \in A \)に対し、\( a \in A' \)である」という文*5を\( A \subset A' \)(または\( A \supset A' \))と表記し*6、「\( A \)が\( A' \)に含まれる」や「\( A' \)が\( A \)を含む」と読む。 |
外延性公理と包含関係の定義により、2つのクラス\( A \)と\( A' \)が等しい必要十分条件は\( A \subset A' \)かつ\( A' \subset A \)であることとなります。また、\( A \subset A' \)かつ\( A \neq A' \)であるということを、\( A \subsetneq A' \)や\( A' \supsetneq A \)と表記します*7。
さて、クラス\( A \)に対し、1つの変項\( x \)を持つ論理式\( x \in A \)を対応させることが出来ます。この論理式をここでは\( \Phi_A \)と置くことにしましょう。外延性公理により、\( A \)は\( a \in A \)が成り立つような集合\( a \)、つまり\( \Phi_A \)を満たすような集合\( a \)の集まりとして復元されることが分かります。このクラス\( A \)から論理式\( \Phi_A \)への対応の「逆」を、公理として与えることにします。
公理6(クラスに対する分出公理*8) |
\( \Phi(X) \)を量化の有界な論理式とする*9。この時、あるクラス\( A \)が存在し、任意の集合\( a \)に対し以下が同値になる。 |
(1) \( \Phi(a) \) |
(2) \( a \in A \) |
クラスに対する分出公理で\( \Phi \)に対応するクラス*10のことを\( \{a \mid \Phi(a) \} \)のように表記することが慣例で、「集合\( a \)であって\( \Phi(a) \)が成り立つものの全体のクラス」や「集合\( a \)であって\( \Phi(a) \)が成り立つもの全体からなるクラス」と読み、この表記を外延的記法と呼びます。\( \{a \mid \Phi(a) \} \)の右側に「\( a \)が集合であること」を表す論理式\( \exists X (a \in X) \)を\( \Phi(a) \)と\( \wedge \)で結んで加えても構いませんが、通常は省略します。なお形式言語に最初から定項や関数記号として与えていない記号を用いて項の新たな表記を与えることの正当化については
を参照して下さい。
以上によって論理式からクラスへの対応を得て、かつ先程与えたクラスから論理式への対応の、ある意味*11で逆になっています。
例7(外包的記法の例) |
(1) \( \{ a \mid a = a \} \)は集合全体のクラスで、しばしば\( V \)や\( U \)と書かれる。 |
(2) クラス\( A \)に対し、\( \{ a \mid a \notin A \} \)は\( A \)に属さない集合全体のクラスで、\( A \)の補クラス(complement)と呼ばれ、しばしば\( A^{\textrm{c}} \)と書かれる。 |
(3) \( \{ a \mid a \notin a \} \)は自身を元に持たない集合全体のクラスで、ラッセル集合(Russell's set)と呼ばれます。 |
集合ではないようなクラスが存在することは、次の命題で確かめることが出来ます。
証明
ラッセル集合を\( R \)と置く。\( R \)が集合でないこと(つまり\( \neg(\exists X (R \in X) ) \))を背理法で示す。\( R \)が集合であると仮定する。排中律から、\( R \in R \)または\( R \notin R \)が成り立つ。
まず\( R \in R \)が成り立つと仮定する。\( R \in R \)であることと\( R \)の定義から、\( R \notin R \)である。従って\( R \in R \)かつ\( R \notin R \)となる。これは矛盾である。
次に\( R \notin R \)が成り立つと仮定する。\( R \)が集合であるという仮定と\( R \notin R \)であることと\( R \)の定義から、\( R \in R \)である。従って\( R \in R \)かつ\( R \notin R \)となる。これは矛盾である。
いずれの場合も矛盾が帰結されたので、\( R \)は集合でない。
さて、クラスに対する分出公理によって膨大な量のクラスの存在が保証されましたが、集合の存在については依然として何も保証されていません。次に、「空集合」という特別な集合の存在を公理として課します。
*1 つまり&mathjax{A = A'};は論理式&mathjax{(\forall U,( ( (A \in U) \to (A' \in U) ) \wedge ( (A' \in U) \to (A \in U) ) ) ) \wedge (\forall x,( (\exists U, x \in U) \to ( ( (x \in A) \to (x \in A') ) \wedge ( (x \in A') \to (x \in A) ) ) ) )};の略記であるということです。
*2 例えば論理式&mathjax{\forall a( (a \in X) \to (\forall a'( (a' \in a) \to (a' \in X) ) )};等です。
*3 外延性の公理(axiom of extensionality)とも呼ばれます。
*4 裏を返せば、[[外延性公理>#extensionality]]が与えられていない場合、2つのクラスが元を共有していたとしても等しい保証が何もないということです。
*5 つまり論理式&mathjax{\forall a \in A, a \in A'};のことです。
*6 文献によっては&mathjax{A \subseteq A'};や&mathjax{A' \supseteq A};と表記します。
*7 &mathjax{A \subset A'};を&mathjax{A \subseteq A'};と表記する流儀では、&mathjax{A \subsetneq A'};を&mathjax{A \subset A'};と表記します。紛らわしいのでご注意下さい。
*8 内包公理(axiom schema of comprehensionまたはaxiom scheme of specification)とも呼ばれます。
*9 量化が有界とは限らないような論理式も許容する流儀もあります。その場合は、より多くのクラスを扱うことになります。
*10 [[クラスが等しいということの定義>等号の定義#equality]]によって一意性も保証されています。
*11 クラスから論理式へ、さらにその論理式からクラスへと対応させると元のクラスと等しいクラスが得られます。論理式からクラスへ、そのクラスから論理式へと対応させると元の論理式と同値な論理式が得られます。
*12 ラッセルのパラドックス(Russell's paradox)とも呼ばれます。
*13 実は[[補遺1>補遺1 その他の公理]]で扱う[[正則性公理>正則性公理#regularity]]によってラッセル集合が集合の全体のなすクラスと一致することが示されます。