素朴集合論のオブジェクトモデル

素朴集合論の世界を集合というオブジェクトの集まりと考えると、素朴集合論をモデル化できる。これを仮に素朴集合論のオブジェクトモデルと呼ぶことにする。

オブジェクトモデルでは素朴集合論の集合や、集合ではない対象(個体)も含めて一括してオブジェクト(対象)としてとらえる。1個のオブジェクトは複数の属性 (property) をもつ。属性の一つはそのオブジェクトの外延であるオブジェクトの集まりだ。集合は、その要素の集まりという外延を持つ。集合オブジェクトは外延にオブジェクトの集まりを持つ。空集合の外延は要素を一つも含まない集合だ。個体の外延は何もない。しかし、空集合と区別するために何もないという nil という値をもつと考えてもよい。

オブジェクトモデルのオブジェクトの集まり全体を Uc (candidate for universe) と呼ぶことにする。Uc は有限のオブジェクトの集まりだ。しかし、オブジェクトはいつでも拡張可能なので、無限集合の任意の要素を扱うことができる。また、無限集合のオブジェクトも考えることができる。この場合無限集合の外延は無限集合なので、Ucに含まれないオブジェクトを含んでいる。

オブジェクトの属性には、外延以外にもいろいろなものを与えることができる。偶数であるとか犬であるとか自分自身を要素として含むとか自由に考えることができる。また、Uc の任意のオブジェクトはこの属性に従って、述語を充足するかどうかで2分できる。x は犬であるという述語に対し、その述語を充足するオブジェクトの集まりと、その述語を充足しないオブジェクトの集まりを、オブジェクトの持つ属性に従って分けることができる。この意味で Uc では排中律が成立する。

オブジェクトモデルでは集合について制限をつける。集合とは Uc の中のオブジェクトの一つでなければならないという制限だ。Uc のオブジェクトが N 個であるとすると、オブジェクトの考えられる集まりの数は 2 ^ N だから N 個のオブジェクトでは Uc の部分集合を全て表現することはできない。Uc のオブジェクトの外延として表現できない Uc の部分集合は集合ではなくクラスと考える。ただし、あるクラスを集合として取り扱いたい場合は、そのクラスを外延とするオブジェクトを Uc に追加して Uc を拡張すればよい。

この集合についての制限は、集合を物の集まりという物(対象)として考える定義からくる。集合を個体と同列に物(オブジェクト)として考えるためには、対象の集まりとは別にそれを表すオブジェクトが必要なためだ。

Uc の要素のオブジェクトについては排中律が成立する。つまり、制限されない内包的定義でオブジェクトの集まりを定義できる。しかしながら、それらの全てが Uc のオブジェクトである集合の外延になるわけではない。Uc には常に集合と定義できないオブジェクトの集まりが存在する。

このモデルの特徴は、オブジェクト指向言語のオブジェクトとして、集合と個体のオブジェクトをプログラム化できることだ。ラッセルのパラドックスをはじめとする、素朴集合論の様々な性質をこのモデルの振る舞いとして表現することができる。また、それをプログラムとして記述することも可能だ。

ラッセルのパラドックスという矛盾を含む素朴集合論はその実体的なモデルを使うことで、なぜそのような矛盾が生じるのか、また、このモデルにどのような制限をつけると数学の基礎となるような集合論を構築できるのかが分かる。

[PR]
by tnomura9 | 2017-01-15 13:15 | 考えるということ | Comments(0)
<< がり勉の勧め A proverb is ... >>