一階述語論理の完全性定理は論理学の最重要定理の一つであり、多くの教科書に証明が載っている。で、当たり前だが教科書によって証明のしかたが異なるので、いろいろな教科書の証明を比較することで理解を深めようというのがこのシリーズである。そういう勉強記録の記事ですよ。
勉強していると愕然としてしまうのだが、述語論理の完全性定理の証明は命題論理のそれよりも格段に難しい。それだけ量化子やら変数の扱いというのはややこしさを孕んでいる。そしてまた変数の扱いをどうするかという点で教科書ごとに個性が出るっぽいのである。
鹿島亮先生の『数理論理学』(朝倉書店)では他の教科書にはない工夫がいろいろ為されている。その工夫がどうすごいのかを頑張って理解したい。
- 作者:鹿島 亮
- 発売日: 2009/10/01
- メディア: 単行本
さて鹿島本。極大無矛盾集合をそのまま使っているわけではなくて、そこに「存在証拠を持つ」という条件を加えたものを KeySet と呼んでそれを使っている。「存在証拠を持つ」の定義は正確に書くといろいろ前提が必要でややこしいが、要するに集合 の中に先頭にがついた論理式、例えば があれば、 となるような がある、そんな集合 は存在証拠を持つ、というような感じ(文章ヘタだな)。KeySet というのは極大で無矛盾で存在証拠を持っているような集合のことで、論理式の集合(理論)を KeySet になるように拡大していってモデルを作る。極大無矛盾集合を作る方法は、無矛盾ならば加えて矛盾したら加えない、という(お馴染みの)操作だが、先頭に がついた論理式を加える際は「存在証拠を持つ」ようにもうひとつ論理式を加える。 を加えたときに を加えても無矛盾性は保たれるので、無矛盾であることと存在証拠を持つことは必ず両立する。この「存在証拠を持つ」ことだが、これが役に立つのはKeySetである の性質
任意の項 に対して
と
ある項 が存在して
を証明するときである。命題論理の完全性定理では
かつ ()
というのを論理結合子ごとに証明していくが、述語論理ではこれの量化子バージョンが必要になるわけだ。
清水本ではヘンキン公理というのを使っている。というか実は清水本にはヘンキン公理という用語は出てこないのだが、たぶん他の本でヘンキン公理と呼ばれているものだと思う。その公理というのは(鹿島本とスタイルを統一して書くと)
すなわち
というもの。こう書くと簡単だが、実際は と個体定項 という形の論理式をゲーデル数化して枚挙し、その変数 とかぶらないように個体定項 を選ぶ、というかなり面倒な作業が必要となる*3。そして理論にヘンキン公理を次々と加えていって拡大し、そこからさらに極大無矛盾になるようにお馴染みの操作をしていく。ヘンキン公理を加えていっても無矛盾性は保たれるので、完全な理論に拡大できる(この事実は「リンデンバウム補題」という名前で出てくる)。ヘンキン公理は、そうして無矛盾で完全になった理論から作られたモデルが量化子の意味をちゃんと定義できることを証明する際に使われる。これは上に書いたような鹿島本のやり方と同じだが、モデルの定義がけっこう違うかもしれないので詳細はまた今度。
鹿島本と清水本を比較するとどうだろうか。理論を拡大していく操作が清水本ではヘンキン公理を加えることと完全な理論を作ることの二段階必要なのに対して、鹿島本では一発で済んでいる。となると確かに鹿島本のほうがわかりやすい気がする。どうでしょうか。
というわけで、もっと詳細でボリューミーな記事にしたかったが、まあ勉強記録のためにやっていることなので、ちょっとずつでもどんどん上げていくのがいいかな、という感じなので今回はこんなところで。「また今度」がいろいろ出てきたが、ちゃんと定義や命題を書こうとするとその本がそれまで使ってきた前提も踏まえなければいけなくて難しいということがわかった。それが今回の学びであった。