ゲーデルの不完全性定理の怪

ゲーデル文:正しいけど証明できない命題

完全性定理との「見かけ上の矛盾」の解消

by Akihiko Koga,
2025.10.02 (Updated),
2025.09.30 (First)
ホームページトップへ
AI画像生成を使った遊び in 計算機科学へ

当サイトは Google Analyticsを使用しています.プライバシーポリシー

内容

まえがき

このページでは,
ゲーデルの不完全性定理の証明では「正しいが証明できない命題」があると言う.
一方,ゲーデルの完全性定理「正しい命題は証明できる」と言っている.
これらは矛盾するように見えるが,実はそうではない
ということを説明します.

私は,ここ2週間くらい,ゲーデルの不完全性定理を調べたり,考えたりしていました. 不完全性定理は 40年以上前,私が大学4年生(本当は留年して5年生)の時にゼミの輪講でやって,やはり,難しいやら, 扱うことに細心の注意が必要であることやらで,証明を追いかけていくだけが精一杯で,あまり分かった気にならなかったのです.

それで,ときどき分からなくなる疑問がありました.それは,冒頭に挙げた疑問です.

不完全性定理の証明の中で用いられる,所謂,ゲーデル文 G,つまり

正しいけれど証明できない命題 G

と,完全性定理の主張「(すべてのモデルで)正しい命題は証明できる」との見かけ上の矛盾です.

今までに 何回か不完全性定理を読み直したり,考えたりして,納得したことがあるような気も するのですが,また,よくわからなくなっていたので,ここ2週間で 調べたり,考えたりしていました.

それで,なんとか分かった気になりましたので,忘れないように,ここに書き留めておきます.

でも,ただ,メモを残していくのでは芸がないので, 最近,流行りの生成 AI を使って, 感性的な絵などを駆使した作品として残したいと思います.

たぶん,見かけ上の矛盾解決のメカニズムを端的に書くよりは,感性に寄った絵や蛇足が入り,かえって,かなり分かりにくくなると思いますが,人生,ショートカット(近道)だけでは面白くないのでご容赦ください.


このページの内容には蛇足があるの絵
こんな感じです.

目次に戻る

前提知識

まず,どんな見かけ上の矛盾があるか説明しないといけないのですが,それには, 「第一不完全性定理」,「ゲーデル文」,「完全性定理」について概要を知っている必要があります.この章では,それらを簡単に述べた後に,次章で,問題となる状況を述べます.


First, there is something you should know

不完全性定理とゲーデル文

「(第一)不完全性定理」は,簡単に言うと次のような定理です.

算術を含む(自然数の加減乗除ができる)一階述語論理で, 命題 G も命題 ¬G も証明できないような命題 G が存在する


この G は,ゲーデル文と言われるのですが,別名

「正しいけれど証明できない命題」
とも言われます.なぜかというと,この G が,かなり大雑把に言ってしまうと,
G = (G は証明できない)
という内容の命題,つまり,「自分自身は証明できない」という内容だからです.


私を証明することはできない by Gödel Statement

ここから,次のように,G は正しいけれど証明できないことが導かれます.

G の内容から, G が正しくなければ「G は証明できない」が嘘になって,
G は証明できる
G は正しい
→(最初の仮定「G は正しくない」と) 矛盾
になって,「G が正しくない」という選択肢はなくなります.

したがって,G は正しくなければならず,かつ,証明できないという訳です.

こういう命題 G を作る方法としては,論理式や証明の概念をその体系の中の数で ゲーデル数とよばれる数にエンコードして,その体系内の数の性質として G を 表現します.このエンコードの必要性から,不完全性定理の前提には,算術を含み(加減乗除ができる)という条件があるのです.ゲーデル数は素因数分解の一意性を利用して論理式をエンコードします.

ゲーデルのころはまだコンピュータは無かったのですが,現在は,コンピュータが あり,任意の文字列がコンピュータの中のメモリーの内容として表されることを 私たちは知っています.で,それらの文字列は長い2進数と思うことができるので, 命題が数で表現できるのは当たり前と受け止められると思います.


コンピュータの中では文字列が数で表現されている

ゲーデルの不完全性定理の証明の流れを理解するのはあまり難しくありません.


ゲーデルの不完全性定理の証明の流れ

図の一番上の箱が,不完全性定理の対象となる一階述語論理の公理系です.これを T とします.この公理系には3つの条件があります. です.

から,素因数分解の一意性を使って,論理式を構成する記号を自然数としてエンコードすることで,論理式や論理式の列を自然数としてエンコードできるようになります().先ほども言いましたように,現代の計算機に慣れた人なら,素因数分解ではなく,二進数のコード体系を考えても良いです.

