非常にキャッチー(?)なタイトルをつけてしまったので初めに言っておくと,私は断じて「基礎論アンチ」ではありません.なんなら比較的好きで,楽しく勉強できるタイプです.
この記事は基礎論のネガティブキャンペーンではありません.
(そういった記事を期待されている方にとっては面白くない内容だと思います.)
実際,私は今年の夏休みのほぼすべてを公理的集合論の勉強に捧げました.
具体的にはZFC公理系を記述し,そこから集合演算,写像,数(自然数,整数,有理数,実数)の構成を行いました.
先日それがひと段落したのですが,実際やってみて
「別にやらなくてもよかったなぁ」
と,理由を持って思うことができました.
折角ですからその理由と,それに至った経緯を読み物として残しておこうと思います.
筆者は圧倒的に数学を学ぶ立場にあり,専門家ではありません.
複数冊の本を読んだわけではないため,内容は偏っている可能性があります.
完全に個人の意見であり,説得や正しさの主張が目的ではありません.
決して現代数学に公理的集合論が必須でないという趣旨ではなく,数学徒が公理的集合論を勉強するべきか否か,という趣旨です.
さて,いざ勉強を開始した私は,すぐに違和感に出会うことになります.
それは読み始めて数ページ,「n変項の関数記号」「n変項の述語記号」という記号に出会ったことです.
(※この記事上では「n変項」は「n変数」のことだと思って問題ありません)
一見何の問題も無いように思えますが,これは困ります.
なぜなら,私は"今から自然数を定義しようとしている"はずだったからです.
実際にはこの違和感を抱えながら夏休み中勉強し続けることになりましたが,現在はこれに対する答えがいくつか考えられるので以下に記します.
そしてこれが私が「公理的集合論をやらなくてよい」と思う理由に本質的に繋がっています.
(念のため,この疑問について弊学の先生に相談して解答を頂いていることも明記しておきます.)
これは非常に本質的です.
我々が普段(数学的文脈で)「実数Mが存在する」と言うとき,これは完全に後者の意味で使っていますよね.
数学的記号で書けば$^\exists$M$\in$$\mathbb{R}$と書けます.
しかし注意が必要なのは,
"この記号の羅列が「実数Mが存在する」という意味を持っているわけではなく,我々がそう読んでいるだけ"
ということです.
形式論理(論理学)は,その中では記号に関する規則しか定めていません.
例えば「論理式とは何か」は論理学の言葉でしっかり記述されています.
参考:
1.項t,sに対し,[t]=[s]は論理式である.
2.論理式φ,ψに対し,φ$\land$ψ,φ$\lor$ψ,φ$\Rightarrow$ψ,$\lnot$φは論理式である.
3.論理式φ,項tに対し,$^\forall$t[φ],$^\exists$t[φ]は論理式である.
4.論理式は以上の手続きでできるもののみである.
(本記事でもそうですが、略記することも多々あります)
項についても,これ以前に厳密に記述されています.
このルールは,英語の「文法」のようなものです.
例えば,肯定文では動詞は主語より後に来るとか,接続詞の後は完全文が続くとか...
「このルールに則ったもの以外は文章とは呼びませんよ」という枠組みです.
しかし,英文法と形式論理の間には明確に違うところがあります.
形式論理は「記号の羅列をどう読むか」には一切干渉しない(できない)のです.
言い換えると,
「$^\exists$M$\in$$\mathbb{R}$という論理式をどう読もうが論理学(数学)はまったく破綻しない」
ということです.
いま,ある仮定から論理学のルールに則って「$^\exists$M$\in$$\mathbb{R}$」という論理式が導けたとしましょう.
この場合,この文章を「実数Mはないよ~ん」とか「P=NP」とか「びっくりドンキーに行きたい」とか,どれだけ好き勝手に読んだとしても,形式論理の枠組みではこれは"正しい""真である"ということになってしまい,一切反証できません.
"形式論理は,論理式の読み方のおかしさを一切立証できない"
のです.
一方,日常生活に戻ってきて考えましょう.
「そこにリンゴが存在する」といった場合.
この真偽の判定は記号によってではなく,我々の目と脳によって行われていますよね.
リンゴを見ながら「リンゴなんてどこにもない」と言う人がいたら,おかしいことを言っていると判断できます.
つまりこの場合の「存在する」は,「疑う余地なく確実に存在している」のです.
(このあたりの言葉選びは難しいです.)
数学的議論の枠組みを出てしまいましたが,以上から,「$^\exists$M$\in$$\mathbb{R}$」という記号の羅列と「実数Mが存在する」という日本語が,本質的に全然違うものであることを分かって頂きたいのです.
長くなってしまいましたが,本題に戻ります.
「自然数が存在する」と「$^\exists\mathbb{N}$」は本質的に完全に違うものです.
「我々が数を数える際に使う1,2,...」と「$\mathbb{N}$の元1,2,...」も完全に違います.
平たく言えば,日本語と形式論理で同じものを表していたとしても,それらは全く違うということですね.
(先生曰く「"同じかどうか"がもはや疑似的な問いで,問いとして成立していない」とのこと.)
私がZFC公理系から示したかったのは,「自然数の存在」ではなくあくまで論理式「$^\exists\mathbb{N}$」だったのです.
一方,我々の世界には既に「数を数える際に使う自然数」が存在しています.
「n変項の論理記号」「n変項の述語記号」と言った際のnは,こちらの自然数だということになります.
この事実が気持ちよいかどうかは置いておいて,「$^\exists\mathbb{N}$」を示す前に個々の自然数が登場することは循環論法(のようなもの)にはならないということですね.
①は非常に本質的ですが,納得感に欠ける人のためにもう少し機械的で簡単な説明もあります.
LaTeXを打っている場面を想定してみましょう.
例えば我々が3変数関数を打つとき,f(x,y,z)という文字列を打ちますよね.
これは紛れもなく3変数関数ですが,この関数を打つために"3"という数字は一切不要です.
別に「n変項」という言葉がなくても,n個の記号を我々が並べさえすればn変項の関数記号や述語記号は使えるということですね.
人によってはこちらの方が①と比べて納得感があるかもしれませんが,実はアプローチは①とほとんど同じです.
"3"という数字は我々の頭の中にのみあればよく,形式論理の外の概念だということですね.
私はこれについて述べられるほどの知識はありませんが,紹介されたので手順を記しておきます:
ZFCよりも弱い公理系を認める
⇒一旦自然数を構成する
⇒ZFC公理系をその上にのせる
この順序で行えば,"少なくともこの問題については"解決します.
が,結局のところどんどん元を辿っていけば,形式論理を構成する段階で①の考え方でないと避けられない循環が起こってしまうはずなので,納得感の問題にすぎません.
上記の話題は単なる具体例に過ぎませんが,ここからは重要な事実が得られます.それは
・公理的集合論をやったからといって数学が厳密になったりはしない
・最終的には,個人の納得感の問題になる
ということです.
上記のテーマに関して納得して頂けたかどうかは分かりませんが,少なくとも
「公理的集合論をやれば,厳密性に関する数学的不安が解消する」
「完全に地に足がついた数学ができる」
といったことは無い,ということは伝わっていると嬉しいと思います.
最終的に個人が納得できるかどうかなんですね.
公理的集合論をやらなくて良いというのは,集合,写像,数の定義や性質を知らなくてよいという意味では決してなく,
「現代数学をやるからにはZFCから全てを導かなくてはいけない」
「自然数とは超限順序数の元であり,これを知らないと自然数を分かっているとは言えない」
みたいな事実は全くないということです.
(そういう主張をしている人を時折見かけます.)
必要なのは「ZFCと無矛盾な仮定を持って数学をやっていること」です.
「$\mathbb{Q}$を完備化して$\mathbb{R}$を構成し,存在と性質を証明した」人と,「$\mathbb{R}$の存在と性質をすべて認めて使うことにした人」は全く同じ土俵に立っており,前者の方が厳密性が高い数学をやっているということは(論理的正しさという観点からは)全くありません.
一方,数学的仮定やスタンスをはっきり持たず,実数の公理を知らずに実数を使って数学をしている人は,これまた論理的正しさという観点からは厳密性を保証はできないと考えます.
ZFCと無矛盾かどうかが分からないからです.
勿論,このような人であっても個々の数学的議論が厳密かどうかは客観的に判断できるので大問題ではないですが,自分で自分の理論の正当性を担保できないのは,個人的には望ましい姿勢であるとは思いません.
もっとも私自身も,公理的集合論をやれば,もっと厳密に数学ができると思って勉強を始めました.
結果としてその望みは叶いませんでしたが,「自分の数学のルール」を明確にできた,という成果を得られたので決して無駄ではなかったと思いますし,教養として持っているに越したことはないとも思います.
しかし基礎論を専門にしたいわけではないので,ここに考えをまとめて,私の形式論理および公理的集合論は一区切りとすることにします.
楽しかったです.