論理の規則とその正体

 論理の規則についての具体的な説明です。数式を変形し、計算し、答えを出すのと同じように、記号化された言明(論理式、logical formula)を変形し、別の言明を導出する、これが論理的な推論の一般的なプロセスです。「計算する、証明する、推論する、思考する」といった述語はみな同じ事柄を指すと考えることができ、アリストテレスが讃えた理性的動物である人間の「理性的思考」とはつまるところ、コンピューターの計算機能と同じということになります。これは大いに驚くべきことなのです。理性や合理性(rationality)は人間の人間たる所以だと考えられてきましたし、西欧の学問の特徴の一つが合理主義にあったのですが、それは結局のところ計算(computation)がもつ特徴の一つだということに落ち着いたのです。
 「計算」についての具体的な研究は19世紀にイギリスを中心に始まります。ベンやブールという名前を聞いたことがある人が多い筈ですが、いずれも数学者で、推論の代数的な構造を明瞭にしようとしました。代数的な操作は文と文をつなげたり、切り離したりするときの操作で、接続語句がそのカギを握っています。主な接続語句となれば、「…でない」、「…かつ…」、「…あるいは…」、「もし…なら、…である」の四つが代表的なものです。これは異なる自然言語でもほぼ共通のものとなっています。そして、肝心な点は、これら接続語句は真偽(1と0)についての四則演算(加減乗除)と同じ役割を果たしている、ということです。
 アリストテレスは二つの名辞(項、term)がbe動詞(…である)で結ばれている文を4通り挙げて、それを基本文型にして正しい三段論法(二つの基本文型から別の基本文型を導出する)を分類してみせました。そして、これが初めて形式化された論理システムでした。その四つの文型を挙げてみましょう。AとBは共に名辞で、ここに一般名詞を代入すれば、具体的な言明をつくることができます。

(1)全称肯定型:すべてのAはBである。
(2)全称否定型:すべてのAはBでない。
(3)特称肯定型:あるAはBである。
(4)特称否定型:あるAはBでない。

(1)を否定すると、(4)に、(2)を否定すると(3)に、(3)を否定すると、(2)に、(4)を否定すると、(1)になります。これを説明するのが量化の規則です。主語の量について否定記号とどのような関係にあるかの規則が量化の規則です。「すべてのxはFである」を否定すると、「あるxはFでない」になるといった規則で、次のように表現できます。∀は普遍量化記号、∃は存在量化記号と呼ばれます。

∀xF(x) ⇔ ⏋∃x⏋F(x)
∃xF(x) ⇔ ⏋∀x⏋F(x)
⏋∀xF(x) ⇔ ∃x⏋F(x)
⏋∃xF(x) ⇔ ∀x⏋F(x)

例えば、最後の規則は、「Fであるxは存在しない」は「どんなxについてもFでない」と同値である、となります。主語の量的な表現が否定記号と規則的な関係になっているのがわかります。
 四つの基本文型の相互関係を洗い出し、それらを使って正しい三段論法を抽出したのがアリストテレスです。彼はこの正しい三段論法を幾つも組み合わせれば通常の長い推論が再構成できると考えたのです。現代風の言葉遣いをするなら「一項述語だけからなる言語で表現された推論はアリストテレスが考案したシステムで説明できる」ということになります。一般に述語は何項でも構いませんから、これはとても大きな制約ということになります。例えば、「2は5より大きい」は普通は「2 < 5」と表現され、一般的にはF(2,5)という二項の述語です。「関係」と呼ばれるものは、さらに「AはBとCの兄である」のように三項のもの、さらにはn項の関係が一般的な形です。
 こうして、関係を表現するn項の述語はn個の論理的な主語をもった述語ということになりますが、「一つの文の中には主語は一つ」という文法の鉄則が見事に崩れることを意味しています。「論理的な主語」と「文法的な主語」は違っていて、思考、推論するには論理的な主語を信用すべきだということになります。これは、推論に関して自然言語の文法を信用してはダメだという教訓そのものなのです。すると、自然言語を信じてシステムを考えたのがアリストテレスですから、推論の仕組みを知るには言語表現が大切だと眼をつけた点は誠に見事なのですが、残念なことにそれが自然言語ギリシャ語)だったため、彼は一部しか成功させることができなかったのです。
 日本語は英語、フランス語、中国語などと並んで自然言語の一つで、しかも他の言語との系統関係がわからず、世界で孤立した言語と言われています。ですから、かつては「象は鼻が長い」という文の中に「象」と「鼻」の二つの主語があり、文法さえ脆弱だと馬鹿にされたのですが、複数の主語が一つの文の中にないと関係を表現できないことを考えると、一概に日本語の文法はいい加減だなどと結論すべきではないのです。
 少し難しいことを言うと、第1階の述語論理ではゲーデル不完全性定理が成り立っていて、自らのシステムが矛盾していないことを自ら証明することができませんが、アリストテレスのシステムではこれが可能なのです。適用範囲は狭くても、その推論の仕方は完全だということになります。
 ここで主語と述語はどんなものか考えてみましょう。これは論理学の仕事というより、解釈や意味論の問題になります。自然数論や実数論に登場する変数x、yは任意のもので構いません。敢えてそれが何かわからなくても計算はできますし、定理の証明には何の支障もありません。でも、私たちの好奇心は「数とはないか」という問いに誘惑されて、その答えを探したくなるのです。主語は私たちの住む世界の中の物理的な対象で、指で指すことができるもの、というのが大方の人が認めるものです。その結果、心的な対象、概念や意識は排除されます。これを少々エレガントに述べると、論理的な主語は代名詞「これ」、「それ」で指すことが容易にでき、確認できるものということになります。ですから、「日本人は日本語を話す」という文の文法的な主語は「日本人」ですが、言い換えると、「どんなものについても、それが日本人なら、それは日本語を話す」となって、「それ」が主語になります。そしてこの「それ」は変数、変項と呼ばれてきたものなのです。数学でお馴染みの変数とは実は代名詞のことなのです。ですから、「実数という集合の中を動くもの」という、とんでもない表現はこの際捨て去るのがいいでしょう。
 これで記号言語、人工言語の説明は終わりです。この言語によって私たちの世界についての基本的な表現がすべてでき、言明の間の推論、計算を自動化することも可能です。つまり、私たちの外部世界についての知識を表現し、それを使って推論することができるのが信頼できる人工言語なのです。こうして、この言語を使って数学理論、物理学理論を形式化し、それが実験や観測結果と合うかどうかチェックするという研究のアウトラインが描けることになります。
 誰もが受け入れ、拒絶することができない規則が論理規則です。人間として何かを考える際、論理規則を拒絶することは考えることを放棄することと同じことです。私たちは論理の規則を土台にして言語や科学、倫理や宗教の規則をその上に整合的に設けようとします。でも、どの規則も取り換えが可能という点では心底信じることができるという訳にはいかないのです。論理規則は普遍的でも、他の規則は局所的なのです。そこに人間がこの世界について生み出す理論や思想、宗教や倫理の特徴が滲み出ているのです。でも、そこがスリリングで、私たちを惹きつけるのです。私たちはこの規則が駄目なら、別のどんな規則にするか、こんな議論に自由に熱中する経験を誰ももったはずです。

