RPGツクールと数学のブログ

RPGツクールと数学についてのブログです。

ZFC公理系

過去ブログの転載です。

数学は、何か定義をして、そこから得られる結論を定理としてまとめていくことで築いていく、巨大な論理の集大成といわれています。

足し算を定義して、それを発展させて掛け算を作り、さらにそれを発展させて累乗を作ることができます。高校数学で色々複雑なものが登場しますけれど、実は結局小学中学の延長であることがほとんどですよね。微分だって、もとは割り算です。対数も掛け算からできています。

では、定義のもとになった理論のそのまた定義の、その根っこの部分はどうなっているでしょうか? 言わば数学の始まり、すべての基礎がどこかにあるはずです。

何だか哲学みたいになってしまいますが、いくら数学でもこの始まりの部分は決めなければなりません。これを公理といいます。すべての議論の前提となる、決めごとです。これ以上細かく証明できないよ、というスタートの部分は自明であるものとして、そのルールに基づいて得られるものを数学による理論とすればよいのです。

すべての基礎となる公理をどのように決めてやればよいか、というのは昔からよく考えられてきました。幾何学の公理であるユークリッド原論や、自然数の公理であるペアノの公理がその代表例です。でも、公理はなるべく少ない方が良いですし、同じ数学ですから、同じ公理からすべてを導くことが出来た方が理想です。

そこで、現在では集合をベースとしたZFC公理系と呼ばれるものが一般的な公理として採用されています。*1

ZFC公理系

論理式のルールはすでに定義されているものとします。そこから次に述べる公理をセットにしたものをZFC公理系と呼び、これらをすべて満たすものを数学的思考の対象として扱おう、と決めるのです。つまり、これらがいわゆる数学のすべての基礎といえます。

1. 外延性の公理
\displaystyle \forall A \forall B (\forall x(x \in A \Leftrightarrow x \in B) \Rightarrow A=B)

2. 空集合の公理
 \displaystyle \exists A \forall x (x \notin A), A \equiv \varnothing

3. 対の公理
 \displaystyle \forall x \forall y \exists A \forall t (t \in A \Leftrightarrow (t = x \lor t = y)), A=\{x,y\},\{x,x\}\equiv\{x\}

4. 和集合の公理
 \displaystyle \forall X \exists A \forall t (t \in A \Leftrightarrow \exists x \in X (t \in x)), A \equiv \bigcup X, \bigcup \{x, y\} \equiv x \cup y

5. 無限公理
 \displaystyle \exists A (\varnothing \in A \land \forall x \in A (x \cup \{x\}\in A))

6. 冪集合公理
 \displaystyle \forall X \exists A \forall t(t \in A \Leftrightarrow t \subseteq X), A \equiv 2^{X}

7. 置換公理
 \displaystyle \forall x \forall y \forall z ( (\psi(x, y)\land \psi(x, z) )\Rightarrow y=z) \Rightarrow \forall X \exists A \forall y (y \in A \Leftrightarrow \exists x \in X \psi (x, y))

8. 正則性公理
 \displaystyle \forall A (A \neq \varnothing \Rightarrow \exists x \in A \forall t \in A (t \notin x))

A. 選択公理
 \displaystyle \forall X ( (\varnothing \notin X \land \forall x \in X \forall y \in X(x \neq y \Rightarrow x \cap y = \varnothing) ) 
 \displaystyle \Rightarrow \exists A \forall x \in X \exists t (x \cap A = \{t \}) )

B. 分出公理
 \displaystyle \forall X \exists A \forall x (x \in A \Leftrightarrow (x \in X \land \psi(x) ) ), 
 \displaystyle A \equiv \{x \in X | \psi(x)\}, \{x \in X | x \in Y \} \equiv X \cap Y 

いやもう、目が回りそうですね@_@ でも大丈夫です。これからそれぞれの意味を図解していきます。

ZFC公理系をすべて満たすものを、集合と定義します。つまり数学の基礎は集合なのです。この見方による数学を公理的集合論と呼びます。高校数学では集合がわずかにしか登場せず、印象も薄いですが、集合は非常に大事な概念だったのです。集合をベースにして数字とか足し算とか出来てるわけですからね。

