人気ブログランキング |

述語論理のモデル

述語論理は生成規則のある記号列の集まりだ。述語論理の定理や証明も、記号列の文法とその変形規則から導かれる。基本的には、これらの記号列には意味が与えられていない。項や論理式といった記号列は言わば空っぽのコンテナのようなもので、その中に実際の理論の対象を当てはめることで、論理式に意味をもたせることができる。

述語論理はこのような理論の対象のコンテナなので、その理論についての論理的な操作は、述語論理の定理として取り扱うことができる。このような汎用性が述語論理の利点だ。どのような理論でも、述語論理の枠組みに適合するものは、理論の内容を吟味することなく、述語論理の推論や定理を利用できるからだ。

ただし、命題論理の場合と違い、述語論理はそのものの構造がやや複雑だ。逆に言えば、この構造に適合できる対象でないと述語論理が適用できないことになる。述語論理を理論に適用するためには、述語論理そのものの構造に対応するものがその理論にもなければならない。述語論理の構造とはその解釈を考えるときに明らかになる。つまり、議論の対象(個体)の集まりとしての「対象領域」、「解釈」としての「定数」、「変数」、「関数記号」、「述語記号」である。「定数」は対象領域の個々の要素を特定するのに用いられ、「変数」は「対象領域」上の不特定の要素を代表し、「関数記号」は対象領域の要素から他の要素への関数をあらわし、「述語記号」は対象領域から2値集合 {True, False} への写像を表す。これらの構成要素は十分抽象的なので、広い範囲の理論を代表し、その論理演算を担うことができる。

この述語論理の最も基本的な解釈はどのようなものかを考えることは、述語論理の本質を知り、それを活用する助けになるかもしれない。そこで、対象領域 D と述語記号 P のみの非常に簡素な述語論理のモデルを考えてみた。

対象領域 D は単に対象 a1, a2, a3, ... , の集合であると考える。また述語はこれらの対象の1項関数 P1(x), P2(x), P3(x), ... , だけを考えるものとする。このとき P(x) の型は P(x) :: D -> {True, False} である。また、P(x) を D の対象 a に関数適用した P(a) は True または False の値を持つ命題である。また、述語論理の構造には出てこないが、領域 D の冪集合を D* とする。

これらの条件で述語 P(x) については、これを充足する D の要素の集合を内包的定義で {x ∈ D | P(x) } で定義することができる。この内包的定義ももちろん述語論理の構造には現れない。しかし、内包的定義で定義される集合はすべて冪集合 D* の要素であるから、述語記号は内包的定義によって冪集合 D* の要素に対応している。述語記号についての制限はないが、述語記号に対応する集合は D* の要素であるから、述語記号に対応する冪集合 D* が同一の場合、述語記号は同値であると考えられる。したがって、述語記号と対応する冪集合 D* の要素によって類別できる述語記号の同値類を考えることができる。この同値類と冪集合 D* は全単射になるので、述語記号の同値類を冪集合 D* と同一視することができる。

さらに、述語記号に論理演算を適用してできる複合述語記号はすべて、述語記号に対応する領域 D* の要素の集合演算と対応しているから、述語記号の同値類の集合と領域 D* は同型である。したがって、述語論理の述語記号を、冪集合 D* の要素に置き換えても良いことがわかる。このとき、命題 P(a) は a ∈ P で表せる。すなわち、述語論理の最も単純なモデルは、領域 D の集合論であることがわかる。

この述語論理のモデルとしての集合論では、ラッセルのパラドックスは出現しない。なぜなら、この集合論で出現する集合は全て対象領域 D の部分集合であるから、内包的定義によって定義される集合が冪集合 D* の要素以外の集合になることはないからだ。

述語論理学のモデルとしての集合を考える利点は、全称量化子の意味がわかることだ。たとえば、∀x (P(x) -> Q(x)) の意味は x ∈ P -> x ∈ Q、すなわち P ⊂ Q であることがわかる。この例は、述語論理の振る舞いはベン図で全て説明できることを示唆している。ある理論のフレームワークとして述語論理が使えるかどうかは、その理論の述語の真理集合が対象領域の冪集合の要素になるかどうかを見ればいい。

