円城塔「for Smullyan」について


円城塔「for Smullyan」について,作中で扱う命題について再検討したのち,議論の不足を指摘する.

題名は作中にもある通り,数学者のレイモンド・スマリヤン(Raymond M. Smullyan)から.

以下,テクストとして柏書房『kaze no tanbun 特別ではない一日』紙版を用いる.


「全ての可能な文字列.全ての本はそこに含まれている.」

「P. But I don't believe that P.」

円城塔,『Self-Reference ENGINE』


作品概論

本作で扱われているパズルは,『スマリヤン数理論理学講義 上』(日本評論社)の223頁の問題1と同じものである.この問題は Gödel の第一不完全性定理を証明するための考察の途中に置かれた問題であり,Gödel による証明の本質的なアイデアを把握するのに役立つ.そのアイデアとは,すなわち,扱いたい対象の算術化と,自己言及文を作り出す仕組み(対角化)を用意することである.

円城塔は,本作の冒頭で,まず素朴な可能な文字列を算術化して「可能な文字列」を構成する.これによって得られた文章を対角化することで自己言及文を作り出し,真ではあるのだが印刷不可能な文章が存在すると主張する文章を印刷する.これは一見不可解かもしれないが,もちろん正しい.確かに,慣れないうちは混乱する文章であるが,慣れてさえしまえば至って当然のように感じられる文章である.いかに注意深く文章を構成しても,そこから溢れてしまう文章は必ず存在するのである.

“可能な文字列”という文字列は,円城塔の第一長篇『Self-Reference ENGINE』の冒頭に置かれた「全ての可能な文字列.全ての本はそこに含まれている.」に含まれている.ここから,本作はこの文章の真意について議論していることが示される.すなわち,すべての(表現可能な)書物は可能な文字列の中に含まれているが,そこに含まれない(表現不可能な)書物が必ず存在する.

円城塔が主張するのは,不完全性定理からのアナロジを考えれば,どのような公理系においても表現不可能な書物が必ず存在するのだから,その公理系を拡張することを通じて常に小説が許す表現のあり方を拡張していくべきである,ということである.しかしながら,円城塔はこれを他人に強要しているわけではなく,あくまで自らの意思でそうしているに過ぎない.

本作「for Smullyan」は,円城塔が自らの思索を記号論理を用いて厳密な形で示した作品であり,『Self-Reference ENGINE』の真意を把握するための最重要作と言える.


検討

今回もAll-Reference ENGINE の「for Smullyan」の項にメモを置いておいた.第一不完全性定理の証明と,定理が必要とする公理系の一例を載せてあるので,より詳しく知りたい方はこちらをどうぞ.

作中の議論について

作中で円城塔が何に取り組んでいたのかについて,ここで簡単に見る.なお,記号論理は普段あまり扱わないので,間違いがあるかもしれない.間違いを見つけた場合は指摘していただけると大変ありがたい.

作中の議論と等価な議論

簡単のため,「可能な文字列」である「は印刷可能」「ではない」「の対角化」をそれぞれ記号\( P, \lnot, N \)に置き換える.これらの記号から成る記号列を文とし,文は右から左に読む.例えば\( \lnot P \)は「は印刷可能,ではない」,\( P N \lnot P \)は「は印刷可能,ではない,の対角化,は印刷可能」を示す.

次に,文章を以下の4種類に限定する.

  1. \( P(X) \)
  2. \( \lnot P(X) \)
  3. \( P N(X) \)
  4. \( \lnot P N(X) \)

ただし,\( X \)は任意の可能な文字列.

文章については,その真偽を判定出来るとする.

ここで,文章 \( \lnot P N \) を考える.この文章の対角化,すなわち \( N \lnot P N \) は

\( N \lnot P N = \lnot P N \lnot P N \)

対角化によって得られた文章\( \lnot P N \lnot P N \)は,\( N \lnot P N \)は印刷可能ではないことを主張しており,\( N \lnot P N \)が印刷可能でないとき,かつそのときに限り真である.

すなわち,逆に,\( \lnot P N \lnot P N \)が真のとき,\( N \lnot P N \)は印刷可能でない.

上記の等式から明らかなように,\( N \lnot P N \)と\(\lnot P N \lnot P N \)は同値であるから,\( \lnot P N \lnot P N \)は印刷可能ではない.つまり,\( \lnot P N \lnot P N \)は真かつ印刷不可能.

したがって,可能な文字列の中には,真なのだが印刷不可能な文章が存在する.

作中の議論の問題点

作中の議論では,\( \lnot P N \lnot P N \)が真の場合しか考慮していない.このとき,この文章が偽であるような場合も存在しており,\( \lnot P N \lnot P N \)は真かつ印刷可能ではない,あるいは偽かつ印刷可能という2通りの可能性がある.そして後者は印刷可能ならば真という定義から排除され,前者だけが残る(Smullyan[3]p. 222~223, 241)のだが,作中の議論では印刷可能ならば真という定義が存在しないので,これが成り立たない.

要するに,作中の議論の結論は間違いではないのだが,片手落ちの,厳密性を欠いた議論になってしまっている.

