命題論理の公理系の構造


『現代論理学』(安井邦夫・著、世界思想社)という本に、LPと名付けられた命題論理の公理系が紹介されている。この公理系は、3つの公理と1つの推論規則から構成されている。とてもシンプルなものである。論理記号としては「否定」と仮言命題を示す「ならば」に当たる2つだけが使われている。これは、「かつ」と「または」を表す論理記号は、この二つによって表現できるので、その構成を出来る限りシンプルにするという目的の下に、この2つに限って使われている。「否定」を「〜」で、「ならば」を「→」で表現して、3つの公理を表現すれば次のようなものになる。

公理

  • 1 A→(B→A)
  • 2 (A→(B→C))→((A→B)→(A→C))
  • 3 (〜B→〜A)→(A→B)


これらの公理の意味を解釈すれば次のようになる。

  • 1 Aという仮定の下に、Bという仮定を立てれば、そのときにAが成立することが前提とされているので、Bの前提を立てたときもAが成立することが帰結される。つまり、あることが常に成立するということが確かめられているときは、そのことはどんな前提をおこうともやはり成り立つということが言える。
  • 2 Aという仮定の下に「BならばC」という命題が成立するということを前提とする。つまり、Aが成立するときに、Bの成立を確認出来れば、Cという出来事の成立を実際に確かめることなく、論理的にCの成立をいうことが出来るというのが前提になる。この前提があるときに、「AならばB」ということが確認出来ると、Aの成立が前提されているので、ここからBが成立することも帰結される。そうすると、前提ではBが成立すれば必ずCも成立することになっているので、このときAの仮定の下でもCが成立する。つまり「AならばB」という仮言命題も成立する。これを主張するのが2の公理となっている。
  • 3 これは対偶の法則を表している。「Bでない、ならば、Aでない」が成立しているとき、Aの成立を仮定する。そのとき「Bでない」になってしまうと、そこから「Aでない」が帰結してしまうので矛盾となる。そこで、この前提の下では「Bでない」ではない、ということになる。すなわちBが成立するので、「AならばB」という仮言命題の成立が主張できる。

この3つの公理は、その意味をよく考えれば、論理的に正しいものだということが判る。しかしその正しさは自明に分かるものではない。かなり面倒な分析をして、その意味を細かく捉えなければその正しさを確信することが出来ない。

数学史において最初の公理系はユークリッド幾何学と呼ばれるものだが、この公理系では、公理というものは自明だと思われるようなシンプルな命題から構成されていた。つまり、それ以上簡単な言葉で説明が出来ないような、無前提に正しいと認めざるを得ないような、見るからに自明であると感じる命題として提出されていた。これは、論理的な帰結というものが、前提を正しいと認めれば、その結論は絶対的に正しいと認められるものと捉えられていたからではないかと思う。結論としては必ずしも自明には見えないような命題が、自明に正しいと思えるような公理から論理のみによって導かれるからこそ、公理系というものが大きな価値を持っていたと考えられたのだろう。

それに対して、この命題論理の公理系は見るからに自明であるとは思えない。例えば「A→A」というような命題は見るからに自明であると感じる(Aという前提をおけば、その前提の下でAが成立することは、それを前提にしているのだから自明だと思える)のだが、これは公理ではなく、上の公理から導かれる定理として証明されている。

その証明を理解するには、1つの推論規則を知らなければならない。それは前件肯定式と呼ばれる推論でmpと名付けられている。これは意味を考えると論理的にも正しいものと感じられるものだ。次のように表現される。

推論規則
mp AとA→Bが成立しているとき、Bの成立をいうことが出来る。


推論規則はこの1つだけで、上の3つの公理とこの推論規則だけで命題論理における正しい命題を生み出そうというわけだ。そのためには、公理のA,B,Cという記号に対する解釈も次のように理解しなければならない。このA,B,Cに対しては、それを他の命題で置き換えたものもすべて公理として認め、この形式システムにおいては正しいものと認められる。つまり、公理をうまく変形して、推論規則の帰結としてのBが目的の定理になるように出来れば、この形式システムで、その命題が定理として証明できることが示せるわけだ。以上のことを踏まえて、「A→A」がこの形式システムでどのように証明されるかを見てみよう。

  • 1 (A→((A→A)→A)) → ((A→(A→A))→(A→A)) 公理2

*これは、公理2においてBの代わりに(A→A)を、Cの代わりにAを使って置き換えている。最後に(A→A)が登場しているのが見える。これが推論規則の帰結として最後に導かれるような工夫をする。

  • 2 A→((A→A))→A) 公理1

*公理1において、Bの代わりに(A→A)を使うと2が求められる。

  • 3 A→((A→A)) → (A→A) 1、2と推論規則

*1の公理の前件が2の公理と同じ形をしている。そこで1の後件となる3の成立が推論規則から主張できる。

  • 4 A→(A→A) 公理1

*公理1において、BとしてAを使えばこのような形になる。

  • 5 A→A 3,4と推論規則

*4の公理は、3の前件と同じ形をしている。そこで3の後件である5が推論規則より導かれる。これが証明したい目的としての命題だった。

自明だと思える「A→A」を証明するためにこのように入り組んだ面倒な手順を踏むのが、この命題論理の公理系という形式システムになっている。なぜこのような面倒な手順をわざわざ使うのだろうか。それは、この形式システムの計算(命題論理を表す文字列の書き換え)が出来るだけシンプルな構造を持つようにしているからだ。この3つの公理は、これ以上減らすことの出来ない最小限のものになっている。しかも、この3つさえあればすべての正しいと思えるような命題を生成することが出来る。おまけに推論規則も1つだけで足りる。

もしも、人間にとって普通に理解しやすい自然な表現になるように公理をとるような工夫をすると、公理の数はもっと増えるし、推論規則ももっと増やさなければならない。そうすると、その公理系においてそれが本当に必要最小限だろうかということを示すことがかなり難しくなる。これは不思議なことだ。そのシステムの中で、システムの中の定理を考えるための思考を進めるには、考えやすいように公理や推論規則が多い方がいいのに、その公理系そのものの構造を考えるには、公理系の中での考えやすさがかえって構造を対象にした思考では邪魔になる。

これは、形式システムを超えてメタ的な視点でその全体構造を捉えるという思考の難しさを物語っているものだろう。この形式システムでは、個々の定理を証明するのはかなり難しい。どのような公理の書き換えを行えば、1つの推論規則だけでその書き換えがつながっていくかというのを見つけることが難しい。目的の定理が仮言命題の後件になるような工夫をするのだが、どのようにすればそれがうまくいくかという法則のようなものはなく、偶然出来たり出来なかったりするだろう。

しかし、LPと名付けられたこの公理系では、それが必要最小限であるという、完全性や独立性の問題が簡単に証明されている。さらに無矛盾性も証明されている。構造に関する要求はすべて満たしていることが分かる。それは公理の選び方と推論規則の選び方がシンプルなものになっているからだと思われる。形式システムの中での計算の容易さと、それを超えたメタ的視点からの構造のとらえ方においては、それを人間が行うという視点で見たときには、一方に欠点があるにもかかわらず、それがかえってもう一方の長所になるという不思議な現象が見られる。

このLPという形式システムの計算を計算機にやらせることを考えると、これは計算機にとってはかえってこのシステムの方がうまくいくだろう。自然に推論を進めようとするシステムでは、次の推論の方向がたくさんあって、計算機には判断できないようなものがある可能性が生まれる。しかし、この形式システムなら、機械的な手順の繰り返しで定理を探すことが出来る。

公理の書き換えは、A,B,Cにどのような置き換えをするかで無限に多くの結果が出てくるが、命題記号として使える文字は、どんなに多くても自然数で順番づけられる可算個になるので、機械的にすべてを網羅することが出来る。現実にそれが終わることはなく、無限に繰り返すことになるだろうが、理論的にはいつかは「生成できる公理は生成できる」という結論に達する。推論規則に関しても、前件になるものが公理の中に見つかるなら、その結論を定理として出力するようにしておけば、計算は機械的に行えるだろう。このシステムにおいては、機械的な計算によって、証明できる定理はすべて出力できるということが判る。

このシステムは完全性が示せるので、証明できない・定理ではないものは出力しないことが分かる。しかし、完全性というものはシステムそのものには理解できないだろう。そうすると、このシステムは定理でないものについては、いくらやっても出力できないという現象を示すことしかできない。それがどのような意味を持っているかが理解できるのは、システムの内部にいる者ではなく、システムの外部から全体を眺めているメタ的視点を持った者になる。

システムの構造というものは、システム内部にいる者には分からないし、システム内部の思考で分かりやすいことであっても、その思考を延長しただけでは構造を捉えることが難しくなる。システムの構造を捉えるには、構造を捉えるにふさわしいシンプルな骨組みを見つけなければならない。それが現代数学の公理系ということになるだろう。

代数学の公理系は、自然な論理の流れを捉えるための自明な前提というとらえ方ではなく、構造そのものを把握するために便利な、構造をシンプルに表現できるようなものとして選ばれている。それは、必ずしも自明とは呼べないような命題が立てられているので、何か恣意的に勝手に公理を選んでいるように見える。しかしその恣意性は、でたらめに何でもいいから選んでいるという恣意性ではない。むしろ、構造の解析にはこれが最も有効で便利だというものが、かなりの必然性を持って選ばれている。

公理の選び方が自明性を離れてしまったので、その恣意性ばかりが目についてしまうが、恣意的だからといって何でも勝手に選べるのだと受け取ると間違えるだろう。これは、構造をうまく表現している限りでは、その前提の下でどのような公理を選んでもいいということに過ぎない。

この考察からの類推として、経験主義的な思考の展開というものを考えると、それはシステムとしては構造を把握することが難しいのではないかということが考えられる。その経験は、システムの全体をよく反映しているものではなく、システムの一部の特徴が偶然現れたものかもしれない。システムの構造を捉えるには、それにふさわしい公理系が必要だ。だが、この公理系の公理の選び方には恣意性があるので、それが現実のシステムを本当によく反映しているかどうかは常に難しい問題として現れる。公理系のモデル理論の難しさや、構造主義が主張する構造の存在の確認の難しさは、この現実と抽象(公理系)の乖離に深く関わっているのではないだろうか。そんな気がしている。