オブジェクトモデルと論理

前回、集合をオブジェクトと考えることで、自分自身を要素として含む集合のような怪しい集合も含めて素朴集合論の世界をオブジェクトモデルとしてモデル化することができることを述べた。

そこで、そのような素朴集合論のモデルであるオブジェクトモデルと論理との関係を考えてみた。

オブジェクトモデルのオブジェクト全体を集めたものを Uc としたが、Ucはあくまでも当面関心のあるオブジェクトを集めた有限集合である。しかし、この有限集合は必要に応じて新しいオブジェクトを取り込んで自由に拡張できる。その場合新しい Uc について考えることになるが、その場合も Uc の要素は有限個である。

オブジェクトモデルにおける集合とは、その外延というオブジェクトの属性が、Uc の部分集合を表しているオブジェクトである。Uc のオブジェクトの数が N であるとすると、Uc の冪集合の要素の数は 2 ^ N であるから、Uc のオブジェクトでは表せない Uc の部分集合が必ず存在する。そのような集合はオブジェクトモデルでは「集合」とは呼ばれず「クラス」になる。「クラス」を「集合」とよぶ事ができないのは、その「クラス」を外延に持つオブジェクトが Uc の要素であるオブジェクトのうちには見つけられないからだ。

あるオブジェクトの集まりに論理学が適用できるかどうかは、排中律がその集まりに適用できるかどうかによって決まる。Uc の任意の部分集合について、排中律が成立すれば Uc には論理が適用できる。そして、Uc の「クラス」については明らかに論理が適用できることが分かる。つまり、Uc の任意の「クラス」についてその補集合が存在することは明らかだからだ。

このように、Uc の「クラス」については論理法則が適用できるが、Uc の集合については論理が適用できない場合がある。それは Uc のオブジェクトでは「クラス」の全てに対応させることができないからだ。

この観点からラッセルのパラドックスについて考えてみよう。Uc のオブジェクトの中には明らかに自分自身を含むオブジェクトと自分自身を含まないオブジェクトがある。また、これらのオブジェクトは自分自身を含まない集合からなるクラスと自分自身を含む集合からなるクラスが存在する。この意味で集合は自分自身を要素として含むか含まないかのいずれかであるという排中律は成立する。

ところが自分自身を要素として含む集合のクラスを外延として持つオブジェクト R を Uc の中に求めようとすると、R が自分自身を含めば、R は自分自身を含まない集合となりラッセルのパラドックスが発生する。このため、R は Uc の中に見つけることはできない。

一方自分自身を要素として含む集合の集合 ¬R の場合は ¬R は自分自身を要素として含んでもよいし、含まなくても良い。¬R が自分自身を含まない場合は ¬R は自分自身を含まない集合のクラスの要素となってしまうが、それでも Uc のクラスにおける排中律は保たれる。

自分自身を要素として含む集合の集合が、自分自身を要素として含まない集合のクラスの要素であるというのは抵抗があるが、自分自身を要素として含まない集合のクラスは存在してもそのような集合は存在しないのだから論理は破綻しない。

要するに素朴集合論の集合を集めた Uc について、その部分集合であるクラスについては論理は適用できるが、Uc の要素であるオブジェクトとしての集合の数は、Uc のクラスの数に比べて少ないために、全てのクラスを集合として表すことができず、論理が集合については適用できない場合があるということだ。

この困難は、集合を「物の集まりという物」すなわちオブジェクトとして定義することによって発生する。そのため、集合に論理すなわち排中律を持ち込むためには、特別に選び出された集合からなる Uc を想定する必要がある。

素朴集合論のオブジェクトモデルでは、オブジェクト全体を表す Uc は有限集合だが、Uc のオブジェクトの中に無限集合を含むように拡張することは可能だ。Uc は有限集合だが無限集合を含むように拡張できるというのは素朴集合論の世界をコンピュータ上に構築できることを意味している。オブジェクトはコンピュータプログラムの実態として容易にプログラムできる上、コンピュータは有限のメモリ上で作動しているにもかかわらず無限集合のいくらでも拡張できる近似として動作させることができるからだ。

素朴集合論の世界をオブジェクトモデルとして、コンピュータ上に実現することができれば、ラッセルのパラドックスや集合ではないクラスの存在も包含した集合論的なプログラム言語を記述できるだろう。

[PR]
by tnomura9 | 2017-01-30 23:03 | ラッセルのパラドックス | Comments(0)
<< オブジェクトモデルと無限集合 激変 >>