トップ «前の日記(2007-09-15) 最新 次の日記(2007-09-17)» 月表示 編集

日々の流転


2007-09-16 [長年日記]

λ. ヘンキン文

先日、「H↔Provable([H]) な H の真偽」というクイズを書いた。 反応が全く無くて少し寂しかったのだけど、忘れないうちに簡単な解説を。

この論理式はヘンキン文(Henkin sentence)と呼ばれていて、その名の通り1950年頃にヘンキンによってその真偽が問題にされたそうだ。 そして、この論理式が真であることは Löb によって1955年に示されている。 以下に簡単に証明するが、なかなかトリッキーで面白い。

前提

証明可能性は可導性条件(derivability conditions)と呼ばれる以下の条件を満たす。

D1
T ⊢ P ⇒ T ⊢ Provable([P])
D2
T ⊢ Provable([P→Q]) → Provable([P]) → Provable([Q])
D3
T ⊢ Provable([P]) → Provable([Provable([P])])

また、不動点定理が成り立つ。すなわち、任意の一変数論理式 P(x) に対して、ある論理式Qが存在して T ⊢ Q↔P([Q]) が成り立つ。

証明

H は T ⊢ H↔Provable([H]) を満たすとする。

まず、不動点定理によって、ある論理式Dが存在して T ⊢ D ↔ (Provable([D])→H) を満たす。

S := Provable([D])→H とすると T ⊢ D → S

D1を適用して T ⊢ Provable([D → S])

D2を適用して T ⊢ Provable([D]) → Provable([S])

Sを展開してもう一回D2を適用して T ⊢ Provable([D]) → Provable([Provable([D])]) → Provable([H])

D3より T ⊢ Provable([D])→Provable([Provable([D])]) なので、T ⊢ Provable([D]) → Provable([H])

Hの定義より T ⊢ H↔Provable([H]) なので、T ⊢ Provable([D]) → H

Dの定義より T ⊢ D ↔ (Provable([D])→H) なので T ⊢ D で、D1 より T ⊢ Provable([D])

T ⊢ Provable([D]) と T ⊢ Provable([D]) → H とにMPを適用して T ⊢ H

様相論理との関係

Provable([X]) を □X と書くことにすると、D1は必然化に、D2はKに、D3は4に対応する。 さらに不動点定理に対応するものを様相論理で公理化して……という話があるがそれはまたそのうち。

λ. かつ泉の宝山豚ロースかつ定食(中)

美味しかった。
[かつ泉の看板]

Tags: