Skinerrian's blog

論理学・哲学・科学史・社会学などに興味があるので、その方面のことを書きます。更新は不定期。

リリカルLISP

最近プログラミングの勉強を始めてみた。どの言語を学ぶか迷ったけど、初心者らしく(?)Pythonを選択。Pandasの扱いに四苦八苦してますが、私は元気です。

プログラミングといえば、随分まえに「リリカルLISP」というフリーゲームをやったことがある。LISPの知識を前提せずに作られているゲームだが、おそらくかなり初歩的なところで終わっているので、クリアしても実用的な知識は身に付かない。それでも練習問題は初心者にはハードで、昔やったときは結構苦労した記憶がある*1

とはいえ、さっきこのゲームのことを思い出してちょっと遊んでみたところ、さほど苦労せずにクリアできたので以前よりプログラミングに慣れたのかもしれない*2。感想としては、とりあえず「末尾再帰、最高!」といったところ。

検索したところweb上には解答例がないようなので、記念にでも記しておこうかと思う。序盤の問題はあまりにも簡単なので、第6回あたりから。

  • 第6回 (define s (lambda (n) (if (= n 0) 0 (+ n (s (- n 1))))))
  • 第7回 (define len (lambda (x) (if (null? x) 0 (+ 1 (len (cdr x))))))
  • 第8回 (define f (lambda (x) (lambda (n) (+ x n))))
  • 第9回  (define (si n x) (if (= n 0) x (si (- n 1) (+ n x))))
  • 第11回 (define (map1 f l) (if (null? l) '() (cons (f (car l)) (map1 f (cdr l)))))
  • 第12回 (define (muli x y z) (if (null? y) z (muli x (dec y) (add x z))))

あと、昔プレイしたときはミニゲームをまったく真面目にやらなかったけど、今回はラスボス(なのは)もちゃんと倒した。フェレットのユーノをモグラ叩きの要領で100回以上クリックすると、戦闘時に「たたかう」から「鮫島の怒り」を選ぶことができる。なのはを倒すより難しいのは、バッティングのミニゲーム(リインが投げるボールをヴィータが打つ)で、タイミングが分かりづらい…。「ホームランダービー」と違って安打でも許されるのが救いか。

*1:というか、昔はこのゲームの元ネタの「リリカルなのは」すら見てなかった

*2:このゲームの一番の難しさはインタプリタが一行しかないところだったりする。

科学を語るとはどういうことか

 最近読んだ本。

なかなかドギツイ表紙である。副題は「科学者、哲学者にモノ申す」。通俗的な哲学本で因果性について胡散くさいことが書いてあるのを見て驚いた物理学者の須藤先生が、いったい哲学はどういうことになってるんだ、という不信感をもって科学哲学者の伊勢田先生にいろいろ質問するという趣旨。

お互いの関心がなかなかかみ合わなくて、読んでいて隔靴掻痒の感があるが(話している当人たちはもっと痛感してるだろうけど)、読んでいて楽しい本である。当然ながら須藤先生は哲学のことをあまりご存じないわけだが、随所に鋭い突っ込みをしていて、非常にいい。個人的には、パラダイム転換にともなうクーンロスに関するコメント(2章p.57あたり)にしびれた。

科学実在論論争についての章もある(5章)。須藤先生は反実在論(ファン・フラーセンの構成的経験主義が念頭に置かれてる)の内容・眼目を理解するのに苦しむことになる。須藤先生の不満はこんな感じだろうか。量子論に関して、コペンハーゲン解釈をとるか多世界解釈をとるか、といった話題にはコミットしないという話であればまぁわかる(p.201)。でも、肉眼で観察不可能な事柄についてはコミットしないとか言われると「やれやれお話にならない、と判断してしまう」(p.222)。個人的には、ここは伊勢田先生にもう少し踏ん張ってほしかったところだが、もう十分すぎるほど頑張ってるような気もするので無いものねだりかもしれない。

なお、1章では哲学への不信つながりでソーカルとブリクモンの例の本に触れている。須藤先生はハッキリと

本来、比喩というのは、そのままではわからないことをより平易な例を用いて理解してもらうために用いるべきものです。内容がないからこそ、だれも理解できないだろう、とたかをくくって、めちゃくちゃな科学用語の乱用で煙に巻く。そんなことは決して許されるべきではありません。p.24

筆が滑った程度のことで済ませて良いようなレベルなのでしょうかねえ。p.25

と言っている*1。私も「まったくその通りだなぁ」と思うが*2、伊勢田先生は注意点として、例の本で批判されている人々は一枚岩ではなく科学社会学者とかも含まれてること、この本で批判されてる人々が哲学者の代表というわけではないことなどを指摘してる。まぁそれでも、

ラカンのように中心的な主張でわざとそういうことをやっている人はやっぱり別扱いになると思います p.36

と切り捨ててるのには草生える。

他にも、哲学業界における査読制度の説明とか、哲学には大きく分けて論理学・認識論・形而上学・価値論の四つの分野がある、みたいな説明もされている。この辺は、哲学業界をよく知らない人(かく言う私も)に有益な情報であろう。

inverted burial

One Piece』46巻にある一コマについて。

f:id:skinerrian:20171209171005j:plain

以前このブログで、プラトンやらアリストテレスが人間を逆さになった植物とみなしていた、という話題を紹介したことがある。人間が口から栄養摂取するように、植物は根から栄養摂取するので、口と根が対応してるとか何とか。神崎繁先生によると、中世の絵画で逆さまに地面に埋められている人間が描かれてるのは、それの影響なんだとか*1。本当だろうか。というか、中世からこんな構図の絵があったりするの?

逆さまといえば、新約聖書外典の「ペテロ行伝」には、ペテロがローマで殉教したときに逆さ十字にかけられた、という話がある。しかし、なんで逆さ十字?イエスと同じポジションで殺されるのは恐れ多いと思ったとかいう説明をよく見かけるけど、ほんとかいな…。

関連記事

*1:『西洋哲学史I』(講談社メチエ)p.420

嘘つき(2)

ジェスパー・ホフマイヤー『生命記号論』から。

次の文は実際には何を意味しているのだろうか。「この文には三つもまつがいがある。」この文は正しいと言えるだろうか。実際には、間違いはただ一つ「まつがい」だけである。この文を正しく読めるものにするには、このように書き換えなければならない。「この文には一つのまちがいがある。」しかし、実は最初の文には三つの間違いがある。「三つ」は「一つ」、「まつがい」は「まちがい」でなければならないし、「も」は「の」あるいは「だけ」が正しい。それではこの文は結局のところ正しいことになるのだろうか。しかし、もとの文は正しいと言ったとたんに、それはやはり間違っていることになる。なぜなら、文が正しいのであれば、再び間違っているのは「まつがい」一つだけになってしまう。…

ここで私たちが直面しているのは、二十世紀の哲学において決定的な役割を演じた、独特なタイプのパラドックスである。このパラドックスは「嘘つきのパラドックス」として知られており…(邦訳p.71) 

「この文には三つもまつがいがある」の原文はThis sentence contains three rong words. 「この文には一つのまちがいがある」はThis sentence contains one wrong word. うまく訳したものだと思う*1

しかし、この文章は嘘つきのパラドクスの説明として受け入れてよいものなのだろうか。どうも納得できない。

この文を正しく読めるものにするには、このように書き換えなければならない。「この文には一つのまちがいがある。」

ここは怪しい。「この文には三つのまちがいがある」と書き換えても正しく読めるようになるわけだから、「このように書き換えなければならない」とは言えないと思う。

また、仮にこれがパラドクスなのだとしても、「まつがい」なんて単語はそもそも日本語にはないのだから、単に「この文は無意味だ」と言ってしまえば問題は片付くのではないか。曲がりなりにも有意味な語から構成されている「この文は偽である」と違って、「この文には三つもまつがいがある」を無意味とみなすことにコストはかからないと思う。二値原理はすべての文字列が真か偽の真理値をもつことを要求しない。疑問文とか、前提が隠れている文などは真でも偽でもないとみなす余地がある。引用符ぬきで無意味な表現が出現する文字列ならなおさらそうだ。

関連記事

*1:とはいえ、この翻訳がどのくらい信頼のおけるものなのかは留保しておく。「聖マタイの情熱」(p.77)という文字列を見たときはギョっとした。

対応理論

戸田山『論理学をつくる』は終盤で様相論理について簡潔な解説をしている。そこで「対応理論」という用語がでてくる(p.315)。様相論理の式とそれが妥当になるフレームの到達可能性関係の対応をあつかう理論、といったところだろうか。そこで著者が紹介しているのは、例えば

  • □P→□□P

という式(図式)が妥当になるフレームは推移的だとか

  • □P→P

が妥当になるフレームは反射的だとかそういったことである。

正直なところ、これを証明するのはかなり簡単なので、この程度のことで「理論」とか大げさだなと思っていた。しかし、次のような例をみると、「理論」というだけのありがたみを感じられる。

  • hiA → □jkA

iというのは□をi個並べるということ。◊についても同様である。こういう一般的な図式に対して、それが妥当になるフレームの到達可能性関係を一般的な形で定式化できるとエレガントである。答えは

  • wRhvwRju ⇒ ∃x (vRixuRkx)

となる。そういう定理がレモンとスコットにより証明されている*1。ちょっとばかり確認してみよう。例えば、最初に提示した

  • □P→□□P

は、h = 0, i = 1, j = 2, k = 0の場合の特殊ケースとみなせる。これの到達可能性関係は

  • wR0vwR2u ⇒ ∃x (vR1xuR0x)

ただし、w, v, uには全称量化がかかっている。これはつまり

  • w = v & ∃y(wRy & yRu) ⇒ ∃x (vRxu = x)

ということであり、さらに簡略化すると

  • ∃y(wRy & yRu) ⇒ wRu

となる。これはRが推移的だと言っているので、正しい結果が得られたことになる。□P→Pについても同じことが言える。 

関連記事

ゲティア事例

1963年の論文で、エドマンド・ゲティアは知識の古典的定義に対する反例を提出したとされる。知識の古典的定義とは「知識=正当化をもつ真なる信念(justified true belief)」というもの。通称、JTB分析である。

以後、ゲティアの反例を回避するにはJTB分析にどのような修正を施せばいいのか、ということが問題になり(ゲティア問題)、さまざまな提案がなされた。それと同時に、ゲティア以前にも似たような思考実験による反例が提示されていたのではないか、ということも話題になった。よく挙げられるのはマイノングやラッセル。たぶん彼らは、JTB分析への反例を意図していたわけではなく、知識=真なる信念、という等式への批判を意図していたのだが、後から振り返ってみると、JTB分析への反例にもなっているのでは…、というのが実情だと思われる。例えば、邦訳のあるチザム『知識の理論』3版では、マイノングの反例として、風琴が庭に置いてある家の老人が、だんだん聴力が弱りたまに幻聴を経験するようになったという状況設定で、ある日、風琴の音が聞こえて風が吹いたと信じたケースが紹介されている。

しかし、もっと最近の認識論の入門書をみてみると、ゲティア事例はインド哲学においてずっと昔に提示されていた(770年頃のDharmottaraという人)、という驚くべき話も紹介されている*1。それどころか、ゴールドマンの知識の因果説みたいなものまで考案されていたとか(14世紀のGan.geśaという人らしい)。本当かどうか調べる術が私にはないけど、「〇〇を一番最初に考えたのは誰?」という疑問には簡単に答えが出せない、といういい例だと思う。

*1:Jennifer Nagel, Knowledge, OUP.

カリーのパラドクス

自分自身を含まない集合 {x | ¬x∈x} などという集合の存在を認めてしまうと矛盾が生じる。カリーのパラドクスは、このラッセルのパラドクスとよく似ている*1。論理学では、否定命題¬Pを「P→⊥」という形で定義することがある。この定義を用いると、ラッセルのパラドクスは {x | x∈x → ⊥} という集合にまつわるパラドクスといえる。これに対し、カリーのパラドクスは {x | x∈x → A} という集合にまつわるパラドクスである。ここで、Aは任意の命題が入る。⊥も入りうるので、その場合にはラッセル集合である。この集合がパラドクスを引き起こすのは、{x | x∈x → A} という集合の存在を認めると、Aが証明されるからである。Aは任意の命題なので、任意の命題が同じ論法で証明できてしまうので、実質的には矛盾である。

実際に、Aを証明してみよう。問題の集合をXと名付け、X∈Xと仮定することからはじめてみる。X∈Xなので、Xの定義から、X∈X → Aである。X∈X → AとX∈Xから、modus ponensによりAである。X∈Xの仮定からAが導かれたので、X∈X→Aである*2。これで仮定が落ちた。さて、Xの定義とX∈X→Aから、X∈Xである。よって、modus ponensによりAである。

自己言及がこうしたパラドクスの元凶だとみなすならば、自己言及を何らかの仕方で禁じねばならない。一つのやり方(タイプ理論)は「x∈x」のような表現を文法違反だと主張すること。別のやり方(公理的集合論)は、{x | ¬x∈x} のような集合を作らせないため、包括原理などの集合に関する原理を捨てる(制限する)ことである。

自己言及は集合に関してのみ生じるわけではない。嘘つき文「この文は真でない」はラッセルのパラドクスの真理述語バージョン、「この文が真ならば、A」はカリーのパラドクスの真理述語バージョンといえる*3。真理述語に関しては「Pが真であるのは、Pときそのときに限る」という基本的な原理がある。この原理を否定するのは厳しいので、一般的には、自己言及そのものを文法違反として退ける。

カリーのパラドクスは1940年頃に発見された。カリーのパラドクスは、ラッセルのパラドクスや嘘つきパラドクスほど有名でないが、知っておく価値はある。数理論理学を勉強していると、このパラドクスは思わぬところで出没する。

例えば、レープの定理の標準的な証明はカリーのパラドクスと似ている。レープの定理とは、PAのような算術理論で可証性述語Provを定義するとき、任意のφについて、Prov(φ) → φ がPAで証明できたとすると、PAでφも証明できるという定理。いったいどの辺でカリーのパラドクスがでてくるのか。私の理解する限りでは、だいたい以下のような感じだ。

レープの定理の標準的な証明は、Prov(x) → φという一項述語を作って、不動点定理により、ψ ≡ Prov(ψ) → φ という双条件が成り立つということから出発する。ψは「この文が証明できるならφ」と言っているように読めるので、カリーのパラドクスとよく似ている。もっとも、ここからφを証明するまでの手順はずっと複雑だけれども*4

関連記事

*1:カリーのパラドックス - Wikipedia

*2:厳密にいえば、X∈Xを二回仮定しているので、このように結論するには縮約規則(contraction)を使う必要がある。

*3:このバージョンは「ギーチのパラドクス」と呼ばれることもある(三浦『論理パラドクス:論証力を磨く99問』文庫版pp.66-68)。これは、Geach, "On insolubilia" 1954に由来。

*4:これとは別の証明法は、ゲーデルの第二不完全性定理から出発する(cf. フランセーン『ゲーデルの定理』p.140)。レープの定理と第二不完全性定理は同値といってよく、実際、標準的な証明でも可証性述語に関するヒルベルトとベルナイスの可導性条件を利用することになる。