《 Part3 》
―― 目 次 ――
§ 3−1 § 3−2 § 3−3
§ 3−4 § 3−5 § 3−6
《 付 録 》
以上は、検索用の目次です。ワープロ等で検索できます。
以下は、本文です。
---------------------------------------------------------------------
§ 3−0
すでに《 Part2》で、区体論は厳密な数学的表現を得た。これは「仮表示形の区体論」と呼ばれる。
《 Part3》では、区体論は、《 Part2》とは別の形で示される。これは「正表示形の区体論」と呼ばれる。
仮表示形の区体論と、正表示形の区体論は、本質的には同じものであるが、数学的な表現形態が異なる。仮表示形の区体論は、すでに《 Part2》で示したように、述語論理によって表現される。一方、正表示形の区体論は、述語論理の束縛記号を用いず、自由変項だけを用いて表示する。
では、なぜ、このようなことをするのか? 本質的に同じものならば、わざわざ異なった表現形態を取らなくてもいいのではないか? ――そう思う人も多いだろう。実際、実用的な観点からいえば、両者は全く同じなので、わざわざ別の表現形態を取る必要はない。しかし、純粋な数学的な観点からいえば、自由変項だけで表現するということには、大きな意味がある。それによって、理論がいっそう確実で強固で美しくなるからである。細かな疑問もすべて氷解する。
とはいえ、このようなことは、実用的にはあまり違いをもたらさないので、以下で示す正表示形の区体論を、一般の人は、読まなくともよい。(専門家は別として。)
ただし、以下に示すことが難解だというわけではない。正表示形の区体論は、仮表示形の区体論よりも、むしろ、簡単なのである。もし既成概念をもたないような人が、初めて両者に触れるならば、仮表示形の区体論よりも、正表示形の区体論の方を、よりよく理解できるだろう。
しかしながら、多くの人々の頭には、既成概念がある。たとえば ∀ や ∃ という記号を、当然視したりする。そうした既成概念に染まっている人々には、以下のことは、わかりにくいかもしれない。つまり、以下に記すことは、理論としては簡単ではあっても、素直に頭に入りやすいとは言いにくい。
そうしたことを理解した上で、もし興味を持てば、以下に示す正表示形の区体論を読んでほしい。
§ 3−1
正表示の区体論を示す前に、まず、その考え方をざっと示しておこう。
正表示形の区体論では、全くの白紙から考えを始める。何一つ前提とはしない。集合論が前提とするような、命題論理や述語論理も前提としない。
そのうえで、確実なものとして、「定義」を取り入れる。
定義とは、つまり、ある記号列を、別の記号列と同等と見なすことだ。たとえば、次の式では、左辺が右辺で定義されている。( ≡ は定義の記号。)
λ(x)≡x+1
ここで、留意せよ。定義とは、記号の置き換えにすぎないのである。上の式において、左辺と右辺が数学的に同じ価値をもつということは、あくまでも意味の世界の話である。定義とは、左辺と右辺にある二つの記号列が、記号として同じであることを示すにすぎない。つまり、別の式のなかに λ(x) という記号列が現れたら、それを x+1 という記号列に置き換えてよい、ということを示すにすぎない。単なる記号上の操作法を示しているだけのことだ。
以上は、もちろん、誰でも知っていることだ。いちいち言うまでもないことだろう。
ところで、定義においては、一般に、新しい記号が登場する。たとえば、
λ(x)≡x+1
という定義では、新しい記号 λ が現れている。ここでは、左辺の新しい記号を、右辺によって定義しているわけだ。
このような定義、つまり、左辺を右辺によって規定するような定義を、「陽形式の定義」と呼ぶことにしよう。
一方、もう一つ、別の形の定義も考えられる。これを「陰形式の定義」と呼ぶことにしよう。
「陽形式」「陰形式」という言葉は、「陽関数」「陰関数」という言葉に由来する。
陽関数とは、次のように表される y のことだ。ここでは y が右辺の記号列で置き換え可能である。
y=Ax+b
一方、陰関数とは、次のように表される Y のことだ。ここでは Y が別の記号列に置き換え可能ではなく、単に一定の式を満たすような Y として定まるだけにすぎない。
[Y]!+Y+ tan X=0
以上のように、関数には、陽関数と陰関数がある。それと同様のことが、定義の場合においても考えられる。
陽形式の定義とは、つまり、通常の定義である。そこでは左辺の新しい記号が、右辺の記号列で置き換えられる。
一方、陰形式の定義とは、定義すべき新しい記号が、式のなかに埋め込まれているような形の定義のことである。陽形式の定義と違って、その新しい記号を、別の記号列にただちに置き換えることはできない。
実際に例を挙げよう。
i =√(−1) ……(1)
画面では根号をうまく表せていないが、これは虚数の定義である。この定義は、陽形式の定義である。左辺は右辺に置き換え可能である。
さて、一方、次のような式もある。
i ×i =−1 ……(2)
ここでは i は、別の記号列に置き換え可能ではない。(2)という式を満たすような i としてのみ、定まっている。 i とは何かは具体的にわかる必要はなく、ただ(2)という条件を満たすことさえわかっていればよい。このようにして、新たな記号 i が定まる。
以上に示したように、定義には、「陽形式の定義」と「陰形式の定義」の二種類がある。この二種類の定義を、区体論は前提とする。そして、それ以外の一切を前提としない。
このような考え方を、「定義主義」と呼ぶことにしよう。区体論は、定義主義の上に成立する理論体系である。
定義主義では、公理は陰形式の定義として現れる。つまり、公理とは、真なることが自明とされた命題ではなく、真偽を不問にしたまま仮定された命題でもなく、単に、新たな記号を規定する条件にすぎない。
だから、公理とは、絶対的なものではなくて、代替可能なものである。ある公理を選べば、その公理によって定まる記号からなる空間が規定される。別の公理を選べば、その公理によって定まる記号からなる別の空間が規定される。公理の組み合わせごとに別々の空間が規定される。
公理次第でいくらでも別々の空間が規定される、という点は、ちょうど、ユークリッド空間の公理や、群の公理の場合と同様である。たとえば、平行線公理を否定すれば、非ユークリッド空間が得られる。
ともあれ、区体論は、定義主義という考え方を取っている。そのことをよく覚えていてほしい。
[付記]なお、以上のことは、「正表示形の区体論」の場合の話である。「仮表示形の区体論」の場合は、そうではない。仮表示形の区体論は、もちろん、集合論と同様の考え方を取っている。
§ 3−2
区体論は、定義主義を取る。そこで、この考え方にともなって、定義というものを、少し拡張してみよう。
一般に、陽形式の定義では、
≡
という記号によって、左辺が定義される。たとえば、
λ(x)≡x+1
という式がそうである。
さて、区体論では、この ≡ という記号を、新しい記号を定義する場合に用いるだけでなく、他の場合にも用いる。すなわち、等号と対比させつつ、等号に類するものとして用いる。(なお、等号とは = という記号である。)
集合論の世界では ≡ という記号も = という記号も、ほとんど同じ意味を持った。両者を区別する必要は、ほとんどなかった。区体論では、そうではない。この二つの記号は、意味が異なる。
区体論における等号は、すでに《 Part2》で述べた通りである。すなわち、
A=B
という式は、
A⊂B ∧ B⊂A
という式によって、定義された。一方、
A≡B
という式の示すことは、もっと強い。ここで今、両者を比べると、
A≡B ⇒ A=B ……(1)
は成立するが、
A=B ⇒ A≡B ……(2)
は成立すると言えない。このことは、理解しにくいかもしれないが、とはいえ、論理的にそのようになることは、明らかだろう。(1)はほとんど自明だし、(2)が必ずしも成立しないことは一応理解できるだろう。
さて、こうして ≡ という記号を = という記号と対比した上で、区体論では、「準関数」というものを導入する。
まず、関数とは、次のような λ(x) のことだ。
x=y ⇒ λ(x)=λ(y)
一方、準関数とは、次のような ψ(x) のことだ。
x≡y ⇒ ψ(x)=ψ(y)
準関数と関数とでは、式の左辺の ≡ と = の部分が異なることに、注意せよ。
さて、準関数とは、何か? いったい、どのような性質をもつのか? そのことについては、あとで示すことにする。とはいえ、準関数の概念が、関数の概念と同様に、きわめてシンプルであることは、すぐにわかるだろう。
では、この準関数という概念を用いると、どうなるか? 理論全体を、単純に構成できるようになるのだ。 ∀ や ∃ などの束縛記号を、天下り的に受け入れる必要はなくなるのだ。これらの記号は、集合論では、無定義語として、意味はあいまいにしたまま用いた。(§2−3[1]を参照。)区体論では、そうではない。区体論では、準関数という概念を用いるが、そうすると、 ∀ や ∃ などの束縛記号は、厳密に定義される。このような効果が、準関数という概念にはあるのだ。
では、以下では、理論体系を示すこととしよう。
§ 3−3
初めに、区体論と論理学の関係について、述べよう。そこでまず、集合論の場合を見てみる。
集合論の場合、集合論と論理学の関係は、次のようになっている。
( 命題論理 + 述語論理 ) → 集合論
すなわち、命題論理と述語論理の上に、集合論が成立している。
一方、区体論と論理学の関係は、次のようになっている。
命題論理 → 区体論
すなわち、命題論理の上に直接、区体論が成立する。述語論理を必要としない。換言すれば、 ∀ や ∃ などの束縛記号を用いない。
このように、区体論は、述語論理を用いず、命題論理だけを用いる。
さて、先に§3−1では、こう述べた。区体論は一切を前提としない、と。ただしそのことは、命題論理を使わないということではない。区体論は、たしかに、一切を前提としないところから始まるが、ただし、無からいきなり区体論に行き着くのではない。まず、真偽表に手をつける。
真偽表とは、つまり、真と偽の関係を定めたものである。これは、次のような表で表される。
――――――――――
| 1∨1 | 1 |
| 1∨0 | 1 |
| 0∨1 | 1 |
| 0∨0 | 0 |
――――――――――
(注。インターネットでは表をうまく表示できないのだが、
切れている縦線はつながっているものとして見てみてほしい。)
(注。なお、1と0は、真と偽とを表す)
この表は、 ∨ という記号に関する、真と偽の表である。これと同じ内容を、次のように、定義の形で書くこともできる。
1∨1≡1
1∨0≡1
0∨1≡1
0∨0≡0
区体論では、このように、真偽表を、定義の形で表す。 ∨ という新しい記号についての定義のほか、 ∧ ,⇒ という新しい記号の定義の場合も、同様である。
(注。なお、 ∧ ,⇒ という記号の場合は、四つの式を使う代わりに、
次のような式を用いて、 ∨ という既知の記号から導くこともある。
A∧B ≡ ¬(¬A∨¬B)
A⇒B ≡ ¬A∨B
このように定義した場合は、式の数を減らせるが、本質的には、
四つの式で定義するのと同じである。)
さて、このように、真偽表の代わりに定義を用いるような体系を、「区体論的な命題論理」と呼ぶことにしよう。
区体論的な命題論理は、従来の命題論理と、本質的には全く同じである。書き方が少々異なるだけにすぎない。
だから、区体論の前提となるべき区体論的な命題論理を、本来は、ここに記すべきなのだが、省略する。いちいち詳しく説明しても、無駄でしかないからだ。専門家にとっては、知っていることの繰り返しでしかあるまい。また、一般の人も、命題論理についてのさまざまな結論を知らなくとも、差し支えはない。命題論理とは、そもそも、誰でもすぐにわかるような結論しか言わないからだ。たとえば、「真ならば、真である」とか「偽でないならば、真である」というような。こうしたことは、いちいち命題論理を使わなくてもすぐにわかるし、それで厳密さが損なわれるわけでもない。だから、この点は、気にする必要はない。
ともあれ、命題論理(つまり真偽値の関係)の上に、区体論は成立するわけだ。
では、いよいよ、正表示形の区体論を示すこととしよう。
――――――――――――――――――――――――――――――――――
区体論 (正表示形)
[前提]
命題論理を前提とする。そして命題論理の次のような記号を用いる。
¬ ∧ ∨ ⇒ ⇔ ≡
否定 かつ または ならば 同値 定義
〈注〉左側の記号ほど、結びつきが強いものとする。
[無定義語]
無定義語として、次の二つの記号を用いる。
⊂ Ω
〈注〉この二つの無定義語の意味は、以下の公理系によって定まる。これ
も広い意味での、陰形式の定義である。
[定義1]
⊂ とΩ という二つの記号を使って、次のような式を書くことができる。
B⊂Ω
このような式の成立するような B を「区体」と呼ぶ。
[注]以下で、B,C,D などのアルファベットで示されるものはすべて、
区体であるとする。たとえば B については、
B⊂Ω
が成立するものとする。 C,D などについても、同様である。以下で
は、いちいち断らないので、注意せよ。
[注]なお、以下において、 B,C,D などの記号で表される区体は、特
に断りのない限り、いずれも自由変項であるものとする。(つまり、そ
こに任意の値を代入してよい。)
[公理1]
B⊂B
(注。念のために言うと、この B は自由変項である。つまり、任意の
B に対し、この式が成立する。以下の公理2以降でも、同様だ。)
[公理2]
B⊂C ∧ C⊂D ⇒ B⊂D
[公理3]
φ ⊂X
(注。ここに現れた φ という記号は、新しい記号である。この新しい記
号が、公理3によって規定される。この φ は、自由変項ではないの
で、注意せよ。一方、 X は自由変項である。なお、公理3は陰形式
の定義である。)
[公理4]
Ω⊂Ω
(注。この Ω は、既知の記号である。公理4では、新しい記号は現れな
い。)
[定義2]
B=C ≡ B⊂C ∧ C⊂B
(注。この新しい記号 = を「等号」と呼ぶ。定義2は、陽形式の定義であ
る。)
[定義3]
B≠C ≡ ¬(B=C)
[定義4]
x=y ⇒ λ(x)=λ(y)
となるような λ(x) を「関数」と呼ぶ。換言すれば、 λ(x) が関数であるとは、上の式が成立することである。ここで x,y は自由変項である。
[公理5]
X⊂B∩C ⇔ X⊂B ∧ X⊂C
(注。ここでは、新しい記号 ∩ が現れている。この記号の意味を公理5
は規定している。 ∩ という新しい記号とともに書かれた B∩C は、
BとCの関数であることに注意せよ。すなわち B∩C を λ(B,C)
と書くことができる。ここで、 X,B,C は、いずれも自由変項であ
る。)
[公理6]
B∪C⊂X ⇔ B⊂X ∧ C⊂X
(注。ここでは、新たな記号 ∪ が現れている。この B∪C は B と
C の関数である。公理6は公理5と対照的な形をもつことに注意せ
よ。)
[公理7]
B⊂D ⇒ B∪B^=D ∧ B∩B^=φ
(注。ここでは B^ という書き方をする新たな記号 ^ が現れている。こ
の記号の意味を、公理7は規定している。 B^ は B と D の関数で
あることに注意せよ。)
[定義5]
a@A ≡ [ a⊂A ]∧[ a≠φ ]∧
[ X⊂a ⇒ X=φ ∨ X=a ]
(注。これは陽形式の定義である。@という新しい記号の意味を、定義5
は規定している。ここで a ,A ,X はいずれも自由変項であるこ
とに注意せよ。)
(注。なお、この定義は、 a が A のアトムであることを示している。
その具体的な意味については、《 Part2》を見よ。)
さて、次に公理8を示す。ただしその前に、思い出すべきことがある。
今までは、新たな記号は、関数として現れた。しかし公理8では、そう簡単には行かない。公理8を示すには、先に述べた「準関数」を用いなければならない。
公理8は、次の形で示される。
[公理8]
A≠φ ⇒ α(A)@A
ここで α(A) は準関数。
(注。 α は新しい記号である。この α という新しい記号の意味を、
公理8は規定している。なお A は自由変項である。)
上の公理8の式を見てほしい。「左辺 ⇒ 右辺」は、もちろん、公理8によって成立する。一方、「右辺 ⇒ 左辺」も成立する。それは @ という式の定義によって明らかである。というわけで、結局、「左辺 ⇔ 右辺」が成立するわけだ。つまり、次の式を、定理として得ることができる。
A≠φ ⇔ α(A)@A
さて、 α(A) は準関数である。では、準関数であるとは、いったいどういうことか? すでに §3−2で記したことを、再び記せば、こうなる。すなわち、 α(A) が準関数であるとは、次のことを意味する。
「 A≡B ⇒ α(A)=α(B) ……(1)
は成立するが、
A=B ⇒ α(A)=α(B) ……(2)
が成立するとは言えない。」
ここで(2)が成立すると言えないことから、 α(A) は変数 A に対して一定の値を取るわけではないとわかる。 A=B であれば、区体論の世界では、AとBは同じであると見なされるが、しかし、同じAとBに対して、α(A) と α(B) は異なった値を取るのである。つまり、 α(A) は、アトムではあるが、どのアトムであるかは、はっきりと定まらないのである。いわば、固定できず、浮遊しているのである。
しかし、 α(A) は、まったく固定できないわけではない。
A≡B
がもし成立すれば、(1)ゆえに、 α(A) は浮遊することなく、しっかりと固定される。特に、 B を A に一致させてみよ。
A≡A
は、もちろん成立する。だから、単に α(A) と記した場合には、これは一つのアトムとして、しっかり固定されている。しかしながら、 A=B となる B を代入して得た α(B) は、 α(A) とは別のアトムとなることもあるのである。
要するに、こういうことだ。 α(A) が何であるかは、区体論の世界では、定まらない。その意味で、区体論の世界では、 α(A) は「見えない」。しかし、区体論の世界の外から眺めれば、それは固定されうる。
換言すれば、 α(A) とは、「見えないけれども存在する」といった性質を持つようなものだ。そして、「存在する」という言葉は、区体論においては、この α(A) という準関数によって規定される。
以下では、そのことについて、詳しく示す。
§ 3−5
「存在する」という言葉は、集合論では、どのように規定されているだろうか?
集合論というよりも、その前提となる述語論理において、「存在する」という言葉は、 ∃ という記号によって規定される。この記号は無定義語である。この記号のあとで、 ∀ という記号は、
(∀X) ≡ ¬(∃X)¬
によって定義される。
(注)逆に、 ∀ という記号を無定義語として、 ∃ という記号を、
(∃X) ≡ ¬(∀X)¬
によって定義することもできる。が、いずれにせよ、実質的には同じ
ことである。
さて、以上のようなやり方では、もちろん ∃ や ∀ という無定義語の意味は、はっきりとはしない。集合論の体系のなかで、他の記号と一緒に使われながら、漠然と理解されるのみである。 ∃ が「存在する」を意味し、 ∀ が「任意の」を意味するとしても、それは、人々の勝手な解釈にすぎない。述語論理という体系自体は、 ∃ という記号を無定義語として扱うだけであり、どのような定義も与えていない。
さて、区体論では、「存在する」という言葉は、何を意味するか? それを言おう。 ∃ という新しい記号は、次の式によって定義されるのだ。
(∃a)a@A ≡ A≠φ
ここで、先に示した定理を、再掲しよう。
A≠φ ⇔ α(A)@A
上の二つの式から、ただちに、次の式が得られる。
(∃a)a@A ⇔α(A)@A ……(*)
要するに、 ∃ という記号の意味は、準関数の意味と、実質的にはほとんど等しい。
ともあれ、このようにして、 ∃ という記号について、厳密な定義が得られたわけだ。
このあと、集合論の場合と同様に、次の式によって、 ∀ という記号を定義してもよい。
[定義6] (∀X) ≡ ¬(∃X)¬
ただし、注意せよ。上の (*)において、 ∃ という記号の次に来る a は、アトムである。そして、もし a がアトムでなければ、
(∃a) a@A
という式は意味をなさないのだ。
例を上げてみよう。 φ という区体を考える。この φ については、公理3により、
φ ⊂A
という式は常に成立する。しかし、
φ @A
という式は成立しない。なぜなら、φ はアトムではないからだ。ゆえに、
(∃φ ) φ @A
という式は意味をもたないのだ。
§ 3−6
すでに、正表示形の区体論の公理系を得た。また、 ∃ や ∀ という記号についても、厳密な定義を得た。
そこで、次に考えるべきは、定理である。仮表示形の区体論で示された定理は、正表示形の区体論では、どうなるだろうか?
ここで、仮表示形の区体論の公理と、正表示形の区体論の公理とを、比較してみよう。すると、次のことがわかる。
仮表示形の公理において (∀B) や (∀X) などの全称記号で示された箇所は、正表示形の区体論では、自由変項としての B や X などで示される。また、 (∃R) などの存在記号で示された箇所は、そのたびに新しい記号によって示される。たとえば、公理3,5,6,7においては、それは新しい記号を用いる新しい関数として示され、公理8においては、それは新しい記号を用いる新しい準関数として示される。
この点に留意して、以下、全称記号の箇所や存在記号の箇所を、次々と置き換えていけば、正表示形の区体論の定理は、仮表示形の区体論の定理と同様にして、証明されていく。
このやり方は、仮表示形の区体論の定理の、ほとんどの定理についてあてはまる。
ただし、定理57については、あてはまらない。この定理では、別のやり方を取る必要がある。
では、どんなやり方を? 実は、そこまで話を進めると、話がどんどん深まって、専門的になりすぎる。
というわけで、今はひとまず、話を打ち切ることとする。もっと詳しいことを知りたければ、後日、このホームぺージがバージョンアップするときまで、待ってほしい。それまでは、自分の頭でよく考えてほしい。こうしたことに興味のあるような数学的知性の持ち主であれば、自分で考えることもできるだろう。
(なお、筆者あてに電子メールを送ってもよいが、原則として、こちらからは返事は出さない。)
なお、人工知能のプログラミングに興味のある人は、以下の付録を読むとよい。
《 付 録 》
区体論を使うと、超高速推論マシンを作ることができる。そのあらましを、以下に示そう。
区体論(《 Part3》において示された正表示形の区体論)の公理系は、自由変項だけからなり、束縛変項をもたない。
だから、この自由変項の部分に、適当な値を次々に入れていけば、自動的に論理式が証明される。
例を挙げよう。(以下で、 X,Y,Z は、命題ではなく、区体である。)
[定理31] X=Y ∧ Y=Z ⇒ X=Z
この定理を証明するには、既知の公理や定理や定義の、自由変項の箇所に、適当な値を次々としらみつぶしに代入すればいい。
まず、等号の定義を示す式に、 X,Y,Z を代入することで、次の式が得られる。
X⊂Y ……(1)
Y⊂X ……(2)
Y⊂Z ……(3)
Z⊂Y ……(4)
また、同様にして、求めるべき式の別の形は、
X⊂Z ∧ Z⊂X ……(5)
である。そこで、式(1)(2)(3)(4)に、各公理を次々と適用していく。すると、公理(2)において、自由変項の部分に X,Y,Z をうまく入れた場合に、
X⊂Z
Z⊂X
という二式が得られる。これは(5)そのものである。ゆえに、定理31は証明された。
以上では、既知の式の自由変項の部分に、適当な値を次々としらみつぶしで入れていく、という操作を施した。
このような操作は、将棋ソフトなどではしばしば用いられる。もちろん、ごく基本的で簡単なプログラムである。
そして、このようなプログラムを実行するだけで、複雑な定理も次々と証明されていくのだ。高価なマシンは必要ない。速度さえ気にしなければ、16ビットのマシンでも構わない。
このマシンは、一般に、LISPやPROLOGなどのプログラミング言語を載せた超高級マシンよりも、はるかに優秀である。
第一に、処理構造が簡単である。LISPやPROLOGなどがその基礎とする述語論理は、あまりに複雑すぎる。それに対し、区体論は、ごく簡単な式を用いるだけで、同等の結論を引き出せる。
第二に、述語論理というのは、それ自体が不完全な理論なのである。述語論理で扱えるのは、個物だけである。英和辞書の言葉で言えば、可算名詞で示されるものだけである。しかし世の中には、不可算名詞で示されるものもたくさんある。それらについては、述語論理は何も言えない。一方、区体論は、「それらは公理8が適用されない種類のものだ」として、扱うことができる。だから区体論を用いたマシンは、日常言語に現れるものを正しく扱うことができる。水、空気、愛などの、個物とならないものを。通常の述語論理では扱えないようなものを。
要するに、区体論を用いれば、既存のコンピュータに比べ、はるかに高速かつ強力なコンピュータを、簡単に作ることができるのだ。
( ※ この「コンピュータ」とは、ハードだけでなくソフトを含むシステムのこと。)
【 追記 】 (2005-09)
この文書には、記述に厳密さを欠くところがある。間違いというわけではないのだが、いくらか曖昧さがあり、それが難点となる。この曖昧さをなくし、厳密な記述をしたのは、この文書のあとで発表された別文書による。詳しくは、そちらを参照。
→ 発展編
【 ホームページ 終了 】
《 表紙 》