から,すべての公理を列挙していく手段がありますから,論理式の列に対して,それを構成する論理式が,公理であるか,あるいは,それより前のいくつかの論理式から推論規則を使って導出されたものかを 判定する論理式が書けます().つまり,論理式の列をエンコードした自然数に対して,それが証明をエンコードしたものかどうかを判定する論理式が書けるということです.

そうすると,ちょっとした技法(対角化技法)を使って,「G = (G は証明できない)」という論理式を作ることができます().

この論理式は,前に書いたように,証明できると仮定しても,反証できる(¬Gが証明できる)と仮定しても矛盾がおきます().

公理系 T は無矛盾でしたから(),G は証明も反証もできない論理式でなければなりません().

これで,不完全性定理の証明の流れの説明は終わりです.

もう一つ,補足として,不完全定理の意義について述べておきます.


「不完全性定理」の意義について説明します

皆さんの中には

「公理系に証明も反証もできない論理式があったら,どうなんだ? なにか悪いことでもあるのか?」
という疑問を抱く人もいると思います.不完全性定理から帰結される,ちょっと嫌なこととして,次の3つくらいがあると思います.

これらが,不完全性定理が意味する,たぶん,一般の人も関心の強い事柄です.

以上,不完全性定理のイメージが持てるように,ちょっとだけ補足しておきました.

あと,ここまで書いてきて,「命題」と「論理式」が入り乱れて使われていることに 気が付きました.きちんとした意味を定義するのは煩雑なので,ここでは,私は, ほぼ同じ意味で使っていて,形式的にあまり意味を込めないときには論理式と使って, 何か人間にとって意味のある重要性があるときは命題と言っていることが多いくらいに受け取ってください.ただし,これは一般的な使い分けではなく,ここだけの使い分けです.


Gödel Statement "I CAN NOT BE PROVED!"
"BE" が抜けましたけど

完全性定理

不完全性定理の紹介がおよそ終わりましたが, 不完全性定理の何が問題かと言うと,例のゲーデル文
G: 正しいけれど証明できない命題
存在です.

ゲーデルがこの不完全性定理を証明する前に証明したものに,「完全性定理」が あります.この完全性定理と,前に述べたゲーデル文が矛盾するように見えるのです.

ここでは,その矛盾っぽいもの理解のために,準備として 完全性定理について簡単に説明しておきます.

完全性定理は

一階述語論理においては,すべてのモデルで正しい命題は証明できる
という定理です.

「モデル」という言葉がでてきましたが,数理論理学に不慣れな人は,ここで出てきた「モデル」という言葉に途惑っているかもしれません.

簡単に言うと,ある公理系のモデルとは,その公理系に出てくるすべての記号に何か数学的なものを割り当て,公理をすべて満たすようにしたもののことです.


一階述語論理の公理系とそのモデル

上の図の左側が一階述語論理の枠組みで何らかの理論を表現したものです. その理論の内容は公理系(公理,つまり,その理論で成り立つことが要請される論理式の集合)で決まります.

論理式は,定数記号,変数,関数記号,述語記号,論理記号(∨,∧,→,¬,∀,∃など)から,ある文法にしたがって組み立てられます.

モデルは,この一階述語論理を解釈する枠組みのうち,公理を満たすもののことです. まず,変数や定数が取りえる値となる要素の集合,各定数がどの要素に対応するかの マッピング,関数記号や述語記号がその要素の集合上のどんな関数や述語に対応するかのマッピングからなります.これらのマッピングが決まると,左側の述語論理の論理式を解釈することができるようになります. モデルは,そのような解釈のうち,公理を満たすものです.

一般に公理系を満たすモデルは無数にあります. 完全性定理は,その公理系で証明できるものは,それらモデルで成り立つものの共通集合だと言っているわけです.

あっさりした説明でしたが,これで準備は終わりです.次は,ゲーデル文と完全性定理の「矛盾」について見ていきます.


ゲーデル文と完全性定理との「矛盾」

完全性定理が成り立つとすると,ゲーデル文 G

G: 正しいけれど証明できない命題
が,すべてのモデルで正しいなら,G は,証明できないといけないのです.

ということで,Gは,

証明できないけれど,証明できる命題
になります.これは矛盾のように見えます.

ちょっと,今までの議論の中の重要な部分を振り返ってみましょう.

私たちは,これまで,ゲーデル文 G について,「正しい」と表現してきて,「すべてのモデルで正しい」とは書いていませんでした. これがあるモデルでだけ「正しい」なら,完全性定理は適用できませんから,別に矛盾はおきません.

しかし,振り返ってみると,どのモデルでも,

G が偽
= (Gは証明できない) が偽
→ G は証明できる
→ G は正しい
矛盾
となるので,「すべてのモデルで正しい」ように見えます

ですから,上で,「すべてのモデルで正しい」という仮定のもとに,完全性定理の適用は妥当だろうと思う訳です.そして,上のように考えると,矛盾が起こってしまいます.


ゲーデル文 G はすべてのモデルで正しいような気がするんだけど, 違うのかしら?

これが,私がときどき分からなくなる疑問です.記述が少し長かったかなと思うので,もう一度,疑問を端的にまとめます

  1. 不完全性定理の証明では,ゲーデル文という「(たぶん,すべてのモデルで)正しいけれど証明できない命題」が出てくる.

  2. 完全性定理は,すべてのモデルで正しい命題は証明できると言っている

  3. そうすると,ゲーデル文は証明できるはずだが,その内容から証明できないはず

それで,ここ2週間,これを調べたり,考えたりして,分かった(ような気になった)ので, 今度はしっかり書き留めておこうと思ってこのページを書いています.

また,世間(啓蒙書やそれらを読んだ人々の間)にも,ゲーデル文は,簡単に,

G = 「正しいけれど証明できない命題」
と言われることがあり,これが,次第に形を変えて,
世の中には,正しいけれど,計算機が証明することができない命題がある. 人間はその正しさが分かるので,人間は,機械より優れている. 機械はどうやっても人間にかなわない.
という思い込みになったり,
世の中には正しいのに証明できない命題がある.人間にはどうしても 到達できな真実があるのだ.これが神の絶対性を示している.
とか,我田引水する人が後をたたない理由になっていると思うのです. 特に,中途半端に数学や物理学の命題を引っ張ってくるエセ哲学者さんエセ宗教者さんたちが.

哲学者も宗教者も,立派な人は,きちんと理解するまで勉強して,とても示唆に富む 書き物をしている人たちがいて,すごいなと思うのですが,一方,多くの哲学者さんたち,宗教者さんたちは,表面だけなぞって我田引水し,自分たちの見かけ上の権威を保つのに使っています.

だから,これをもう少し誤解のない表現にするのが良いのだろうなと思います.


アンドロイドの聴衆に人間の方が機械より優れていると力説している学者さんの図

目次に戻る

「矛盾」の解決

まず,前回の復習をして,「矛盾に見える」ことが何だったかを思い出しておきます.

これらの知識のもとに,不完全性定理と完全性定理の「矛盾」っぽいものが見えてきます.
D: 見かけ上の矛盾
不完全性定理(の証明)から,G は証明できない命題であることが示されており,また, Gの内容はすべてのモデルで正しいが,完全性定理からは すべてのモデルで正しい命題は 証明されなければならない.これは矛盾である.
目次に戻る

この矛盾解消ですが,それほど難しい話ではありません.

結論からいうと,次の文章の下線部が嘘です.

「ゲーデル文:「G = (G は証明できない)」」は,(すべてのモデルで)正しいけれど,証明できない命題である

ここの「すべての」は先ほど念を入れて確かめたところなのですが,実は,G を偽にする モデルがあります.

G が偽のモデルでは,G に証明があることになります.証明があるなら,G が真になりそうなのですが, モデルによっては,「証明」があっても真にならないこともあるのです.

ここでいう「証明」というのが,我々が行う証明ではなく,G にエンコーディングされた 証明,つまり,そのモデルの中でいう証明であるというのがポイントです.

G は,自然数の集合が我々の知っているような ℕ = {0, 1, 2, 3, ...}という モデルでは常に真になるのですが,ℕを含んではいるけど,もっとたくさんの 我々の知らないような自然数が含まれるモデルも可能で,そのようなモデルの中で G を偽にするモデルも存在するのです.

このことを理解するために,算術の理論のモデルの種類について述べます.

目次に戻る

標準モデルと超準モデル

これは一階述語論理の限界なのですが,一階述語論理は,集合の大きさ(基数)を限定する力が非常に弱く辻褄を合わせながら要素を追加することを防げられないのです (注意)

例えば,自然数 ℕ の定義は,

(0 を含んでいて),(x 含むなら x+1 も含む)
というような要請と+αの性質の要請からなります.これからは,
ℕ = {0, 0+1, 0+1+1, 0+1+1+1, ...}
になりそうですが,0 から始まる系列以外に,適当なシンボル ωから始まる 系列を加えて,
ℕ2 = {0, 0+1, 0+1+1, 0+1+1+1, ..., ω, ω+1, ω+1+1, ω+1+1+1, ...}
としても,上の要請の+α以外は満たします.したがって,条件+αの部分が 成り立つなら,こういうモデルも,もとの理論のモデルとしては可能です.

自然数が最初のℕであるようなモデルを「標準モデル」と言います.私たちが 普通に想像する自然数の理論です.