これを単純なミスと見ることも出来る一方,このテクストが“信頼出来ない語り手”によるものでないならば印刷可能なテクストはもちろん真であるとして陰に定義されていると考えることも出来,この問題についてはこれ以上立ち入ることが出来ない.

【追記】(21/1/6)

先に扱った議論とその結果は「ミニ・ゲーデルの定理」として知られている(Smullyan[3] p.222).また,これと同じような論理構造をもつパラドックスとして, Curry のパラドックスや Russel のパラドックス,嘘つきのパラドックスなどが知られている.ここでは特に,Curry のパラドックス*1について紹介する.

§ Curry のパラドックス

「この文が真であるならば,Aである.」とすると,任意のAについてAが真であることが証明出来る.

実際に“証明”してみよう.例として,Aに「サンタクロースは実在する」を代入する.すなわち,扱う文は「この文が真であるならば,サンタクロースは実在する.」

この文が真であるとすると,この文が真であるならば,サンタクロースは実在する.これは元の文に等しい.したがって,この文は真であり,かつサンタクロースは実在する.(“証明”終了)

ただし,これも本来ならば扱う文が真であるときと偽であるときの2通りを考慮しなければならないのだが,真である場合の議論のみをもって“証明”としてしまっている.

さて,このパラドックスを紹介したのは,このCurryの名前に因んだCurry化という数学的な操作が存在していて,しかもそれが『Self-Reference ENGINE』に関連するから*2.詳しくは将来執筆予定の『SRE』の解説にて.

【追記】(21/1/13)

本作の陽な主張は,本文に書かれている通り,「真だが,印刷不可能な小説が存在する」.しかし,これは,「真だが印刷不可能なる“小説”は小説ではない」に等しい.

ここで,この議論は,Russell のパラドックスにおいて,「\( \{ X | X \notin X \} \)なる\( X \)は集合ではない」と結論することと等価(だと思う.アナロジで導いただけなので,精査が必要).

ということで,折角の議論を混ぜっ返してしまった形になる.このような読み替えが発生してしまうのは,“小説”という定義が十分豊かな(悪く言えば曖昧な)ものであるからだと思う.“小説”に含まれるものが多すぎて,全ての“小説”が含まれるように小説を定義することが非常に困難なので,このような変なことが生じる.もしくは,上記のような読み替えが何かしらによって禁止されるのかもしれない.正直もう何が何やら見当がつかなくなってきているので,現時点ではこれ以上の議論が行えない.

円城塔の発言との比較

2020年12月19日に行われた円城塔×佐々木敦対談に先立って投稿された一連のツイート群が本作で扱った命題に強く関連していたので,引用して詳しく見る.

円城「『それを小説と呼ぶ』では,『Self-Reference ENGINE』の冒頭部も引いて頂いていて,あそこは僕の書いた文章の中では比較的,言及されやすいところなんですが,」 #対話を先行

円城「僕としては,あんまりしっくりとする解説に巡り合ったことがない箇所でもあります」 #対話を先行

円城「大意としては,『全ての可能な文字列の中に,あなたが望む文字列が存在するとは限らない』というやつです.バベルの図書館の中に,あなたの望む本はあるか? と」 #対話を先行

円城「これは,バベルの図書館をどうインデクシングして,リトリーブしますか,という問いと受け取られることが多いんですが,」 #対話を先行

円城「僕が素直に読むと,可能な文字列とは表現可能なもの全てにすぎないわけですが,あなたの望むものは,表現可能なのですか? という問いになります.両者はかなりちがうものです(笑)」 #対話を先行

円城「ただしそこでは,望むものが表現可能ではなかったとしても,その存在は別に疑っていない,というようなニュアンスがあります.P. But I don't believe that P. と扉にある気持ちとも似ています」 #対話を先行

円城「存在することは疑いないが,それを表現することはできない(かもしれない)というのが自分の巡っている問題圏ではないかと思います.これは,佐々木さんの言う『超越』と似ているところはあるなと思うのですが」 #対話を先行

円城「ただこれは,それほどロマンチックなことでもなくて,存在は証明できるが,構成方法は知られていない解,具体的な形もわからない解,なんていうものはいくらでもあるわけです.そういうものを超越と呼ぶ必要があるのかには,わりと懐疑的なところもあります」 #対話を先行

円城「小説はそういう,表現できるのかどうかもわからないものを扱うものなのだ,という感覚はあるのですが,現実問題として,そのための技術が発達していない,という気持ちも強い.なので,色々やってみている,というのが素直なところです」 #対話を先行

ここで語られたことを素直に認めるとすると,要約は以下の通り.「円城塔には,表現したいにもかかわらず現状では表現出来ないことがある.それには原理的に表現不可能なことと,単純な技術不足のために表現不可能なことの2種類があり,円城塔は現在数理的構造やプログラミングを導入することによる小説の技術刷新に取り組んでいる.」

これは,本作「for Smullyan」や「十二面体関係」の解説で得られた結論に非常によく一致する.すなわち,「物語の中には存在するが語れないものが必ず存在するので,それを語るために小説の手法の新規開拓を行わなければならない.」


感想