*「計算する」ことの意義
 「計算する(compute)」という述語はほぼ誰もが知っていて、実際に私たちは計算することができます。計算するとは、チューリング・マシーンを使うのであれば、左右に限りなく伸ばすことのできるテープの上の一つのマス目に0か1の数字、あるいは空白をつくる操作を繰り返すことによって遂行されます。計算がこれほど単純な動きの集まりに過ぎないと割り切る人は少なくても、「算術(arithmetic)」は理論というより実用的な技、習得すべき技術だと思われてきました。それに対して、「考える、思考する」、「知る」といった述語は人間の誇るべき本性だと受け取られ、それを強調あるいは象徴するかのように「理性」などという概念がつくられ、人間は理性的な動物だと理解(誤解)されてきました。また、「感じる、感覚する」は感覚器官を働かせる動作として、理性とは異なることを強調して「感性」という概念がつくられました。そして、感性は動物ももつが、理性は人間だけがもつという(人間中心的な)博物学的区別はギリシャ以来の伝統的な分類でした。
 人工知能(AI)の典型的なモデルは人間。ペットでもいいのだが、私たちの関心は圧倒的に私たち自身にあります。人間と同じように感じ知り、同じように考え判断する機械の仕組みは単純な計算の組み合わせから成り立っています。人工知能には感性、悟性、理性と言った区別は本質的な区別ではなく、それら機能の違いは同じ計算からなっています。
 「何かを計算する」という謂い回しは計算にはそぐわないのです。計算自体は盲目的で十分。計算結果が何を計算したか明らかにしてくれます。一方、「何かを知る」という表現の「何か」は不可欠で、単に知ることは無意味に等しいのです。ですから、考える、感じる、意識するといった述語は「志向的だ」と言われてきました。それは考える対象、感じる対象、意識する対象がないと意味不明だからです。あるいは、それが私たちに備えつけられた能力で、外の世界との関わりを保持するための工夫なのだと考えることができなくもないのですが、「計算する」は志向的ではなく、外界を必要としません。
 私たちはAIにどう対処すべきか戸惑っています。その理由をかいつまんで言えば、同じものなのに違った説明、理解がなされているからです。「私たちは何なのか」についてのギリシャ以来の説明は迷走だらけでしたが、それでも人間を知りたいという点では一致していました。その結果、人間は心をもち、理性をもち、自由意志をもち、責任と権利をもつもので、単なる機械ではないという考えに強い反対はありませんでした。
 AIは機械であり、人間がつくります。そのAIがチューリング・テストをクリアーし、人間と同じように振舞うことができます。その基本は計算であり、単純で盲目的な計算がAIを人間並みにしているのです。
 さて、ここからが哲学的な思索。「計算する」というのは一体どのような述語なのでしょうか。むろん、それは最終的には数論に帰着するのですが、哲学者は明らかに「計算する」ことをバカにしてきました。カントもヘーゲルも計算に特段の関心を寄せたとは思えません。でも、19世紀末から数学の基礎に関する議論は一変します。フレーゲラッセルらの論理学の研究はゲーデルチューリングの数学の基礎に関する研究、つまり、計算理論へと結びつくのです。
 ゲーデル不完全性定理や万能チューリングマシーンは「考えることが計算する」ことであることを説得的に説明するだけでなく、カントのアンチノミーのような推論を数学的に昇華し、人間の合理的思考のシステム(算術を含む論理システム)の不完全性を計算によって証明することになりました。
 感じ、考え、決断することは、基本的に計算することです。これがAIという考えの基本中の基本です。これほど明晰にして判明な結論を20世紀になるまで私たちは知りませんでし。人間の本性はかつて合理性に求められたのですが、計算に求めるべきなのです。人間とは計算する生き物なのです。