また、この述語論理のモデルには重要な特徴がある。それは対象領域 D には集合を表す個体が存在しないということだ。したがって、このモデルでは対象領域の部分集合を対象として扱うことができない。集合の集合のようなものが扱えないのだ。集合を考える最大のメリットは集合を対象として扱うことができるということなので、これは容認できない。

そこで、対象領域 D が個体とその冪集合の要素でできている場合を考えてみよう。これは個体とその集合がひとしく対象と考えられる対象領域である。この対象領域では個体の集合とともに、集合の集合も考えることができる。この場合も対象領域 D の冪集合 D* は領域 D についての述語(の同値類)との同型を作ることができ、個体の集合の集合も扱うことができる。しかしながら、この対象領域 D の場合についても集合の集合の集合を含んではいない。対照領域 D の述語(の同値類)の集合は D* と同型であることは保証できるが、この場合でも対照領域の要素として表現できない集合の集合の集合が存在する。集合論を述語論理のフレームワークの中に閉じ込めようとしても、どうしても対照領域の要素として表現できない集合が存在してしまう。

このように、素朴集合論の一部を述語論理の枠組みに閉じ込めることは可能であるが、必ずその枠組みからはずれる集合が発生してしまうことがわかる。



# by tnomura9 | 2019-04-21 18:48 | ラッセルのパラドックス | Comments(0)

述語論理学では集合をどのように表すか

対象 a, b, ... の集合である領域 D にたいし、述語 P(x) は領域 D から2値集合 {True, False} への写像 P(x) :: D -> {True, False} である。しかし、述語論理学では領域 D の部分集合を表現する項や論理式はない。そこで、述語論理の言語で領域 D の部分集合を表現する方法はないかどうかを考える。

まず、領域 D の要素 a に対してだけ True であるが、他の要素に対しては False である述語 A(x) を考える。この述語による内包的定義で定義される集合は a のみを要素とする集合 {a } である。すなわち、

{x ∈ D | A(x) } = {a}

である。これで、内包的定義で集合を定義できる述語 A(x) を作ることができた。領域 D の部分集合 {a} は述語論理学の言葉では表現できないが、少なくとも内包的定義で集合を定義できる述語 A(x) を述語論理学の言葉で表現できることがわかる。

このようなシングルトン集合ができれば、領域 D の任意の部分集合を内包的定義で定義できる述語を述語論理学の言葉で表現することができる。たとえば集合 {a, b, c} を内包的定義で定義できる述語を P(x) とすると、これは述語論理学の論理式で、

P(x) = A(x) ∨ B(x) ∨ C(x)

と記述することができる。この場合、P(x) については、P(a) = True、P(b) = True、P(c) = True だが、それ以外の要素 n については P(n) = False である。このことは {x ∈ D | P(x) } = {a, b, c} であることを意味している。このように、領域 D についての述語論理の言語で直接に集合を表現する方法はないが、内包的定義によって集合を定義できる「述語」を定義することができることがわかる。

さらに P(a) = True であるからこの命題 P(a) は

a ∈ P (ただし、P は {x ∈ D | P(x)} の略記である)

と同じ意味になる。つまり、領域 D の対象 a が集合 P の要素であるという命題を P(a) で表すことができる。

このように領域 D に関する述語論理の言語で集合を直接的に表現する手段はないが、内包的定義で集合を定義できる述語を記述することはできる。したがって、述語と集合を同一視すれば、領域 D の部分集合は述語 P(x) で表現できることになる。つまり、領域 D に関する述語論理学の言語で集合を記述することができることがわかる。

このようにして、領域 D の述語論理学の言語によって領域 D の部分集合が定義できるようになったので、領域 D の部分集合の振る舞いについては余すところなく述語論理学によって記述できることがわかった。このことは、領域 D の部分集合については述語論理学の定理を安全に適用できるということを意味している。述語論理学の言語は無事に集合をそのフレームワークに取り込むことができるのだ。