慣れが必要ですよね.はじめて記号論理を目にした人は面食らうことだろうと思う.

私に関して言えば,記号論理は学部時代の学生実験でハードウェアプログラミングをやらなければいけない課題があって,そこで実地訓練として叩き込まれることになった.なので久しぶりではあったものの,経験はあったので読解は楽だった.

一方,不完全性定理はここではじめて本格的に勉強することになった.最初こそ苦戦したが,だんだんと飲み込めてきてはっきりとその概形が見えてくると,不完全性定理自体が面白かった.Gödel の着想自体も,そして Gödel 数への翻訳という手法も面白く,またそれらを通じて円城塔読解に有用と思われるものに気づけたので,また新たに文章として書き残しておこうと思う.

「十二面体関係」の解説の最後にも書いた通り,この後はべらぼうに忙しいのでしばらく潜航する.ただ,『文字渦』文庫化と『ゴジラ シンギュラポイント』の放送が来るので,前者は過去の解説の加筆修正を,後者は出来る範囲での解説を試みたい.合わせて,「良い夜を持っている」などの文芸的作品とされるものに well-defined な解釈を与え,今後の円城塔作品の理解の刷新を行いたい.

ともかく,今年はえらい年だった.それではよいお年を.


付録

第一不完全性定理

§ 第一不完全性定理

十分な強さをもつ形式的体系のいずれにおいても,そこで証明出来ない真である算術の文が存在する.

ここで,“十分な強さをもつ形式体系”であるために必要な条件*3は,その体系が

  1. その言語で算術が表現出来る
  2. Peano 算術を含む
  3. 矛盾を含まない(無矛盾律)

第一不完全性定理の証明

\( \theta \)で証明出来ないという性質\( \lnot Prov_{\theta}(m) \)は\( L \)で表現出来るので,対角化定理より,\( G \leftrightarrow \lnot Prov_{\theta}(\bar{G}) \)が証明されるような\( L \)の文\( G \)が存在する.

このとき,第一不完全性定理は「\( \theta \)が無矛盾であるならば,\( G \)は\( \theta \)で証明出来ない」と表される.これを証明する.

\( \theta \)が無矛盾であると仮定し,さらに,\( G \)が\( \theta \)で証明出来ると仮定する.\( G \)が\( \theta \)で証明可能なので,その証明の Gödel 数\( n \)が存在する.\( n \)が\( G \)の\( \theta \)での証明の Gödel 数であるということが真であるから,\( Pr_{\theta}( n, \bar{G}) \)が\( \theta \)で証明出来る.したがって,\( \exists x Pr_{\theta}(n, \bar{G}) \)すなわち\( Prov_{\theta}(\bar{G}) \)も\( \theta \)で証明出来る.

しかし,\( \theta \)において\( G \leftrightarrow \lnot Prov_{\theta}(\bar{G}) \)が証明可能なので,同時に\( Prov_{\theta}(\bar{G}) \leftrightarrow \lnot G \)も\( \theta \)で証明可能.

これは\( \theta \)が無矛盾であるという仮定に反する.よって,\( G \)は\( \theta \)で証明不可能.これは示したい命題にほかならない.

Peano 算術

Peano 算術とは,Peano の公理によって定義される算術である.

§ Peano の公理

  1. 自然数0が存在する
  2. 任意の自然数aにその後者(successor)である\( suc(a) \)が存在する
  3. 0はいかなる自然数の後者でもない
  4. 異なる自然数は異なる後者を持つ
  5. 0がある性質をもち,\( a \)がある性質を満たせばその後者\( suc(a) \)もその性質を満たすとき,すべての自然数はその性質を満たす(数学的帰納法)

対角化定理

§ 対角化定理

\( \phi(x) \)を\( x \)のみを自由変項としてもつ\( \theta \)の言語\( L \)の式とすると,\( D \leftrightarrow \phi(\bar{D}) \)が\( \theta \)で証明出来るような式\( D \)が存在する.


参考文献

  1. 前原昭二, 『記号論理入門』, 日本評論社
  2. 野矢茂樹, 『論理学』, 東京大学出版会
  3. レイモンド・M・スマリヤン, 『スマリヤン数理論理学講義 上』, 日本評論社
  4. レイモンド・M・スマリヤン, 『スマリヤンのゲーデル・パズル』, 日本評論社
  5. 飯田隆, 「ゲーデルの不完全性定理とタルスキの定理」, 『哲学の歴史 別巻 哲学と哲学史』, 中央公論新社

脚注

  1. カレーのパラドックスではなく,カリーのパラドックス.数学者・論理学者のハスケル・カリー(Haskell Curry)に由来する.ちなみに,プログラミング言語 Haskell もこのカリーに由来する.
  2. 円城塔本人の解説スライドより.http://engine.sub.jp/ppt/SRI.ver2.3.pdf
  3. なお,これよりも弱い条件でも第一不完全性定理は成り立つ.

本稿ははてなブログ版SF游歩道から保存した.保存にあたって,表記の統一のため,一部修正を行なった.


SF游歩道(はてなブログ版)に戻る

SF行為記録保管所に戻る

トップに戻る