哥德尔定理证明中的标号(11)-(16)——哥德尔读后之26
一、标号(9)与(10)解读回顾
provablec(subst(q,(17,19,number(x),number(y))
((proofFormulac(x,subst(y,19,number(y)))→
(provablec(not(subst(q,(17,19,number(x),number(y)))) 标号(10)
(provablec(not(subst(q,(17,19,number(x),number(y))))
二、哥德尔设定的p和r——标号(11)和(12)
p =forall(17,q) 标号为(11)
这样一个标号(11)所提到的类符号,哥德尔原著英译本中早有交代,原著文本用园括弧内文字简单说明这个小写字母p。
(p是一个带有自由变元19的类符号(CLASS SIGN))
【这个类符号p直观上意味着19(19),也就是y(y)是不可证的。】
一个带有n个自由变元(且没有其它自由变元)的公式,我们称之为n元关系符号,而当n=1的时候,这个n元关系符号,也称之为类符号(CLASS SIGN)。
自由变元17中的每一个客体对象全都具有q关系。
那么,问题就出来了,哥德尔为什么要在注释中解释这个类符号p,它不是带有自由变元17,而是带有自由变元19呢?哥德尔原著的两个英译本,都是这样来注释这个标号(11)中的设定p的。这一点疑惑,我们暂且搁置,希望在解读标号(12)之后,能够有一个合适的答案。因为随后的标号(12),也会产生同样的疑惑。
r = subst(q, 19, number§) (12)
(r是一个原始递归的类符号,带有自由变元17)
随后,有原著译者为注释所做的注释,用方括号给出。
【它在直观地意味着17,也就是x并未证明p§,这个p§意味着p§不可证】
这个r实际上是被导出的,它从递归关系符号q,用一个确定的数字number§代入一个变元而形成一个导出的公式。(哥德尔原著1962译本注释47)
那么,和标号17同样的问题就出来了,在标号(11)中哥德尔为什么要在注释中解释这个类符号p,它不是带有自由变元17,而是带有自由变元19呢?而在标号(12)中,哥德尔又为什么要在注释中解释这个类符号r,它不是带有自由变元19,而是带有自由变元17呢?这好像到现在还是一个疑惑,依然只能是留待观察思考。我们还是继续前行,对这个标号(12)做一些解释说明。
标号(12)
r = subst(q, 19, number§) (12)
p =forall(17,q) 标号为(11)
r = subst(q, 19, number§) 标号为(12)
三、标号(13)到标号(16)
这个连续等式标号(13),素数17和19分别表示第1类符号,即类符号的哥德尔数。我们先看等式的左式:
subst(p,19,number§) 标号(13左式)
按哥德尔的符号约定,将标号(11)所界定的类符号p的数字表示number§代入到变元19,也就是y中,这就形成了类如p§的公式。这个类如p§公式的第一个等式是:
subst(forall(17,q),19,number§) 标号为(13-1)
forall(17,subst(q,19,number§)) 标号为(13-2)
而第三个等式(13-3)也属显然,因为有标号(12)
r = subst(q, 19, number§),
我们等值代入(13-2),自然地获得(13-3)
forall(17,r) 标号为(13-3)
依据标号(11)和(12),我们继续前行,进入到了标号(14)和(15)。
subst(q,17 19,number(x)number§)=subst(r,17,number(x)) 标号为(14)
这个等式的左式,是把number(x)代入到q中自由变元17,即x中;把number§代入到19,q中自由变元y中,由此而形成一个二元关系表达式。这个表达式与标号(14)中的右式是相等的,因为标号(12)中的r = subst(q, 19, number§),自然就有标号(14)的成立。
把标号(9)中y代入p,结合标号(13)的等式,标号(15)蕴涵式就成为:
((proofFormulac(x,forall(17,r))→(provablec(subst(r,17,number(x))) 标号(15)
((proofFormulac(x,subst(y,19,number(y)))→
(provablec(not(subst(q,(17,19,number(x),number(y)))) 标号(10)
把标号(10)中y代入p,结合标号(14)的等式,标号(16)蕴涵式就成为:
((proofFormulac(x,forall(17,r))→(provablec(not(subst(r,17,number(x))))) 标号(16)
四、哥德尔第一不完全性定理得证
由上述标号,出现以下两种结论:
(一)forall(17,r)不是c可证,
因为,如果它可证,依据标号(6.1),就存在一个n使得
proofFormulac(n,forall(17,r))。
但依据标号(16),又有以下结果:
(provablec(not(subst(r,17,number(n)))
与此同时,另一个方面,从forall(17,r)是c可证,则会导致((subst(r,17,number(n))也是可证,这样c将会是不一致的(特别是不一致)。
(二)not(forall(17,r))不是c可证
以上(一)已经证明,forall(17,r)不是c可证,那就是说,依据标号(7),以下公式成立:
n(proofFormulac(n,forall(17,r))
在(一)中出现的不可证结果,再加上标号(15),我们又获得以下公式的成立
n(provablec(subst(r,17,number(n)))
这个公式的成立和以下公式的成立,合在一起,自然违反了c的一致,
provablec(not(forall(17,r)))
因此,(forall(17,r))在c中是不可判定的,命题6得到证明。
五、知之为知之 不知为不知
终于把哥德尔第一不完全性定理证明的全过程,做了一次步履艰难的旅行,一路受卡受阻地走到今天,深感求学求知之不易。为弄懂哥德尔而草做的那些学习博客,似乎到处都是你似懂非懂的印记。这让我想到康先生翻译的《哥德尔》一书,他在文尾写的译后散记,最后一段谈他的哥德尔翻译与研究的感叹:
对于我,翻译哥德尔或讲哥德尔的作品实在是一项新而且难的工作,必须从头摸索。让这个译本只作个开端吧。(王浩著《哥德尔》弟449页)
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231224.html原文链接:https://javaforall.net
