カルクレムス:推論を計算するという考え
私たちの推論を正す唯一の方法は、それを数学者の推論のように手でつかめるものにして、誤りが一目でわかるようにすることである。そして人々の間で論争が起きたときには、ただこう言えばよい。計算しよう! と。そうすれば、それ以上の手間なしに、どちらが正しいかがわかる。
— ライプニッツ『発見の技法』(1685)
ライプニッツは法律家であり、外交官であり、哲学者でした。宗教の間、国の間、哲学の学派の間で、決して終わらない議論を一生見てきました。一方、数学者は $2+2$ が 4 かどうかで議論しません。計算するだけです。もし推論も、数のように計算できたら?
思考のアルファベット
計画は二つの部分からなっていました。
一つ目は普遍言語で、ライプニッツはそれを characteristica universalis(普遍記号法)と呼びました。そこでは単純な観念がそれぞれ記号をもち、複雑な観念は、単語が文字の組み合わせであるように、それらの記号の組み合わせになります。ライプニッツはこれを 20 歳のとき、1666 年の『結合法論』で考え始めていました。
二つ目は推論計算、calculus ratiocinator です。記号を操作して、足し算をするように機械的に正しい結論を導くための規則です。そんな世界では、議論は紙と鉛筆で決着がつくでしょう。
素数としての概念
ライプニッツは実際に、数を使った方式を試しました。考え方はこうです。単純な概念それぞれに素数を割り当て、複合的な概念には、その部分の素数の積を割り当てる。
たとえば古典的な定義では「人間は理性的な動物である」。動物 $=2$、理性的 $=3$ とすれば、人間 $=2\times3=6$ です。
すると「すべての人間は動物である」という文は算術の問題になります。2 は 6 を割り切るか? 割り切るので、この文は真。では「すべての動物は人間である」は? 6 は 2 を割り切るか? 割り切らないので偽。概念についての推論が、割り算の問題になったのです。
この方式には深刻な問題がありました。否定や「ある〜は」という文をうまく扱えなかったのです。ライプニッツはそれを知っていて、別の形も試し続けました。しかし中心となる考え、論理は代数になりうるという考えは、すでに打ち出されていました。
今日の記号での例
今日、私たちは論理記号で推論を書きます。ある図形についての三つの命題を考えましょう。
- $P$:その図形は正方形である。
- $Q$:その図形は長方形である。
- $R$:その図形の対角線は同じ長さである。
$P\Rightarrow Q$(すべての正方形は長方形)かつ $Q\Rightarrow R$(すべての長方形の対角線は等しい)なら、$P\Rightarrow R$。結論は議論の形から出てくるので、正方形について考える必要はありません。これこそライプニッツが望んだことです。記号だけを見て推論を確かめること。
しかし記号は奇跡を起こしません。前提がまちがっていれば、計算がどれほど正しくても結論はまちがいうるのです。また、含意を逆にするのはよくある誤りです。「すべての正方形は長方形である」から、すべての長方形が正方形であることは出てきません。
組み合わせることと解釈すること
三つの命題がそれぞれ真か偽なら、組み合わせは $2^3=8$ 通り。000、001、010、011、100、101、110、111。これは 0 から 7 までの二進法表記です。ライプニッツが感じとっていた論理と 0・1 の数との結びつきは、2 世紀後に中心的なものになります。
一部が実現した夢
ライプニッツの論理学の著作は、19 世紀までほとんどすべて未発表のままでした。それでも、この考えは戻ってきました。
- 1854 年、ジョージ・ブールは『思考の法則』を出版し、論理を 0 と 1 の代数に変えた。
- 1879 年、ゴットロープ・フレーゲは論理のための完全な記号言語を作った。それはライプニッツが思い描いたものにとても近かった。
- 1936 年、アラン・チューリングは、規則で記述されたどんな計算でも実行できる抽象的な機械を描いた。
しかし 1931 年、クルト・ゲーデルは、どんな規則の体系も数学のすべての真理を決定することはできないことを証明しました。ライプニッツの夢の全体は不可能なのです。それでも、その可能な部分はすべてのコンピュータの中にあります。規則に従って記号を操作する機械です。
練習:P ⇒ Q から Q ⇒ P を結論できるか?
できません。すべての正方形は長方形ですが、すべての長方形が正方形なわけではありません。含意の逆には、それ自身の証明が必要です。
練習:素数方式で「動物」= 2、「理性的」= 3、「死すべき」= 5 とする。「死すべき人間」はどの数で表されるか? それは「動物」か?
「死すべき人間」$=2\cdot3\cdot5=30$。2 は 30 を割り切るので、「すべての死すべき人間は動物である」はこの方式で真です。