哥德尔不完备定理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哥德尔不完备定理
哥德尔不完备定理有两条:
一、任何相容的形式系统,只要蕴涵皮亚诺算术公理,就可以在其中构造在体系中不能被证明的真命题,因此通过推演不能得到所有真命题
二、任何相容的形式系统,只要蕴涵皮亚诺算术公理,它就不能用于证明它本身的相容性
我们只论述第一条定理。
证明思路:
①要证明蕴含皮亚诺算术公理的形式系统不完备,只需要证明皮亚诺算术公理不
完备。
②要证明皮亚诺算术公理不完备,我们可以选择皮亚诺算数公理的一个模型(也
就是实际意义),最简单的,选择自然数ℕ作为一个模型。那么之后,这个公理系统都是描述自然数的了,公式的变元是自然数,项是自然数等等。
③将皮亚诺公理系统的所有有效的句子(逻辑学称为公式),映射到自然数的一个
子集。
④根据皮亚诺算术公理的性质,构造一个命题,使得它可证或不可证都会产生矛
盾。
皮亚诺算术公理如下
1.∀x(Sx≠0)
0不是任何数的后继数
2.∀x∀y(Sx=Sy→x=y)
x与y的后继数相等,则x与y相等
3.(φ(0)∧∀x(φ(x)→φ(Sx)))→∀xφ(x),φ(x)为算术公理的任一公式
这个就是数学归纳法
4.∀x(x+0=x∧x⋅1=x)
存在零元和幺元
5.∀x∀y(S(x+y)=x+Sy)
加法的定义
6.∀x∀y(x⋅Sy=(x⋅y)+x)
乘法的定义
递归函数
我们可以根据这个公理系统定义“递归函数”,也就是编程一般都会用到的那种函数,其函数值f(a n)依赖于f(f(a n−1))(其中a n=f(a n−1))……在这里我们一般指的是定义域和值域都是自然数的子集的递归函数。
我们可以给出定义:
定义1:原始递归函数为:
①零函数:0(x)=0
②后继函数:S(x)=Sx
③射影函数:I mn(x1,x2…,x n,…,x m)=x n
原始递归函数为递归函数
定义2:递归函数的复合仍然是递归函数。
也就是f(x),g(x)为递归函数,则f(g(x))也是递归函数。
⌋,n!等都是递归函数。
例子:⌊√n⌋,⌊x
y
事实上,只要是定义域和值域都是自然数的子集的函数,都是递归函数。
哥德尔数
哥德尔数这个是哥德尔证明哥德尔不完备定理的一个创造性的一个构造。它使得公理中的每一个合法的句子都对应着一个自然数。这个有什么用呢?是为了可以创造一个自我指涉(self-reference)的句子……嘛这样的句子很容易出现自我矛盾,比如说一个出名的就是“这句话是假话”,否定这句还是肯定这句话都会出现矛盾。自我指涉这种方法也算是反证法的一个特例了。
言归正传,那么根据这个公理系统,我们可以证明自然数的算术基本定理:每个非零非一的自然数都能唯一地分解为有限个素数的积。
构造哥德尔数分两部分:
①先把公理系统的字符表与自然数的子集一一对应,记为f:
比如说:
比如f(∀)=11
② 再建立起句子与数的对应关系 记一个句子A 的哥德尔数为[A ]
句子A ,从左到右的字符为:字符1,字符2,字符3,……字符n 那么[A ]=质数1
f (字符1)
⋅质数2
f (字符2)
…质数n
f (字符n )
质数我们可以取所有质数的集合,质数1就是2,质数2就是3等等。 举个例子:
句子A 为∀xP (x ),那么
[A ]=2f (∀)⋅3f (x )⋅5f (P )⋅7f (()⋅11f (x )⋅13f ())=211⋅315⋅514⋅73⋅1115⋅134 这是个大的恐怖的数字,但是,在基本算数定理下,只要一个数对应的是一个合法的句子,那么总是可以还原成为那个所对应的句子的。
需要注意的是,因为同一个句子可能有不同种形式,所以不同的哥德尔数可以对应着同一个句子。不过一些自然数却不能对应一个合法的句子,只有按照上面方式得到的自然数才能对应一个合法的句子。还有就是一个确定形式的句子,只能对应一个哥德尔数。
(ps ,这里说的句子就是按照一定形成规则的排列的“字符串”,而命题就是不含自由变元的句子。比如说P(x)是个句子,但是不是一个命题,因为有一个自由变元x ;把x 确定下来,确定为一个常值a ,或者限制x 的范围,P (a ),∀xP (x )都才是一个命题。变元和常值都称为项)
(再ps ,重申一遍,我们现在一直在讨论都只是皮亚诺算数公理,而且选定是自然数作为一个模型。那么公理系统里的所有变元还有常值的实际意义都是自然数,谓词都是判段自然数的性质的,句子中的变元也都是自然数。)
证明过程(简要)
在证明之前,我们先来定义两个递归函数:
①证明函数:x=Pr(z)
表示的是,z所对应的命题,是x所对应的命题的充分条件。
②代入函数:对于一个含自由变元的句子A(x),还有一个项t
[A(t)]=Sub([A(x)],[t])
表示的是,将项t代入到A(x)中,得到一个新句子的哥德尔数。
引理(对角线定理):对于任一只含一个自由变元的句子ψ(x),存在一个命题φ,使得φ⟺ψ([φ])。
证明:令β(x)=ψ(Sub(x,[x])),φ=β(m),m=[β(x)]
则
φ⟺β(m)⟺ψ(Sub(m,[m]))⟺ψ(Sub([β(x)],[m]))⟺ψ([β(m)])⟺ψ([φ])得证。
以上无论是引理本身还是证明本身,无不充满着自我指涉的思想,这个引理就是哥德尔不完备定理证明的精髓所在。
下面就是哥德尔耍鬼把戏的时候了。
定理:皮亚诺算术公理系统,存在一个真命题,在公理内无法证明其为真。
证明:根据引理有φ⟺ψ([φ])
令ψ(x)为¬∃z(x=Pr(z))(其意义就是x不能被证明)