ここで、1~8のみをZF公理系と呼び、これに選択公理(A)を付け足したものをZFC公理系と呼びます。選択公理があるとおかしな議論ができてしまうのではないか?と思われるようなことが多々あるため*2、この公理を外した場合の公理系としてZFが挙げられています。基本的にはZFC公理系が採用されており、数学の基礎公理といえばZFC公理系と言われています。

また、分出公理(B)はもともと公理系の仲間でしたが、これを発展させて置換公理(7)が作られたので、置換公理を認めたものがZFの仲間となります。分出公理は置換公理から導くことができるので、定理と言えます。

公理の図解

以下ではそれぞれの公理を集合の図を用いて表わし、説明しています。論理式など後付けで理解出来るので、イメージを大事にしましょう^^

1. 外延性の公理
\displaystyle \forall A \forall B (\forall x(x \in A \Leftrightarrow x \in B) \Rightarrow A=B)

f:id:fermiumbay13:20180103160522p:plain

二つの集合A, Bがあったとき、その中の要素がまったく同じだったなら、二つの集合は等しいと定義します。集合の等しさの定義です。当たり前ですね。

2. 空集合の公理
 \displaystyle \exists A \forall x (x \notin A), A \equiv \varnothing

f:id:fermiumbay13:20180103160526p:plain

要素を全く持たない集合が存在するという公理です。これを空集合と呼びます。 \varnothingと書かれるあれですね。空集合は特別な集合です。

3. 対の公理
 \displaystyle \forall x \forall y \exists A \forall t (t \in A \Leftrightarrow (t = x \lor t = y)), A=\{x,y\},\{x,x\}\equiv\{x\}

f:id:fermiumbay13:20180103160531p:plain

二つの集合x, yがあったとき、それらをまとめて保持するより大きな集合Aが存在するという公理です。これを、集合x, yと呼び、\{x, y\}で表わします。「対」がどんなときにも必ず存在すると言い切る公理であり、二つの集合があればどんなものでも対を作れる、ということを言っています。まどろっこしい言い方ですが……

また、同じ集合の対\{x, x\}\{x\}と書き、これをシングルトンと呼びます。

4. 和集合の公理
 \displaystyle \forall X \exists A \forall t (t \in A \Leftrightarrow \exists x \in X (t \in x)), A \equiv \bigcup X, \bigcup \{x, y\} \equiv x \cup y

f:id:fermiumbay13:20180103160534p:plain

集合の中にさらに集合がいくつかあったとき、その中の要素それぞれを取り出した集合が存在するという公理です。これを和集合と呼びます。集合x, yの和集合を特にx \cup yと書きます。

5. 無限公理
 \displaystyle \exists A (\varnothing \in A \land \forall x \in A (x \cup \{x\}\in A))

f:id:fermiumbay13:20180103160539p:plain

要素を無限に持つ集合が存在することを保証する公理です。集合Aの中に空集合 \varnothingがあれば、その空集合を使って \varnothing \cup \{ \varnothing \}という新しい集合を作れます。その集合も要素に持つよ、ということになります。

上の図で言うと左の○が空集合で、そのすぐ右上にあるのが \varnothing \cup \{ \varnothing \}です。
これが新しい要素として Aに属されましたから、これを使ってさらに (\varnothing \cup \{ \varnothing \}) \cup \{ \varnothing \cup \{ \varnothing \} \} = \varnothing \cup \{ \varnothing \} \cup \{ \varnothing \cup \{ \varnothing \} \} という新しい要素を作ることができ、これも Aに属されます。これが右側のキモイ○です。さらにそれを使って新しい要素を作れて、……というのを無限に続けることができます。このような集合 Aが存在してもいいよ、という公理になります。

なかなか奇怪なルールですけれど、これは実は自然数を作るときに重要な公理になります。

6. 冪集合公理
 \displaystyle \forall X \exists A \forall t(t \in A \Leftrightarrow t \subseteq X), A \equiv 2^{X}

f:id:fermiumbay13:20180103160547p:plain

集合の各要素の取り出しパターンすべてを列挙して、それぞれを要素として持つ新たな集合を冪集合と呼び、冪集合が必ず存在するということを表わした公理です。冪集合は、すべての部分集合を持った集合、と言っても同じことです。集合Xの冪集合は2^{X}という累乗のような表記をします。

7. 置換公理
 \displaystyle \forall x \forall y \forall z ( (\psi(x, y)\land \psi(x, z) )\Rightarrow y=z) \Rightarrow \forall X \exists A \forall y (y \in A \Leftrightarrow \exists x \in X \psi (x, y))

