「ものの集まりを集合というものと考える」という素朴集合論の一見自明な簡潔な定義は、しかしながら、ラッセルのパラドックスという深刻な矛盾を招いてしまう。そこで、その矛盾を解消するために、公理的集合論が考案されたが、抽象的になって素朴集合論のようなイメージの簡明さを失っている。
この記事では、素朴集合論が単純な有向グラフとして完全にモデル化できることを示し、この有向グラフが、自然にラッセルのパラドックスを排除できることを示す。素朴集合論は有向グラフとしてモデル化することによって、その全体が直観的に理解できるようになる。 1.集合という対象 まず、一匹の犬、一個の飴のように個体として認識できるものを対象と呼ぶことにする。対象は、こういう具体的なものに限らない。たとえば、犬の個体を全て集めた「犬の集合」は概念であり、目に見えないがこれも一個の対象と考えることができる。数の 1 や 2 のようなものも厳密には概念だが、ひとつの数として対象として扱うのが便利である。そこで、上述した集合の定義を言い換えて「対象の集まりを集合という対象であるとする。」と定義する。 2.集合は自分自身を要素とするか? ラッセルのパラドックスでは、全ての集合は「自分自身を要素とする集合」と「自分自身を要素とはしない集合」という二つの集合に二分されるという仮定から推論された。たとえば、全ての動物のうちから犬を集めて、「犬の集合」をつくるとする。つまり全ての対象に対して「これは犬であるかどうか」と問い、犬であると判断したものだけを集めたものが犬の集合である。しかし、全ての対象に対して「犬であるかどうか」と問われるのであれば、「犬の集合」自身が犬であるかどうかが問われるだろう。「犬の集合」は「犬の集合」を要素としては含まないので、これは「自分自身を要素として含まない集合」である。一方「犬でないものの集合」を考えてみると、「犬でないものの集合」は犬ではないので、これは「犬でないものの集合」の要素となる。すなわち、「犬でないものの集合」は「自分自身を要素とする集合」であるということになる。 しかし、犬という対象を全て集めた時に「犬の集合」が出現する。「犬の集合」は確かに対象とみなすことができるが、しかし、それは犬の集合を定義する前には対象としては存在していなかったはずだ。「犬の集合」を定義するまでは存在していなかった「犬の集合」という対象を「犬の集合」の要素として考えるというのは問題がある。対象を集めて作られた「犬の集合」という対象は、定義によって、「新しく生まれた」対象である。これは、a が自然数ならば a + 1 は自然数であるという、ペアノの再帰的定義のように、再帰的定義によって新しく生まれた集合という対象と考えるべきだ。したがって、集合 A が集合 A の要素として含まれるかという問はナンセンスである。集合 A は自分自身を要素としては含み得ないと考えるのが自然だろう。 3.素朴集合論は有向グラフで表現できる。 ただし、「犬の集合」を対象のひとつとして認めることで、個体の犬と同列に扱うことができるようになる。したがって、集合を含めて全ての対象は有向グラフのノードとして均一に扱うことにする。このノードの中身を覗くことはできない。その代わり、対象と対象の間に要素と集合の所属関係を表す射を考える。つまり、A ∈ B ならば、A -> B である。また、集合 A の要素の全体は所属関係の射の domain の対象を全て調べることで知ることができる。こうすることで、興味の対象となる全ての個体と集合とその所属関係を有向グラフとして表すことができる。この有向グラフでは個体と集合は同じ対象として扱われ区別されない。 4.全ての集合の集合は有向グラフに記述できるか? ここで、興味がでてくるのは、これらの対象全てを集めた集合という対象があるかどうかということだ。そこで、これらの全ての対象を集めた集合を考える。これは、このグラフの一つの対象であり、グラフのノードとして表現できる。このノードには他の全てのノードからの射を受けている。しかしながら、この対象(ノード)から、送られる射がないのだ。それは、この対象が全ての対象を集めるという操作から生じた「新しい対象」であり、集めるときに存在した全ての対象とは異なる対象だからだ。自分自身への射があれば、それは自分自身を要素として含んでおり、全ての対象を要素とするということができるだろうが、上に述べた集合の定義からそれはありえない。 したがって、「すべての集合を集めた集合」を表す対象は作ることができない。それまでのすべての対象からの射を受ける対象を作ると、その対象は、以前に存在していた全ての対象とは異なる新しい対象になってしまうからだ。 4.集合の定義の再帰性 「対象の集まりを集合という対象とする」という集合の定義が、再帰的定義であったために、どうしても定義の度に新しい対象を発生させてしまう。全ての対象を集めた集合は作れない仕組みになっているのだ。これが、ラッセルのパラドックスの正体だ。上の定義では集合は自分自身を要素としないのだから、「自分自身を要素としない集合の集合」とは単に「全ての集合の集合」ということだ。それは、集合の定義の再帰性のため作ることができない。 この辺りの事情は自然数には最大数は存在しないという議論ににている。最大数を N と仮定しても、再帰的定義から N + 1 はそれより大きい自然数になってしまう。全ての対象を集めた集合も定義の度に新しい対象を発生させてしまうので、集合の有向グラフでは、全ての対象からの射をうける対象を見つけることはできない。 5.素朴集合論と排中律 次の疑問は、このような有向グラフに排中律はどのように関わっているかということだ。全ての対象は、「犬の集合」と「犬の集合ではないものの集合」に分けることができるのだろうか。それに対する答えは簡単だ。全ての対象を集めた対象ができないのだから、「犬の集合」ではない対象の集合を作ることはできない。それは、犬の集合に含まれる対象とそれ以外の対象という分け方をしても同様だ。述語命題の述語は個体や集合として確定している対象についてのみ適用できると考えるべきだ。排中律は述語命題の述語が適用可能な場合に必ず真か偽のどちらかであるという意味であると考えられるべきだ。これは整数が偶数か奇数のどちらかであるが、無限大については偶数とも奇数とも確定できないのと似ている。 集合は内包的定義では、自分自身を要素とすることはないという制限をかけた素朴集合の世界では、そのどの対象をとっても「犬である」か「犬ではない」かであるという排中律は成立するが、「犬の集合」と「犬ではないものの集合」に二分することはできない。「犬ではないものの」集合は作れないからだ。 素朴集合論の全体を有向グラフとして表現することで、ラッセルの集合「すべての集合の集合」は自然に除外される。また、排中律は対象(すなわち個体と集合と定めることのできる対象)についてのみ適用できることが分かる。このような観点からは、素朴集合論には何らの矛盾点もみられない事が分かる。 追記(集合の定義の再帰性について) 集合の定義とペアノの公理の類似点は、集合を次のように定義すると良く分かる。 1.個体は集合である。 2.集合の集まりは(そのメンバーには一致しない新しい)集合である。 ペアノの公理の場合のように、集合を集めて定義することで、それまでの集合にはない新しい集合が定義される。ペアノの定義では最大数というものはない。N が最大数であると仮定しても、N + 1 はそれより大きい自然数になるからだ。集合の定義の場合も、それまでの集合を全て集めて集合を作っても、その集合はそれまでの集合にはない新しい集合であるから、「全ての集合の集合」を作ることはできない。 この観点から見ると、クラスの意味がはっきりする。クラスとは内包的定義で集合を作ると、その集合がその要素には含まれない新しい自身の内包的定義を満たすような構造である。このような構造では、内包的定義を満たす全ての集合を集めた集合を作ることはできない。 「全ての集合の集合」のようなクラスは、自然数のような無限集合とは異なる。自然数の再帰的定義はあくまでも自然数という集合の要素を作るが、クラスの場合は新しい集合ができてしまうので、集合という概念でまとめることができない。それは、要素の無限性ではなく、概念の無限性を体現しているからだ。 ラッセルのパラドックスは、このような集合の定義の再帰性を無視していたための現象だ。 追記その2(素朴集合論と排中律の関係について) ラッセルのパラドックスで問題視されたのは集合の内包的定義の無制限な適用だった。しかし、ラッセルのパラドックスの問題点が集合の再帰的な定義であることが分かったので、内包的定義の制限は公理的集合論のものより緩める事ができる。 すなわち、内包的定義で集合を定義する場合、定義された集合がその内包的定義を充足しなければ、それは集合として認められるということだ。定義された集合が内包的定義を満たしてしまう場合、それは集合ではなくクラスとなる。また、内包的定義で定義すると、それは集合かまたはクラスのどちらかになる。 内包的定義では、全ての対象について述語 P(x) を充足するものを集めたものが集合であるとする。この場合述語 P(x) は x の値によってその振る舞いを変えてはならない。床屋のパラドックスのように述語 P(x) が x の値によってその振る舞いを変えるときは、述語 P(x) を用いて集合を定めることはできない。 述語 P(x) の振る舞いが x の値とは独立している時は、全ての対象は、述語 P(x) を真とするか、偽とするかのいずれかになり、排中律を充足する。つまり、全ての対象 x について P(x) が真であるか、P(x) が偽であるかのどちらかが成立する。 このとき、定義された集合は、排中律から P(x) を真とするか偽とするかのいずれかである。このように述語について排中律が成立しているにもかかわらず、矛盾が起きてしまうのがラッセルのパラドックスであったが、集合の定義の再帰性を考慮に入れると、内包的定義で集合を定めることができるのは、このうち、定義された集合が内包的定義を充足しないものであるということがわかる。しかし、述語で定義された集合が内包的定義を充足する場合もある。この場合は、内包的定義で集合を定義することはできず、定義されるのはクラスである。 したがって、内包的定義の適用を集合の要素の集まりに対して行われない時は、内包的定義を充足する集合と内包的定義を満たさないクラスに二分することができる。あるいは、内包的定義がクラスを定義するときは、その否定命題で集合が定義される。 一方、内包的定義が集合の要素に限定されているときは、必ずその定義を充足する集合と充足しない集合に二分できる。なぜなら、充足しない要素の集まりは、集合の部分集合であることが分かっているからだ。たとえば、「動物の集合」について「犬でないものの集合」を考えたとする。そうして定義された「犬でないものの集合」は「犬ではない」が、「犬でないものの集合」は「動物」ではない。したがって、動物の集合の要素に対して内包的定義を適用された場合は述語を充足するものも充足しないものも集合を作ることができる。 このように、集合の定義の再帰性に着目し、集合とクラスを混同しなければ、述語についての内包的定義は排中律に関して矛盾を発生させずに、集合を定義できる。 追記その3(アイディアの骨子) この記事の考察の目的は、素朴集合論にラッセルのパラドックスを起こさせずに排中律を適用することだ。そのアイディアの骨子は次のようになる。 1.まず、対象を集めて作った集合は、集めた対象のどれとも異なる新しい対象であるということを明確にしておく。集合の定義は本質的に新しい対象を作り出すことだ。この、対象を集めて新しい対象を作り出すという集合の定義の再帰的な性質を明確にすることが、ラッセルのパラドックスを回避する鍵になる。 2.集合を再帰的に定義するということは、集合の定義が一種のアルゴリズムであるということを示している。 例えば犬の集合を作るときも、最初の犬をみつけ、次に2番めの犬をみつけ、次に ... というように全ての犬が見つかるまでこの操作を続けた結果であると考える。 ラッセルの集合の場合も、当面考えられる「自分自身を要素としない集合」を集めた集合を作る。すると、その集合自身が「自分自身を要素として含まない集合」なので、それを新たな要素として集合を作りなおすと、それもまた「自分自身を要素としない集合」になる。 このように、ラッセルの集合の場合は、要素を集めるというアルゴリズムが永遠に終了しないため、最終的な集合を作り出すことができない。ラッセルの集合は、集合の無限大のようなものになってくる。自然数の無限大が自然数ではないように、ラッセルの集合も集合ではないので、無理にこれを集合と考えるとパラドックスが発生する。 3.ある対象は内包的定義を満たすか満たさないかのどちらかであるというのが排中律だ。対象を内包的な定義の基準で集めて集合という新しい対象を作り出すと、その対象は、排中律によって内包的な定義を満たすか、内包的定義を満たさないかのどちらかである。 新しく作られた集合が自身の内包的定義を満たさなければ、要素を集めるというアルゴリズムは停止して、集合が定義される。しかし、この集合が自身の内包的定義を満たしていれば、これを新しい要素として、集合の定義をやり直さなければならない。こうやって、やり直した集合が再び内包的定義を満たしてしまうという状況が止まらない場合は、要素を集めて集合を作るというアルゴリズムは停止できず、いつまでも集合を確定することができない。 この場合、排中律を充足する内包的定義があるにも関わらず、その内包的定義によって集合を確定することができない。これがクラスである。 4.ラッセルのパラドックスはこのような確定可能な集合と、集合として確定するものが作れないクラスを同列に扱ったために発生したものだ。クラスが発生するのは、集合という新しい対象が対象を集めることで創りだされるという集合の定義の再帰的性質が関係している。 5.排中律を充足する内包的定義とその否定命題によって創りだされるのは、2つの集合ではなく、集合とクラスである。このクラスを集合としては扱えないので、ラッセルのパラドックスは自然に排除される。つまり、内包的定義の排中律と素朴集合論の間に矛盾は発生しない。 6.クラスは無限集合とは異なる。無限集合は要素の生成が無限に行われるがそれらは全て集合の要素である。クラスの場合は、集合自体が無限に変化するので、集合を定めることができない。
by tnomura9
| 2014-11-08 19:47
| 考えるということ
|
Comments(0)
|
カテゴリ
新型コロナウイルス 主インデックス Haskell 記事リスト 圏論記事リスト 考えるということのリスト 考えるということ ラッセルのパラドックス Haskell Prelude Ocaml ボーカロイド 圏論 jQuery デモ HTML Python ツールボックス XAMPP Ruby ubuntu WordPress 脳の話 話のネタ リンク 幸福論 キリスト教 心の話 メモ 電子カルテ Dojo JavaScript C# NetWalker ed と sed HTML Raspberry Pi C 言語 命題論理 以前の記事
最新のトラックバック
最新のコメント
ファン
記事ランキング
ブログジャンル
画像一覧
|
ファン申請 |
||