ただし、注意しないといけないのは、述語論理で記述できるのはあくまでも述語であって、内包的定義そのものや集合そのものは記述できないということだ。すなわち、述語論理の枠内に記述できるのは、内包的定義で集合を定める述語であって、内包的定義や集合そのものではない。ラッセルのパラドックスの原因は無意識に述語論理の中に内包的定義そのものまで取り込んでしまったところにあるのではないだろうか。述語論理にとっての集合とは、述語を介して投影される映像のようなもので、直接つかむことはできないと考えたほうがいい。

# by tnomura9 | 2019-04-17 03:05 | ラッセルのパラドックス | Comments(0)

述語論理の意味

述語論理は一種のプログラム言語だ。

プログラム言語で書いたプログラムはそれだけでは単に記号の列でしかない。字句解析や構文解析でその記号列がプログラムとしての条件を満たしているかどうかは判断することができるが、たとえ、それがプログラムとしての条件を満たしていたとしても、それがインタープリタで実行されたり、コンパイラで実行可能ファイルにならない限り、何もすることができない。

述語論理も同じことが言える。述語論理の推論規則や定理はあくまでも構文論的な記号の構造の分析であり、それが実際の数学的対象に翻訳されない限りは、単なる記号列でしかないのだ。

述語論理を実際の数学やその他の対象に適用するためには、述語論理の解釈が必要なのである。ところで、命題論理については、構文とその解釈の間の関係は単純だ。命題変数には真偽のはっきりした命題であれば何でも当てはめることができる。そのような命題にたいしてはフレームワークとしての命題論理の議論をすべて適用することができる。その意味で命題論理は様々な現実の命題の推論の基礎となることができる。

このように、命題論理の解釈は、真偽のはっきりした命題という抽象性の高いものであるために、ほぼ全ての分野の命題に対し命題論理が論理的推論のバックボーンとなることができる。

述語論理の解釈は、命題論理のそれよりもやや複雑になる。したがって、命題論理よりは適用できる実際の現象の範囲が狭くなることになる。そのかわり、述語論理は命題論理では扱えない対象と述語の関係を扱うことができる。理論の適用範囲と表現力の間にトレードオフがあるのだ。命題論理の解釈には次のようなルールが発生する。

対象領域 (domain)
* 対象変数の動く範囲の集合 D

解釈 (interpretation)
* 定数には D の特定の対象を対応付ける : a, b, c, は特定の U の対象を指す。
* 変数は D の値を動く : x, y, z は U の対象のどれかを指す。
* 関数記号には D 上の関数を対応付ける : f(x), g(x, y), ... など。
* 述語記号には D の述語を対応付ける : P(x), Q(x, y), ... など。

構造 (structure)
* 対象領域 D と解釈 σ の対
* <D, σ>

述語論理の解釈」より改変

簡単に言うと述語論理を適用できる対象は、対象の集合とその関数、述語が存在する構造を持っている必要があるということだ。

そこで、素朴集合論は述語論理の解釈になり得るかどうかを考えてみた。まず対象の集合 D だが、これは特に問題なさそうだ。この対象 D は述語を持っている。すなわち、述語 P(x) を D の対象 a に関数適用すると P(a) は必ず真または偽の値を持つ。ただ、この段階では D には集合という概念はない。そこで、領域 D の部分集合の集合である D の冪集合 D* を考える。しかしながら、冪集合 D" は領域 D についての述語論理では表現できない。つまり、集合の概念は述語論理には馴染みにくいのではないかという疑問が生じる。

述語と集合を関連付けるのは内包的定義だ。すなわち、{x ∈ D | P(x) } で集合を定義する。これは冪集合 D* のどれかの要素と一致する。しかし、この内包的定義も述語論理の解釈には登場しない。単純な推論では、集合を述語論理の枠組みの中で記述することはできないような気がする。

# by tnomura9 | 2019-04-14 23:18 | ラッセルのパラドックス | Comments(0)

命題論理の意味

命題論理では命題を変数にして扱う。命題変数 A にはどのような命題も当てはめることができる。いろいろな個々の命題を命題変数 A として抽象化することによって、命題論理の推論はどのような具体的な命題の推論にも適用することができる。

A -> B, A => B

という推論は、