それに対して,ℕ2 やそのほか,自然数がℕの要素以外のものも含むモデルを 「超準モデル」と言います.

(注意)一階述語論理の限界:
よく,計算機科学などでの帰納的な定義で
  1. ... は「項」である.
  2. ... も「項」である.
  3. 「項」は,これらのルールで作られたものだけである
のように,「項」となるものを列挙していって,最後に,「項」はこれらのルールで作られたものだけであるという断りを置くことがあります.

しかし, 一階述語論理は,変数は対象領域のオブジェクトだけを指すことができて,関数や述語などを指すことはできません.

上の「これらのルールで作られたものだけ」という文言は,対象領域のオブジェクトでは無いので,一階述語論理では表現できないのです.


AI に書いてもらった感性的な超準モデル

目次に戻る

「見かけ上の矛盾」の解消

ゲーデル文 G を構成するとき,「証明できる」という述語を 論理式の中で エンコーディングできなければなりません.これは,
・ある自然数 m があり,
m は,証明となる論理式の列をエンコードしたものであり,
・その最後の論理式は,証明すべき論理式である
と言うように作られます.


証明可能であるという述語 Provable(Q) の内容

標準モデルでは,m は普通の自然数から作られますから,普通に有限列の証明ができるのですが, 超準モデルでは,ω+1 というような自然数があり, それは,モデルの中では証明の要件は満たしているかも しれませんが,我々から見て有限列であるとは限りません.したがって,このような証明があったとしても, 最終的な論理式が真であることを保証するとは限らないのです.

まとめると,G が任意のモデルで正しいとの推論は

でしたが,そのモデルが超準モデルの場合は,この最後が成立しないことがある ということです.それで,
ゲーデル文G は,我々のなじみのある自然数からなる標準モデルでは正しいが,
超準モデルでは必ずしも正しいとは言えず
完全性定理が 適用できないので,証明があるという結論には到達せず,
矛盾は起こらない
というのが結論です.


つまり,ある命題が,超準モデルの中の言葉で「証明」できたとしても,
その命題が正しいとは限らないのだ

目次に戻る


付録

一階述語論理とモデルについて

数理論理学に不慣れな読者にとって,一階述語論理とはどんな論理体系なのか, そのモデルとはなにを指しているのかは分かりにくいと思います.

本文中では,一階述語論理については説明せずに,モデルについては

ある公理系のモデルとは,その公理系に出てくるすべての記号に何か数学的なものを割り当て,公理をすべて満たすようにしたもののことです.一般に公理系を満たすモデルは無数にあります.完全性定理は,その公理系で証明できるものは,それらモデルで成り立つものの共通集合だと言っているわけです.
と,簡単な説明をしておきました.

一応,一階述語論理(数理論理)とモデルについては,私が書いた簡単な解説も

レーベンハイム・スコーレムの定理までの大急ぎのまとめ
記号論理の文法 (Syntax) と意味 (Semantics)
にありますが,ここではGoogle サーチの AI モードさんに聞いて, それを書いておくことにします.

ここから,AI サーチとの対話の抜粋

目次に戻る


AI との対話で有用な依頼

次の質問は少し長いですが,数理論理学がある程度分かった段階で, 不完全性定理の超準モデルについて勉強を始めるとき,AI に聞いてみるのに 良い問いだと思います.

目次に戻る


完全性定理の概要

完全性定理については,本文中ではさらっと述べただけでした.せっかく,AI が 使えるのですから,概要を聞いて,ここに入れておきます.

私の依頼

ゲーデルの完全性定理について,理系の大学2年生に理解できるように概要を教えてください.

完全性定理について教えてください

AIの回答

私の追加質問

確か,完全性定理の証明は構成的では無かったと思います.つまり,ある命題が恒真のときに証明を構成する具体的な方法を与えるのではなく,無矛盾ならばモデルがあることを証明していたように思います.そのモデルの構成方法も,その体系をまず完全にするまで追加の公理を加えていく手法であったように思います.完全性定理の証明に選択公理は必要なんでしたか?

たしか,完全性定理の証明は構成的では無かったですよね?
選択公理も使うんでしたっけ?

AIモードの回答

目次に戻る


不完全性定理に関する感性的な絵

やはり,訳の分からない絵を本文に,あまりに沢山入れて読めなくしてしまうのは 気が引けたので,本文中は最低限にして,ここにまとめて入れていくことにしました. 何か思いついて,絵を作ったら,たぶん,ここが増えていきます.


ここでは, 画像生成 AI には,https://perchance.org/ai-girl-image-generator を使いました.
先頭に戻る
AI画像生成を使った遊び in 計算機科学へ
ホームページトップへ