我们已经说明了基于一阶逻辑语言的相继式演算具有可靠性(soundness),也即:选定符号集S,对于任意S-formula集合Φ和S-formula φ,如果Φ⊢φ成立,那么一定有Φ⊨φ成立。可靠性是简单而直接的,我们只是把定义展开就得出了结论。更困难的反过来的问题。我们想证明基于一阶逻辑语言的相继式演算的完备性(completeness):任何Φ与φ,只要Φ⊨φ成立,就有Φ⊢φ成立。
完备性的问题最早由哥德尔给出了证明,称为哥德尔完备性定理。一旦有了完备性,今后我们便只需要根据相继式演算在字符串上的语法来检查形式化证明的正确性,就可以验证数学事实上的正确性。我们不再需要用模糊的自然语言来描述证明,而可以用清晰、可验证的形式语言来取而代之。进而,机器也可以代替人类做证明:相比于人类,机器有能力准确无误地对形式符号做变换,这比人类用自然语言论证的证明可靠得多(当然,人类可以依据直觉跳跃地得出结论,但机器只能按照演算规则做运算)。
哥德尔原始的完备性定理的证明比较复杂。后人在此基础上做了改进,给出了一个更简单的证明(尽管还是比较复杂)。
一致性
尽管相继式演算的推导规则是可靠的,但如果前提Φ中本身就“包含了矛盾”,就会根据Modified Contradiction Rule能够导出一切命题,包括错误的命题。例如,Φ={t≡t,¬t≡t}就能够演算出一切S-formula。所以,我们要定义一种对Φ的描述,要求Φ中“不包含矛盾”,这称之为一致性(consistency):如果一个S-formula集合Φ对于任意的S-formula φ都不会有Φ⊢φ和Φ⊢¬φ同时成立,就称它是一致的(consistent),记为Con Φ。
如果Φ不是一致的,就称Φ是不一致的(inconsistent),记为Inc Φ。根据定义,Inc Φ等价于:至少存在一个φ使得Φ⊢φ和Φ⊢¬φ同时成立。根据Modified Contradiction Rule,这说明对于任意的ψ都有Φ⊢ψ成立。所以,Inc Φ等价于:对于任意的ψ都有Φ⊢ψ成立。因此Con Φ等价于:存在一个ψ使得Φ⊢ψ不成立。也就是说,一个一致的公式集一定有一个“证不出来”的命题。我们把“Φ⊢ψ不成立”记为Φ⊢ψ。
Remark: 注意区分“Φ⊢¬φ”和“Φ⊢φ”,这二者的定义截然不同。Φ⊢¬φ的含义是,存在一个相继式演算的算式,其横线下方是sequence Φ ¬φ。也即,存在一个有限长的形式化证明从Φ出发得出一阶逻辑formula ¬φ。而Φ⊢φ的含义是,任何一个相继式演算的算式横下下方都不可能是Φ φ。也即,不存在一个形式化证明能从Φ出发推出φ。
同理,Φ⊨¬φ和Φ⊨φ的含义也截然不同。前者的含义是,对于任意I,只要I(Φ)=true,就有I(φ)=false;后者的含义是,存在I使得I(Φ)=true而I(φ)=false。在绝大多数情况下,二者是不等价的。
一个可满足的(satisfiable)公式集一定是一致的。证明:假设存在I使得I(Φ)=true。如果Φ不一致,那么存在φ,又有Φ⊢φ又有Φ⊢¬φ。根据可靠性,又有Φ⊨φ又有Φ⊨¬φ。所以又有I(φ)=true又有I(φ)=false,这在数学事实上是矛盾的。因此Φ一定是一致的。
Φ⊢φ等价于Inc (Φ∪{¬φ})。证明:左推右,由规则一Φ∪{¬φ}⊢¬φ,而Φ⊢φ所以由规则三Φ∪{¬φ}⊢φ,因此Φ∪{¬φ}不一致;右推左,不一致说明能推出所有命题,所以Φ∪{¬φ}⊢φ,由规则一Φ∪{φ}⊢φ,那么根据规则四Φ⊢φ。
最后,我们证明“对于任意的Φ,φ,Φ⊨φ⟹Φ⊢φ”等价于“对于任意的Φ,Con Φ⟹Sat Φ”。左边命题等价于“ 对于任意的Φ,φ,Φ⊢φ⟹Φ⊨φ”,其中Φ⊢φ等价于“Φ∪{¬φ}一致”,Φ⊨φ等价于“存在I使得I(Φ)=true而I(φ)=false”,等价于“存在I使得I(Φ∪{¬φ})=true”,也即Sat(Φ∪{¬φ})。于是,左边命题等价于“对于任意的Φ,φ,Con (Φ∪{¬φ})⟹ Sat (Φ∪{¬φ})”(A)。下面证明这等价于“对于任意的Φ,Con Φ⟹Sat Φ”(B)。(B)推(A),用Φ∪{¬φ}代入Φ即可;(A)推(B),如果Φ一致,取某一ψ∈Φ,我们有Φ∪{¬¬ψ}一致(由sequent calculus可以证明ψ和¬¬ψ有“等价性”),那么由(A)可得Φ∪{¬¬ψ}可满足,所以存在I使得I(Φ)=true且I(¬¬ψ)=true,因此Sat Φ。
这样我们就把完备性问题等价转化为了“一致性是否意味着可满足性”的问题了。
Henkin's Theorem
为了证明“一致性是否意味着可满足性”,我们容易想到采用构造性证明:为每个一致的公式集构造一个能满足它的interpretation。我们自然地期待,我们能找到一种统一的构造方式。
对于每个一致的公式集Φ,只需要能找到一个I=(A,β)使得:对于任意φ∈Φ,都有I(φ)=true。为此,只需证明存在这个I,对于任意满足Φ⊢φ的formula φ都有I(φ)=true。对于任意的term t1,t2,当φ形如t1≡t2时,我们可以要求Φ⊢t1≡t2⟹ I(t1)=I(t2)。于是自然地,我们可以基于“项的等价类”来定义I的论域:
如果Φ⊢t1≡t2,就称t1,t2等价,记为t1∼t2(之所以可以称为等价,是因为论域中的(数学事实上的)相等是等价关系)。把t所在的等价类记为tˉ={t′∈TS∣t∼t′}。所有等价类的集合记为TΦ={tˉ∣t∈TS},我们就把这个集合作为I的论域,上标Φ表示这一论域是基于Φ构造的。
对符号集的解释也容易定义:
- 定义RTΦtˉ1⋯tˉn成立当且仅当Φ⊢Rt1⋯tn;
- 定义fTΦ(tˉ1,⋯,tˉn)= ft1⋯tn;
- 定义cTΦ=cˉ;
这样我们就定义好了一个structure,称为term structure,记为TΦ。
定义对变量的解释βΦ(x)=xˉ,我们得到了一个interpretation IΦ=(TΦ,βΦ),称为term interpretation。
下面证明,term interpretation确实满足对任意t∈TS满足IΦ(t)=tˉ。只需对t结构归纳:
- 原子性的情况,IΦ(x)=xˉ与IΦ(c)=cˉ根据定义已经成立;
- IΦ(ft1⋯tn) =fTΦ(IΦ(t1),⋯,IΦ(tn)) =fTΦ(tˉ1,⋯,tˉn) =ft1⋯tn;
接着我们用term interpretation为formula赋予语义。对于原子性的情况:
- 当φ=t1≡t2时,我们已经确认Φ⊢φ⟹IΦ(φ)=true确实成立;
- 当φ=Rt1⋯tn时,Φ⊢Rt1⋯tn当且仅当RΦ(tˉ1,⋯,tˉn)成立当且仅当IΦ(Rt1⋯tn)=true。
然而不幸的是,当我们想要基于原子性情况成立做结构归纳时,在遇到量词和连接词的时候出了问题:
考虑S={R},Φ={∃xRx}∪{¬Ry∣y is a variable}。那么Φ⊢∃xRx,我们想要推出IΦ(∃xRx)=true。假如IΦ(∃xRx)=true,那么存在tˉ∈TΦ使得IΦxtˉ(Rx)=true,也即存在t∈TS使得IΦxIΦ(t)(Rx)=true。由The Substitution Lemma等价于IΦ(Rxxt)=true,也即IΦ(Rt)=true。根据上一段的证明这当且仅当Φ⊢Rt。但是由于符号集里只有R,所以t只能是变量,也即存在变量v使得Φ⊢Rv。但是Φ⊢¬Rv。所以Φ是不一致的。但事实上,Φ是一致的,只需构造一个解释I0说明它是可满足的:论域是两个自然数{0,1},指定R(0)成立R(1)不成立,所有变量都指派为自然数1。于是有I0(Φ)=true(存在0使得R成立,同时所有变量都被赋为了1因此所有Ry都不成立)。这说明Φ是一致的。所以这里产生了矛盾,因此IΦ(∃xRx)=false。可见term interpretation无法给出我们期待的结果。这里的问题出自term interpretation会根据Φ能推出的所有等式把term划分到不同的等价类,但实际的情况可能需要我们把同一等价类中的变量解释为不同的值才行:在我们的例子中,对所有term的解释并不是到值域的满射,这就使得∃xRx这样的formula允许为引入x变量的解释之外的值,换言之这样的含存在量词的formula即便缺少witness(见证)也是能够成立的。
考虑S={R},Φ={Rx∨Ry}。那么Φ⊢Rx∨Ry,我们想要推出IΦ(Rx∨Ry)=true,也即“IΦ(Rx)=true或IΦ(Ry)=true”。假如IΦ(Rx)=true成立,这等价于Φ⊢Rx,由可靠性得Φ⊨Rx。此时可以构造I1:论域为自然数{0,1},R(0)成立R(1)不成立,β(x)=1,β(y)=0,那么I1(Rx∨Ry)=true但是I1(Rx)=false,这说明Φ⊨Rx,矛盾。同理,IΦ(Ry)=true也不成立。说明IΦ(Rx∨Ry)=false。这里的问题出自“或”这一连接词,它导致我们不能推出由“或”连接的任意一个子formula究竟是真是假。例如上面我们已经证明了Φ⊢Rx不成立,还可以证明Φ⊢¬Rx也不成立:如果Φ⊢¬Rx,那么Φ⊨¬Rx,可以构造一个I1′令universe为自然数{0,1},R(0)成立R(1)不成立,β(x)=0,β(y)=1,那么I1′(Φ)=true但I1′(¬Rx)=false,矛盾。换言之,对于Φ存在一个命题φ使得Φ⊢φ与Φ⊢¬φ都不成立,这就使得我们无法对“或”连接词做归纳了:因为即便两个子命题的正面和反面都不可证,这两个子命题的“或”却是可证的。
由此可见,如果我们想继续使用term interpretation做证明,就必须采取一些补救措施,也即给Φ加上特殊的规定,使得以上两种情况不会出现。对于第一种情况,我们要求Φ对所有存在量词包含见证(contain witness),定义为:对于所有LS中形如∃xφ的formula,存在term t使得Φ⊢(∃xφ→φxt)。对于第二种情况,我们要求Φ总能证出每个命题的正面或者反面, 也即对于否定是完全的(negation complete),定义为:对于所有的φ∈LS,Φ⊢φ和Φ⊢¬φ至少一者成立(由于我们总是对一致的公式集用term interpretation,所以其实是“恰好一者”成立)。
现在假设一致的公式集Φ还同时满足contain witness与negation complete两个条件,我们可以继续对formula的结构归纳了。我们证明加强后的命题IΦ(φ)=true⟺Φ⊢φ。
- 左推右,假设IΦ(¬φ)=true,也即IΦ(φ)=false,根据归纳假设Φ⊢φ,于是由negation complete得到Φ⊢¬φ必须成立;右推左,假设Φ⊢¬φ,由于Φ一致,所以Φ⊢φ,根据归纳假设IΦ(φ)=false;
- 左推右:假设IΦ(φ∨ψ)=true,也即IΦ(φ)=true或IΦ(ψ)=true,由归纳假设这当且仅当Φ⊢φ或Φ⊢ψ。无论前者成立还是后者成立,都可以由规则七得Φ⊢(φ∨ψ)。右推左:假设Φ⊢(φ∨ψ),假如Φ⊢φ成立,由归纳假设IΦ(φ)=true;假如Φ⊢φ不成立,由negation complete得到Φ⊢¬φ必须成立,由Moified Or Rule推出Φ⊢ψ,由归纳假设IΦ(ψ)=true;
- 由The Substitution Lemma,IΦ(∃xφ)=true等价于存在t∈TS使得IΦ(φxt)=true,由归纳假设这等价于存在t∈TS使得Φ⊢φxt。只需证这等价于Φ⊢∃xφ。左推右:应用规则八即可;右推左,根据contain witness存在t使得Φ⊢(∃xφ→φxt),由Modus ponens可得Φ⊢φxt;
这样,我们就证明了对于contain witness以及negation complete的公式集Φ,如果它是一致的,那么可以找到term interpretaion IΦ使得Φ⊢φ⟺IΦ(φ)=true。这称为Henkin's Theorem。由此容易推出IΦ(Φ)=true,可见对于contain witness以及negation complete的公式集如果是一致的就是可满足的。在这样的特殊限制下,完备性成立。
符号集为可数集时的完备性
我们已经发现,如果不对Φ加以特殊的限制,那么Φ的term interpretation不足以作为那个能够满足Φ的interpretation。事实上,我们也难以找到一个其它的自然的interpretation构造使得它能直接满足Φ。但是,term interpretation距离证明完备性已经很接近了。我们想让完备性对于一般的不满足contain witness和negation complete的公式集也成立,可以证明对于一般的一个一致的公式集Φ,我们总可以做一些扩展——往Φ里面“加入”若干条formula——从而在保持一致性的前提下使得它变得contain witness和negation complete。假设经过扩展以后的公式集是可满足的,那么Φ作为它的子集自然也是可满足的了。
我们首先在限定符号集是可数集(或有限集)的情况下给出证明。
第一步,我们想对于一个一致的公式集Φ,找到一个一致的公式集Ψ使得Φ⊆Ψ同时Ψ contain witness。然而这是一个假命题,考虑以下反例:Φ={v0≡t∣t∈TS} ∪ {∃v0∃v1¬v0≡v1},Φ是可满足的(只需把所有变量和函数值都解释为自然数0,并令universe为{0,1})因此是一致的。然而,假如存在一致的Ψ包含Φ且contain witness,那么对于任意φ和任意变量x都满足存在t使得Ψ⊢(∃xφ→φxt),取φ为∃v1¬v0≡v1,x为v0就有Ψ⊢(∃v0∃v1¬v0≡v1 →∃v1¬v0≡v1v0t),于是Ψ⊢∃v1¬t≡v1。再取φ=¬t≡v1,x为v1,得到Ψ⊢¬t≡t′,但是由等式的传递性Ψ⊢t≡t′,与Ψ一致矛盾。这里出现的问题是,实际上不存在能够充当{∃v0∃v1¬v0≡v1}的witness的变量,因为每个witness变量本身都会被v0≡t吸收,而不能真正指向那个在interpretation中未被用来赋值的值。
为此,我们再添加一条限制,规定Φ中出现的所有自由变量不超过有限个(也即free(Φ):= φ∈Φ⋃free(φ)是有限集),这样就总能找到一个全新的变量来充当witness。下面证明,如果Φ是一致的且free(Φ)有限,那么存在一个一致的公式集Ψ包含Φ且contain witness。因为一阶逻辑的alphabet有限且formula长度有限,并且符号集是可数的,因此LS也是可数的,可以依次列出所有带有存在量词的formula ∃x0φ0,∃x1φ1,⋯。归纳地定义ψn:=(∃xnφn→φnxnyn),其中yn是不属于free(∃x0φ)∪free(Φ)∪ m<n⋃free(ψm)的下标最小的变量yn(这是可以做到的因为自由变量的总个数是有限的),令Φn=Φ∪{ψm∣m<n},Ψ=n∈N⋃Φn,显然Ψ contain witness且包含Φ。下面证明Ψ是一致的。首先证明每个Φn都是一致的,对n归纳,Φ0=Φ时显然成立;假设Φn+1=Φn∪ψn不一致,那么对于任意φ都有Φn∪(¬∃xnφn∨φnxnyn)⊢φ,根据sequent calculus得到Φn∪¬∃xnφn⊢φ与Φn∪φnxnyn⊢φ,而后者根据规则九得到Φn∪∃xnφn⊢φ,于是根据规则四(分类讨论规则)得到Φn⊢φ对任意φ成立,与Φn一致矛盾。此时可以证明Ψ是一致的,假如Ψ不一致,那么存在Ψ的一个有限子集Ψ0使得存在φ使得Ψ0⊢φ且Ψ0⊢¬φ,而Φ0⊆Φ1⊆⋯,一定存在某个Φm包含Ψ0,这就推出Φm不一致,矛盾。证毕。
第二步,我们想对于每个一致的公式集Ψ,找到一个一致的公式集Θ使得Ψ⊆Θ同时Θ negation complete。这里的构造很简单,我们只需列出全部的LS中的公式φ0,φ1,⋯,依次试着把每个公式“合并”到Ψ上同时确保一致性成立。具体的,令Θ0:=Ψ,Θn+1:=Θn∪φn如果Θn∪φn是一致的,否则Θn+1=Θn。令Θ:=n∈N⋃Θn。显然Θ包含Ψ并且是一致的(运用与第一步中相同的论证),只需证明它negation complete。对于任意φ,它对应着某个下标φi。如果Θ⊢¬φi不成立,也即等价地Θ∪φi一致,那么其子集Θi∪φi也一致,说明Θi+1=Θi∪φi,因此Θ⊢φi。这就说明Θ⊢¬φi与Θ⊢φi中总是至少有一个是成立的,也即negation complete。
这样,对于我们在第一步中得到的contain witness的Ψ,应用第二步的结论我们可以找到一个包含它的negation complete的Θ。Θ既然包含一个contain witness的集合,当然也contain witness(因为contain witness是对所有LS中形如∃xφ的formula定义的)。这样我们就最终对于每个一致的且自由变量不超过有限个的Φ,找到了一个一致的、contain witness的、negation complete的集合,由Henkin's Theorem它可以被term interpretation满足,由此推出Φ也可满足(这个满足Φ的解释Θ上的term interpretation限制到Φ以后的版本)。
最后我们需要去掉“Φ中出现的所有自由变量不超过有限个”的约束。我们发现,在“可满足性”的意义下一个自由变量和一个常量在语义上并没有区别,所以我们其实可以构造一个等价的公式集Φ′,其中所有的自由变量都用常数符号替换,这样做了以后用作witness的变量就不会和普通变量发生冲突了。我们只需证明这种替换在可满足性的意义下是等价的,而这其实已经包含在The Coincidence Lemma所表达的含义当中了。具体地,令S′:=S∪{c0,c1,⋯},其中ci是全新引入的常量符号。对于每个φ∈LS,做替换φ′:=φv0,⋯,vn(φ)c0,⋯,cn(φ),其中n(φ)是φ中下标最大的自由变量的下标。
令Φ′:={φ′∣φ∈Φ},下面我们要证明Φ′在S′下是可满足的。
首先,我们证明Φ′的所有有限子集Φ0′={φ1′,⋯,φn′}都是可满足的。记Φ0={φ1,⋯,φn},它是Φ的一个子集因此是关于S一致的,而Φ0是有限集因此只包含有限个自由变量,可以由已经证明的结论推出它是关于S可满足的。设S-interpretation I满足I(Φ0)=true,那么可以把每个ci赋值为I(vi)而扩展得到一个S′下的interpretation I′。于是,根据The Substitution Lemma得到I′(φv0,⋯,vn(φ)c0,⋯cn(φ))= I′v0,⋯,vn(φ)I′(c0),⋯,I′(cn(φ))(φ)= I′v0,⋯,vn(φ)I(v0),⋯I(vn(φ))(φ),由The Coincidence Lemma这就等于Iv0,⋯,vn(φ)I(v0),⋯I(vn(φ))(φ)= I(φ)=true。所以S′-interpretation I′满足I′(Φ0′)=true。
因为Φ′的所有有限子集都是可满足的,所以Φ′的所有有限子集都是一致的。这说明Φ′是一致的:如果Φ′不一致,那么存在一个ψ使得Φ′⊢ψ和Φ′⊢¬ψ同时成立,这对应于两个相继式演算证明S1,S2。因为S1,S2都是有限长的,所以取这两个证明中所用到的Φ′中的前件,构成Φ′的一个有限子集,这个有限子集是不一致的,这就推出了矛盾。
由于Φ′中实际上没有自由变量,并且是一致的,所以根据已经证明的结论推出Φ′是可满足的(因为“自由变量为空”是“自由变量有限”的一种特殊情况),设这个满足Φ′的interpretation是I′。根据The Coincidence Lemma,我们可以任意修改I′中对变量的赋值而不影响其对Φ′的满足性。例如,可以令I′(vi):=I′(ci)。于是对于任意φ∈Φ,I′(φ′)=I′(φv0,⋯,vn(φ)c0,⋯,cn(φ)) =I′v0,⋯,vn(φ)I′(c0),⋯I′(cn(φ))(φ) =I′v0,⋯,vn(φ)I′(v0),⋯I′(vn(φ))(φ) =I′(φ),可见I′(Φ)=true当且仅当I′(Φ′)=true。所以I′(Φ)=true,也即Φ是可满足的,证毕。
这样我们就在符号集可数的前提下证明了完备性。
符号集为不可数集时的完备性
下面我们在符号集不可数的前提下给出完备性的证明。
首先,我们还是想让一个S下一致的公式集Φ能找到一个包含Φ的公式集Ψ使得Ψ contain witness。在S可数的情况下,我们可以列出每个带有存在量词的公式,并为每个公式单独“分配”witness。但是当S不可数时,公式是不可列的,而变量只有可列个,显然不能保证每次都能找到一个全新的变量作为witness。但是当S不可数时,常数的个数可以是不可数个,所以我们可以每次找一个全新的常量——找到一个不属于S的常量符号并把它加入符号集——来充当witness,这样做肯定能保证contain witness。但是每次引入一个新的常量符号,就会产生许多新的包含这个新常量符号的公式,根据定义我们也需要为这些新公式赋予witness。于是再引入新常量符号,再赋予新的公式witness,不断迭代。我们需要证明这样一步一步扩充符号集的方法的确是可行的:
对于符号集S,我们为LS中每个带有存在量词的公式∃xφ分配一个特定的常量符号,记为c∃xφ,定义符号集的拓展S∗:=S∪{c∃xφ∣∃xφ∈LS},定义Φ∗:=Φ∪{(∃xφ→φxc∃xφ)∣∃xφ∈LS}。我们证明Φ∗在S∗下是一致的。只需证明Φ∗的每个有限子集都是一致的。Φ∗的每个有限子集Φ0∗都可以写作Φ0∪{∃xiφi→φixici∣1≤i≤n},其中Φ0是Φ的一个有限子集。由于Φ0有限,它只用到了有限个符号,所以可以取某个S的有限子集S0,由The Countable Case可得Φ0在S0下是可满足的,因此自然也是S下可满足的,设这个可满足的S-解释为I。对于∃xiφi,如果I(∃xiφi)=true,那么可以取ai满足Ixiai(φi)=true,否则我们可以取某个固定的a使得ai=a。令ci=ai,那么可以扩展得到一个S∗下的解释I∗。由于Φ0中没有出现新增的常数符号,因此I∗(Φ0)=true。同时根据我们的构造(以及The Substitution Lemma),I∗(∃xiφi→φixici)=true,综上可得I∗(Φ0∗)=true,因此Φ0∗一致,证毕。
归纳地,我们令S0=S,Sn+1=Sn∗=Sn∪{c∃xφ∣∃xφ∈LSn},令Φ0=Φ,Φn+1=Φn∪ {(∃xφ→φxc∃xφ)∣∃xφ∈LSn}。根据上一段的证明,归纳可得每个Φn都是一致的。令Ψ=n∈N⋃Φn,由于Φn⊆Φn+1,可见Ψ的任意有限子集都被包含在某个Φm里,所以Ψ是一致的。令S′=n∈N⋃Sn,由于Sn⊆Sn+1,所以对于任意的∃xφ∈LS′都可以找到某个Sm使得∃xφ∈LSm,因此对任意∃xφ∈LS′都可以找到某个常量符号c∈LS′使得(∃xφ→φxc)∈Ψ,也即Ψ contain witness。这样我们就证完了每个S下一致的公式集Φ能找到一个包含Φ的公式集Ψ使得Ψ contain witness。
接下来,只需证明对任意S下一致的集合Ψ都可以找到一个包含它的一致的集合Θ使得Θ是negation complete的。在The Countable Case中,我们通过依次列出所有公式并尝试把每个公式“塞进”Ψ里从而通过对自然数的归纳完成了证明。但是现在LS是不可数的,我们不再能这么做了。我们改为这样证明:取出所有LS中包含Ψ的一致的集合,得到U:={Φ∣Ψ⊆Φ⊆LS and ConS Φ}。U可以看作以集合的包含关系为偏序关系的一个偏序集。对于U上任意的一条链B,把B上的公式集全都并且来得到Θ1=Φ∈B⋃Φ,可以证明Θ1是一致的:只需证明Θ1的任意有限子集Θ0是一致的,记Θ0={φ1,⋯,φn},那么对于每个φi都可以找到某个Φi∈B使得φi∈Φi。而B是链,所以可以取出序关系最大的那个Φk,它满足Θ0⊆Φk。而Φk是一致的,因此Θ0也是一致的,证毕。
Zorn's Lemma告诉我们:在偏序集P中,如果P的每一条链都有一个P中元素作为上界,那么P中存在极大元。上一段证明了,U中任意一条链B都有上界Φ∈B⋃Φ,并且这个上界也是一个一致的公式集,也即属于偏序集U,所以根据Zorn's Lemma偏序集U有最大元,也即存在Θ∈U满足ConS Θ且不存在ConS Θ′使得Θ⊊Θ′。下面证明Θ是negation complete的:如果不是这样,那么存在φ使得Θ⊢φ和Θ⊢¬φ都不成立,Θ⊢φ等价于Θ∪{¬φ}不一致,Θ⊢¬φ等价于Θ∪{φ}不一致,所以得到Θ∪{¬φ}和Θ∪{φ}都是一致的。但是Θ是最大元,那么只能是Θ∪{¬φ}=Θ∪{φ}=Θ,也即φ与¬φ都属于Θ,与Θ一致矛盾。证毕。
这样,我们最终完成了整个完备性的证明:对于任意的符号集S,任意Φ⊆LS和φ∈LS,满足Φ⊢φ当且仅当Φ⊨φ。或等价地,Con Φ当且仅当Sat Φ。
参考文献
[1] H.-D. Ebbinghaus, J.Flum, W. Thomas: Mathematical Logic