「西の空が赤ければ明日は晴れだ。西の空が赤い。したがって明日は晴れだ。」という推論や、「xが2ならx^2は4だ。xは2だ。したがってx^2は4だ。」という推論のどちらにも適用することができる。最初の推論の扱う内容と、後者の推論の扱う内容はかけ離れているにもかかわらす、おなじ記号論理の推論が適用できるために、その論理的構造は共通である。

このような命題変数の高度の抽象性の源は、全ての命題が真であるか偽であるかのどちらかであるという性質だ。命題論理の B -> (A -> B) のような論理式は、具体的な命題が真か偽かのどれかであるという性質を持つ限り、このスキーマを利用した推論は正当だ。

ただし、「この命題は偽である」というような命題は真とも偽とも言うことができないので、命題論理の命題変数に割り当てることはできない。命題論理の普遍性は、具体的な命題に排中律が成り立つときにのみ正当化される。

このように、記号だらけの命題論理の論理式は、具体的な議論に対し論理の構造を明らかにする働きがある。あるいは、具体的な命題の議論に際し、その議論を運ぶためのスキーマを提供する。

とかく記号のパズルのように見える命題論理の議論だが、そのような命題論理の定理の命題変数には現実のどのような命題も割り当てることができるということが、命題論理の威力や、その応用を考える上で重要だ。

ところが、命題論理学では命題変数の意味論は、それが真の真理値をとるか、偽の真理値をとるかしか注目していない。結局のところ、無数の命題が存在しても、論理的推論についてはそれが真であるか偽であるかしか問題とならないからだ。したがって、命題論理の本質とは、命題変数の真理値から、論理式全体の真理値がどう決まるのかを調べることだと割り切ることができる。

# by tnomura9 | 2019-04-09 23:54 | ラッセルのパラドックス | Comments(0)

素朴集合論の世界

素朴集合論では排中律が成立しないし、ラッセルのパラドックスが存在するから矛盾をはらんだ数学的対象だとされている。果たしてそうだろうか。ラッセルのパラドックスが発生したのは、素朴集合論の世界は対象と所属関係からなる世界であって述語 P(x) は全ての対象に対し True または False の値を返す、そうして述語による内包表記 {x | P(x) } によって集合を定めることができるという仮定からだった。

しかし、これは素朴集合論の世界を所属関係の定義された均一な対象の全体として捉えようとしたためで、素朴集合論の定義そのものから演繹される数学的構造については検討されていないのではないだろうか。素朴集合論の世界をその定義に沿って自然に演繹したら違う世界が見えてくるのではないだろうか。

いま対象 a0, a1, ... , an, ... を集めて領域 D を作る。領域 D は集合である。領域 D の部分集合を集めて冪集合 D* を作ると D* は集合演算について閉じている。領域 D の述語 P(x) は D を定義域とし2値集合 {True, False} への写像である。また、P(x) は D の要素全てに対し True または False を返すので、D の任意の要素 a に P(x) を適用した P(a) は命題である。また、領域 D の命題は排中律を満たしている。このとき内包記法 { x ∈ D | P(x) } は D の部分集合を定めるので領域 D* のある要素を表す。これは述語 P(x) の真理集合が D* の要素であることを示している。また、述語に論理記号を適用してできる複合述語の真理集合は D* の要素の集合演算と対応している、例えば P(x) ∧ Q(x) の真理集合は D* の対応する真理集合の積である。

領域 D からはまた、直積集合 D × D を導くことができる。D × D の冪集合は、D × D との間に上に述べたような D と D* の関係がある。また、D* の冪集合 D** を考えることができる。D** の要素は D の要素の集合の集合である。この場合も D と D* の間の関係が D* と D** の間に見出すことができる。さらに D × D** というような集合や、D ∪ D** のような集合も考えることができる。それらにもその冪集合を考えることができる。

こういうふうに見ていくと、素朴集合論のなかには、2つの集合があることがわかる。それは対象の集まりである領域とその部分集合の集合である領域の冪集合である。

このようなモデルでは、対象に均一に働く述語はなく。述語は必ずある領域から2値集合 {True, False} への関数として定義される。これは最初の対象と所属関係から定義された空間とは様子がことなる。最初のモデルでは、述語は空間全体の対象を定義域としていたが、あとのモデルでは述語は特定の領域を定義域とする関数であり、空間全体の対象を定義域とする述語はない。

最初のモデルからすると随分複雑なモデルだが、このモデルにおいてはラッセルのパラドックスは発生しない。ところで、このようなモデルに論理を適用する方法は型理論ではないだろうか。型理論についての情報が少ないのでよくはわからないが、プログラム言語の世界では、静的に型付けられた関数言語の Haskell のようなものがそれに対応するのではないかという気がする。

Haskell のデータ型は値の集合で、素朴集合論の領域に当たるのではないだろうか。関数は領域の冪集合への写像である(Haskell の場合は冪集合に限らないが)。こう考えると素朴集合論の問題を Haskell のプログラムとして表現できるのではないかという気がする。素朴集合論に論理が適用できないのではなく、適用のやり方が悪かったのだ。

素朴集合論の世界は、様々な集合(領域)と所属関係のような集合間の作用で構成されている。これは対象と射からなる圏論の世界に似ているが、領域 D とべき集合 D* の関係である所属関係 ∈ は 多値関数であるので、圏の射よりもゆるい関係である。

いずれにしても、論理に集合を押し込めるのではなく、素朴集合論の自然発生的な数学的構造に焦点をあてた解析も必要なのではないだろうか。タイプ理論については全く知らないのだが、タイプ理論がそのような素朴集合の構造に焦点を当てているのではないだろうか、この理論にはもう少し日が当たっていいのではないかと思う。

# by tnomura9 | 2019-04-02 00:00 | ラッセルのパラドックス | Comments(0)

素朴集合論と論理

前回の記事で、素朴集合論による集合の定義では、集合の定義と同時に付随的に自分自身という対象や、冪集合が発生してしまい、そのままでは論理との整合性が保てないということを述べた。そこで、素朴集合論による集合にどのようにすれば論理を整合的に適用できるかを、1階述語論理で考えてみた。

まず、対象の集まりである領域 D を考える。これは素朴集合論の定義による集合であるが、領域 D 自身は対象の集まりには含まれないものとする。これは直感的な集合の定義としても自然な発想だ。次に、この領域 D の部分集合を集めた冪集合 D* を考える。冪集合 D* の要素は、領域 D の部分集合であり、領域 D の要素である対象は含んでいない。つまり、領域 D における対象の名前空間と、冪集合 D* における領域 D の部分集合の名前空間は分けられる。また、領域 D 自身も冪集合 D* の要素である集合 D として表すことができる。領域 D における全ての領域 D の対象の集合のあり方は冪集合 D* の要素によって完結している。

また、領域 D にはさらに、領域 D の対象について述語 P(x) があるものとする。これは領域 D を定義域とし、2値集合 {True, False} を値域とする関数だ。また、述語 P(x) は領域 D の要素の対象全てに定義されているとする。このとき任意の領域 D の対象 a に P(x) を関数適用した P(a) は必ず True または False の値をとるので、P(a) は領域 D における命題になる。また、P(x) は領域 D における述語である。述語 P(x) に論理演算を施してできる複合述語については、すべて、その真理集合が D* の要素の集合演算に対応するので、領域 D の述語 P(x) の集合(集合族)と冪集合 D* は論理演算について同型である。

このモデルは素朴集合論の限定的な構成でしかないが、この構成のもとでは集合に論理学の法則は全て適用され、素朴集合と論理の最も良好な関係を形作ることができる。つまり、論理とは何かという問いに対し、領域 D の冪集合における真理集合の集合演算であると答えることができる。すなわち、論理の本質とは全ての可能性について分類するということだ。論理の確実性とは全ての可能性を尽くしたということに立脚している。

おそらく、素朴集合論と論理学を整合的に適用できるモデルは、このモデルしかないのではないだろうか。ただ、このモデル自身は拡張性に富んでいる。たとえば、領域 D の冪集合 D* の要素を領域 D に取り込んで新しい領域 D' を考えれば、D' の冪集合について論理が適用できる上、集合の集合のようなものも扱うことができるようになる。しかも論理との不整合はおこさない。

素朴集合論の集合の定義の直感的なイメージを活用するために、実用的に上で述べたような領域 D を考えることは可能なような気がする。
# by tnomura9 | 2019-03-31 23:58 | ラッセルのパラドックス | Comments(0)

カントールのパラドックス

素朴集合論のパラドックスとしては、有名なラッセルのパラドックス以外にもカントールのパラドックスがある。「全ての集合の集合」を考えるとパラドックスがおきるというものだ。Wikipediaには次のように説明されている。

「全ての集合を含む集合を考えると、その冪集合はカントールの定理によってより大きな濃度を持つはずだが、一方(冪集合の要素は)もとの集合に含まれるのだから濃度は小さいはずである。」(カッコ内筆者)

集合の内包記法 A = {x | P(x)} からは、「全ての集合の集合」がそれ自身を要素として含んでいてもラッセルのパラドックスのような矛盾は引き起こさないから、このパラドックスは内包公理の問題と言うよりは、集合の冪集合に関連するパラドックスと考えられる。

内包記法で集合を定義すると、その外延の対象の集まりの他にその集合自身という対象が発生するが、同じように、外延記法であれ集合を定義すると、その要素である対象の集まり以外に、冪集合の要素(部分集合)という新しい対象が発生してしまう。冪集合の濃度は常に元の集合より濃度が大きいために、この新しい要素(部分集合)をひっくるめた集合を元の集合の中に閉じ込めることはできない。そのため「全ての集合を含む集合」を考えるとカントールのパラドックスが発生してしまうのだ。

素朴集合論で定義される「対象の集まり」としての集合は、その集合が定義されると同時に、その集合の外部に、その集合自身や冪集合などの新しい対象が発生してしまう。また、この新しい対象を含んだ集合を考えたとしても、必ずその外部に新しい対象が発生してしまう仕組みになっている。

このような新しい対象の発生を副作用として伴う集合の定義は、とくに問題となりそうにない。しかし、集合に論理を適用しようとするととたんにパラドックスが発生してしまう。論理の場合は、全ての対象を含む領域が設定できないと、論理演算ができないからだ。特に、排中律が破られてしまう。詳しい説明はここではしないが、全体集合のないベン図に論理演算に閉じた真理集合を考えることができないことからもその意味がわかるだろう。

全ての集合の集合を考えることができない限り、素朴集合の世界全体に論理を適用することはできない。全ての数学的実体を素朴集合論の上に論理で組み上げようとする試みはこれによって不可能であることがわかる。論理的推論が確実性を持っているのは、それが、暗に全ての起こり得る可能性を検討したことを意味しているからだ。しかし、素朴集合論の定義の力学によって、全ての集合を論理に取り込むことができないことがはっきりしている限り、論理で万物を作り上げるのは不可能なのだ。

# by tnomura9 | 2019-03-28 08:13 | ラッセルのパラドックス | Comments(0)

内包的定義と自己言及

述語 P(x) を充足する対象 x を集めてできる集合を A とすると、

A = {x | P(x)}

である。これは集合 A の内包記法である。ところが、この記法では A 自身も対象の一つであるから A が P(x) を充足するかどうかも考えなくてはならない。すなわち、P(A) が真であれば、A はそれ自身の要素でもあることになる。集合を内包記法で定義する限り、述語 P(x) の自己言及は必ず問題になる。

このあたりの事情をわかりやすくするために上の定義を外延記法で書き直してみる。つまり、P(x) を充足する対象を a0, a1, a2, ... と列記することによって A を外延記法で定義してみると次のようになる。

A = {a0, a1, a2, ... }

A が述語 P(x) を充足していなければ、A は a0, a1, ... の中には含まれていないので集合 A は確定する。問題は A が自分自身の述語 P(x) を充足する場合である。すなわち、P(A) が真になる場合である。これには2つの場合がある。ひとつは、A が a0, a1, a2, ... の一つと一致している場合、たとえば、a1 = A の場合だ。この場合、A は外延記法で

A = {a0, A, a2, ... }