f:id:fermiumbay13:20180103160554p:plain

一番直観的でない公理だと思います。

\psi(x, y)は論理式を表わします。例えば、\psi(x, y)=xyを食べた」だったら、ホントに食べたなら真となります。

ある論理式\psiが、任意のx, y, zに対して(\psi(x, y)\land \psi(x, z) ) \Rightarrow y=zを満たすものと仮定します。つまり、前の変数に対する後ろの変数はただ一つですよ、ということを表わします。実はこれは関数を意味していて、xに対してyが決まるという関係を\psiで表わしているのです。関数は変数に対して値がただ一つに決まりますよね。f(x)=yかつf(x)=zなら、y=zです。ここで言う論理式\psiはそういう、関数としての働きのある論理式ですよ、ということを前置きで述べます。

次に、集合Xを考えます。このXの中にはいくつか要素がありますが、その要素が例えばxだったとします。\psi(x, y)を満たすようなyは必ず集合Aに属しますし、Aに属しているすべての要素yには必ず\psi(x, y)を満たすようなxが対応して存在します。\psi(x, y)y=f(x)のことでしたので、Xは関数の定義域、Aは関数の値域のことを言っているのです。

要するに関数の値域は集合になるよ、という公理です。

8. 正則性公理
 \displaystyle \forall A (A \neq \varnothing \Rightarrow \exists x \in A \forall t \in A (t \notin x))

f:id:fermiumbay13:20180103160605p:plain

こんなものは集合とは認めないよ、という公理です。上の図では要素が無限に入れ子になっていますけど、つまり自分自身を要素に持ったものを表わします。無限集合に似ていますが、あっちは要素が無限にあるというものであって、ちょっと違います。

どうしてこれを集合とは認めないかというと、色々問題があったためです。

自分自身が属するような集合は存在するか? すなわち集合AA \in Aを満たすことはあるのか?ということを考えたとき、実は真とも偽とも証明できてしまい、矛盾してしまうのです。(ラッセルのパラドックス

これではマズイので、そんなものは集合とは認めないとしたのです。

A. 選択公理
 \displaystyle \forall X ( (\varnothing \notin X \land \forall x \in X \forall y \in X(x \neq y \Rightarrow x \cap y = \varnothing) ) 
 \displaystyle \Rightarrow \exists A \forall x \in X \exists t (x \cap A = \{t \}) )

f:id:fermiumbay13:20180103160610p:plain

ZFC公理系のCは選択(Choice)公理のCです。一般に、この公理は正しいと認めます。

集合Xの中にいくつか集合があって、その中に要素が色々あったとします。ただし、それぞれの集合は交わり部分を持たないことを条件とします。(一つ目の集合に○があったら、二つ目の集合に○があってはいけない)

このとき、それぞれの集合から何でもいいので一つ要素を選んで取ってくることができます。そうやって選んで包んだものを集合Aとし、これを集合X選択集合と呼びます。

条件さえ満たしていれば、任意の集合に対して選択集合を作ることが出来るというのが選択公理です。

B. 分出公理
 \displaystyle \forall X \exists A \forall x (x \in A \Leftrightarrow (x \in X \land \psi(x) ) ), 
 \displaystyle A \equiv \{x \in X | \psi(x)\}, \{x \in X | x \in Y \} \equiv X \cap Y 

f:id:fermiumbay13:20180103160616p:plain

分出公理は置換公理から簡単に示すことが出来るので、あってもなくても変わりませんが、置換公理がややこしいので、分出公理を使って考えた方がわかりやすい場合があります。

分出公理は非常にシンプルであり、ある集合Xの各要素のうち、条件\psiを満たすものだけを集めた集合Aを作ることが出来る、という公理です。この条件\psi(x)x \in Yとすると「集合Xに属する要素のうち集合Yに属する要素を集める」という意味になり、これをXとYの共通部分と呼んでX \cap Yと表わすことにします。

 

以上で集合のルールが定義され、これらに基づいて自然数や図形が作られていくことになります。

*1:ZFC公理系から、上記のユークリッド原論やペアノの公理を導くことが出来ます。

*2:例えば、同じ大きさの球をバラバラにして組み立てなおせば、もとの球とまったく同じ大きさの球が2個作れてしまう、という結論が導かれます(バナッハ=タルスキーのパラドックス