と書くことができる。この場合は特に問題は起きないように見える。ところが、A が a0, a1, a2, ... の中に含まれていない場合もある。たとえば、「犬の集合」はその要素には含まれていない。このような場合に A を外延記法で定義すると、

A = {A, a0, a1, a2, ... }

となるはずだ。ところが、あきらかに {a0, a1, a2, ... } と {A, a0, a1, a2, ... } は異なる集合だ。したがって上の定義は、

A' = {A, a0, a1, a2, ... }

とすべきである。ところが、この新しい集合 A' についても述語 P(x) を充足しているかどうかを考えなければならない。また、A' が A' の要素と一致していない場合さらに新しい集合 A'' を考える必要がある。

A'' = {A', A, a0, a1, a2, ... }

しかしこうしてできた新しい集合 A'' についても述語 P(x) を充足するかどうかの検討が必要になってくる。この操作が無限に行われるときには P(x) を充足する対象全ての集合を内包記法で定義することはできない。

ラッセルの R(x) = ¬ (x ∈ x) という述語はまさにそのような述語だ。考える限りの R(x) を充足する対象 a0, a1, a2, ... を集めて集合 R を作ったとすると、

R = {a0, a1, a2, ... }

となるが、R は a0, a1, a2, ... の中には含まれない。なぜなら a0, a1, a2, ... のなかに R が含まれていたとすると R は自分自身を要素として含む集合となり「自分自身を要素として含まない」という述語を満たさないことになるからだ。したがって R は自分自身を要素としては含まない。しかし、このことが R は述語 R(x) を充足することになる。したがって、R を要素とするような新しい集合 R' を考えないといけない。

R' = {R, a0, a1, a2, ... }

ところが R' もまた R' を要素としては含まないが、それゆえ R(x) を充足する集合となってしまう。このことは R, R', R'', R''', ... と次々に集合が生成され、R(x) を充足する全ての対象からなる集合は作ることができないことがわかる。どんなに R(x) を充足する対象を集めても、その集めるという操作と同時に、それには含まれないが R(x) を充足する新しい対象が発生するからだ。これが、ラッセルのパラドックスが発生する原因だ。

ものの集まりを集合という対象として定義するときに、それらの対象とは別に新しい集合という対象が発生する。これが、素朴集合論に内包公理を適用するときの矛盾の原因となっている。

ところで、ラッセルの述語では集合が定義できないのは明らかだが、内包記法で定義をした集合がその要素でもあるときは内包的定義で集合が定義できるような気がする。すなわち、

A = { a0, A, a2, ... }

という集合は定義できるような気がする。しかし、「x は集合である」という述語で定義できる「全ての集合の集合」は至文自身を要素として含むと考えても不都合はないように思われる。しかし、この集合はカントールのパラドックスを発生させてしまう。これは、上に述べた内包記法の問題からは解決できないので、「集合とはものの集まりである」という集合の定義によって集合という新しい対象が発生するという現象とは別の理由があるようだ。



# by tnomura9 | 2019-03-27 03:14 | ラッセルのパラドックス | Comments(0)

集合と記号論

素朴集合論における集合の定義では「集合とは対象のあつまり」である。この定義からは対象 a1, a2, ... an の集まり {a1, a2, ... , an} とその集まりを表す集合 A が定義される。つまり、集合の定義は物の集まりである {a1, a2, ... , an} とそれを表す集合 A との2層構造になっている。

この2層構造は明らかにソシュールの記号論のシーニュ(記号)に対応している。この2層構造全体は集合を表す記号(シーニュ)であり、集合 A はシーニュにおけるシニフィアン(記号表現)であり、対象の集まり {a1, a2, ... , an} はシニフィエ(記号内容)である。このシニフィアンとシニフィエは不可分に結びついてシーニュを形成している。

記号の場合、記号表現は記号内容とは別の対象である。「雪」という単語(記号表現)は、自然界で空から降ってくる雪という記号内容を指し示しているが、雪そのものではない。しかし、この両者は不可分に関係していて、「雪」という単語だけでそれが指し示す内容がないのも、空から降ってくる白いものに名前がないというのも、記号の観点からはおかしなことになる。

「集合とは対象のあつまり」という集合の定義は、それがまさに集合が記号として取り扱われることを示している。すなわち、集合と言う「記号表現」と物の集まりという「記号内容」が不可分に結びついているということである。集合の外延的記法は、

A = {a1, a2, ... , an}

である。この定義では集合 A と対象の集まりの関係は不可分であるが恣意的なものである。A が B に変わったとしても論理的に問題は起きない。それでは、集合の内包的記法ではどうだろうか。

A = {x | P(x) }

この場合述語 P(x) を充足する対象 x を集めたものが集合 A になるのだが、内包的定義では暗黙にすべての対象に対し P(x) を充足するかどうかを試すことが要求される。全ての対象を考えるとすると集合 A 自身も対象であるから P(A) を考えなくてはならなくなる。

このような述語 P(x) の自己言及がラッセルのパラドックスを引き起こしてしまう。しかし、集合を対象の集まりとして定義するとき、その記号としての性質から、記号表現としての集合それ自身が記号内容である対象の集まりと不可分に結びついている。したがって、内包的定義では述語の自己言及が必須となる。ラッセルの集合にかかわらずすべての集合には自己言及が発生してしまうのだ。

このような問題は述語 P(x) を適用させるべき全ての対象範囲があいまいなため起きる。対象を領域 D に限ると、集合の内包的定義は、

A = { x ∈ D | P(x) }

となるので、集合 A への自己言及 P(A) は起こらない。また、仮に A ∈ D のように A が領域 D の要素であって、P(A) が意味を持っていたとしても、{x ∈ D | P(x) } は領域 D の部分集合のどれかであるので矛盾は発生しない。

ラッセルのパラドックスの不可解な内包公理の振る舞いは、述語を適用できる対象の範囲は何かということがあいまいなためにおきる現象であるとも言える。

# by tnomura9 | 2019-03-19 21:07 | ラッセルのパラドックス | Comments(0)

公理的集合論のモデル

前回素朴集合論の2種類のモデルについて述べたが、ついでに公理的集合論のモデルについて述べてみる。公理的集合論の公理からどんな集合が発生するかということだ。

まず、空集合の公理から {} は集合である。次に、対の公理から {{}, {}} は集合である。また外延性の公理から {{}, {}} = {{}} である。さらに対の公理から、{{{}}, {{}}} は集合である。これに外延性の公理を適用すると、{{{}}} は集合である。したがって、{}, {{}}, {{{}}}, ... は集合である。これで、空集合に玉ねぎの皮をかぶせていったものは全て集合であることが分かる。

対の公理から {{}, {{}}} は集合である。また、{{{}}, {{{}}}} は集合である。さらに対の公理から {{{}, {{}}}, {{{}}, {{{}}}}} は集合である。これに和集合の公理を適用すると、{{}, {{}}, {{{}}}} は集合である。このことから、任意の集合を集めた {{}, {{}}, {{{}}}, ... } は集合であることが分かる。ただし、ここまでの公理の適用で生成される集合は有限集合である。

無限公理から {{}, {{}}, {{}, {{}}}, {{{}}, {{{}}}}, ... } は集合である。すなわち、無限の要素を含む集合が存在する。

これで、無限の要素、任意の有限要素の集合、無限要素の集合が公理から演繹された。

面倒くさくなったのでこれでやめるが、要するに公理的集合論の公理から演繹される集合の世界は {{}, {{}}, {{{}}}} のような玉ねぎの皮だけでできた世界なのだ。玉ねぎの皮だけだけれど公理から外れた集合はひとつもない。また、その中には、無限の要素や、有限要素の集合や、無限集合が多数含まれており、それぞれに勝手に 0, 1, 2, 3, ... などの自然数や、{1, 2, 3} などの集合を割り振って普通の数学の世界を構築することができる。

何が集合かというと、公理から演繹されるものだけが、集合なのである。公理的集合論で厳密化された集合とはこのような集合をいう。現実の数学理論は、この公理的集合論の構造を利用して構築することになる。

素朴集合論では定義できなかった厳密な集合とは、このような玉ねぎの皮のことだったのだ。

# by tnomura9 | 2019-03-12 18:29 | ラッセルのパラドックス | Comments(0)