DennyQi's Log

05 一阶逻辑的表达能力

本文我们将讨论一阶逻辑的表达能力。一个逻辑系统的表达能力是指,当我用系统内的符号写出一组公式时,这组公式是否描述且仅描述我所想表达的数学对象。例如,假如我用逻辑符号写出一组自然数算术的公理,是否所有满足这组公理的解释都恰好就是自然数算术系统,或者某个与自然数算术在数学上同构的系统?还是说无论如何我们都不可能写出一组自然数算术的公理,使得满足这组公理的所有解释都同构于自然数算术。

我们首先要介绍紧性定理,作为研究一阶逻辑的表达能力的重要工具。

紧性定理

在[[04 哥德尔完备性定理|基于相继式演算的一阶逻辑的完备性的证明]]中,我们反复用到了关于无穷集合的有限子集的论证。具体地,有:

  • Φφ\Phi \vdash \varphi当且仅当:存在Φ\Phi的有限子集Φ0\Phi_0满足Φ0φ\Phi_0\vdash \varphi
  • Con Φ\text{Con }\Phi当且仅当:Φ\Phi的所有有限子集Φ0\Phi_0都有Con Φ0\text{Con }\Phi_0
  • Sat Φ\text{Sat }\Phi当且仅当:Φ\Phi的所有有限子集Φ0\Phi_0都有Sat Φ0\text{Sat }\Phi_0

我们把这三条定理统称为紧性定理(The Compactness Theorem)。证明:

  • 第一条,右推左显然;左推右,任何证明都是有限长的,因此证明中用到的前提也必定是有限个;
  • 第二条,左推右:假设Con Φ\text{Con }\Phi,如果存在一个有限子集Φ0\Phi_0使得Inc Φ0\text{Inc }\Phi_0,那么存在一个φ\varphi使得Φ0φ\Phi_0\vdash \varphiΦ¬φ\Phi\vdash \neg \varphi,所以Φφ\Phi \vdash \varphiΦ¬φ\Phi \vdash \neg\varphi,这与Con Φ\text{Con }\Phi矛盾;右推左,假设所有有限子集都一致而Φ\Phi不一致,那么说明Φ\Phi能推出矛盾,根据第一条一定存在Φ\Phi的一个有限子集能推出矛盾,那么这个有限子集不一致,矛盾;
  • 第三条,由可靠性和完备性,可满足性等价于一致性;

为什么用“紧性”这个词呢?这其实借用了拓扑学中的概念:如果一个集合的任何开覆盖都存在一个有限子集覆盖,就称这个集合是一个紧集。紧性就是这种“有限覆盖”的性质。

有限覆盖如何体现在一阶逻辑上呢?对于任意SS-formula φ\varphi,我们令ModS(φ)\text{Mod}^S(\varphi)表示所有能够满足φ\varphi的解释的集合,也即ModS(φ):={II(φ)=true}\text{Mod}^S(\varphi):=\{\mathfrak{I} \mid \mathfrak{I}(\varphi)=true\}。进一步定义,对于任意SS-公式集Φ\Phi,令ModS(Φ):={II(Φ)=true}\text{Mod}^S(\Phi):=\{\mathfrak{I}\mid \mathfrak{I}(\Phi)=true\}。那么,我们有ModS(Φ)=φ0ΦModS(φ0)\text{Mod}^S(\Phi)=\bigcap\limits_{\varphi_0 \in \Phi}\text{Mod}^S(\varphi_0)

现在我们证明:对于任意公式集Φ\Phi和某个公式φ\varphiModS(φ)φ0ΦModS(φ0)\text{Mod}^S(\varphi)\subseteq\bigcap\limits_{\varphi_0 \in \Phi}\text{Mod}^S(\varphi_0)当且仅当存在Φ\Phi的一个有限子集Φ0\Phi_0使得ModS(φ)φ0Φ0ModS(φ0)\text{Mod}^S(\varphi)\subseteq\bigcap\limits_{\varphi_0 \in \Phi_0}\text{Mod}^S(\varphi_0)。证明:右推左显然;左推右:已知ModS(φ)φ0ΦModS(φ0)\text{Mod}^S(\varphi)\subseteq\bigcap\limits_{\varphi_0 \in \Phi}\text{Mod}^S(\varphi_0)。下面证明{¬φ0φ0Φ}¬φ\{\neg \varphi_0\mid \varphi_0 \in \Phi\}\models \neg\varphi。对于任意I\mathfrak{I}满足I({¬φ0φ0Φ})=true\mathfrak{I}(\{\neg \varphi_0\mid \varphi_0 \in \Phi\})=true,我们要证明I(¬φ)=true\mathfrak{I}(\neg\varphi)=true。即证I(φ)=false\mathfrak{I}(\varphi)=false。也即I∉ModS(φ)\mathfrak{I}\not\in \text{Mod}^S(\varphi)。因为我们假设了ModS(φ)φ0ΦModS(φ0)\text{Mod}^S(\varphi)\subseteq\bigcap\limits_{\varphi_0 \in \Phi}\text{Mod}^S(\varphi_0),所以我们只需证明I∉φ0ΦModS(φ0)\mathfrak{I} \not\in \bigcup\limits_{\varphi_0\in \Phi}\text{Mod}^S(\varphi_0)。这等价于Iφ0ΦModS(φ0)=φ0ΦModS(φ0)=\mathfrak{I} \in \overline{\bigcup\limits_{\varphi_0\in \Phi}\text{Mod}^S(\varphi_0)}=\bigcap\limits_{\varphi_0\in \Phi}\overline{\text{Mod}^S(\varphi_0)}= φ0ΦModS(¬φ0)=ModS({¬φ0φ0Φ})\bigcap\limits_{\varphi_0\in \Phi}\text{Mod}^S(\neg\varphi_0)=\text{Mod}^S(\{\neg\varphi_0\mid \varphi_0\in \Phi\}),成立。因此{¬φ0φ0Φ}¬φ\{\neg \varphi_0\mid \varphi_0 \in \Phi\}\models \neg\varphi。那么应用紧性定理,可知存在Φ\Phi的一个有限子集Φ0\Phi_0使得{¬φ0φ0Φ0}¬φ\{\neg \varphi_0\mid \varphi_0 \in \Phi_0\}\models \neg\varphi。然后我们就可以证明ModS(φ)φ0Φ0ModS(φ0)\text{Mod}^S(\varphi)\subseteq\bigcap\limits_{\varphi_0 \in \Phi_0}\text{Mod}^S(\varphi_0):要证对于任意IModS(φ)\mathfrak{I} \in \text{Mod}^S(\varphi),有Iφ0Φ0ModS(φ0)=φ0Φ0ModS(¬φ0)=\mathfrak{I} \in \bigcap\limits_{\varphi_0 \in \Phi_0}\text{Mod}^S(\varphi_0)=\bigcap\limits_{\varphi_0\in \Phi_0}\overline{\text{Mod}^S(\neg\varphi_0)}= φ0Φ0ModS(¬φ0)\overline{\bigcup\limits_{\varphi_0\in \Phi_0}\text{Mod}^S(\neg\varphi_0)},因此只需证I∉φ0Φ0ModS(¬φ0)\mathfrak{I}\not \in \bigcup\limits_{\varphi_0\in \Phi_0}\text{Mod}^S(\neg\varphi_0)。反证法,如果Iφ0Φ0ModS(¬φ0)\mathfrak{I}\in \bigcup\limits_{\varphi_0\in \Phi_0}\text{Mod}^S(\neg\varphi_0),那么由{¬φ0φ0Φ0}¬φ\{\neg \varphi_0\mid \varphi_0 \in \Phi_0\}\models \neg\varphi可知I(φ)=false\mathfrak{I}(\varphi)=false。也即I∉ModS(φ)\mathfrak{I}\not\in \text{Mod}^S(\varphi),矛盾。因此I∉φ0Φ0ModS(¬φ0)\mathfrak{I}\not \in \bigcup\limits_{\varphi_0\in \Phi_0}\text{Mod}^S(\neg\varphi_0)。证毕。

这意味着,对于任意公式集Φ\Phi和某个公式φ\varphi,如果我们对于每个φ0Φ\varphi_0\in \PhiModS(φ0)\text{Mod}^S(\varphi_0)看作一个“开集”,那么只要{ModS(φ0)φ0Φ}\{\text{Mod}^S(\varphi_0)\mid \varphi_0\in \Phi\}构成ModS(φ)\text{Mod}^S(\varphi)的一个开覆盖,它就一定有一个有限子覆盖。因此在我们的比喻下,任何公式φ\varphi对应的ModS(φ)\text{Mod}^S(\varphi)都是一个“紧集”。有了这条性质,我们可以用“有限子覆盖”的观点重新理解紧性定理。例如,我们来看紧性定理的第一条。Φφ\Phi \vdash \varphi(也即Φφ\Phi \models \varphi)当且仅当ModS(Φ)ModS(φ)\text{Mod}^S(\Phi)\subseteq \text{Mod}^S(\varphi)。这当且仅当ModS(φ)ModS(Φ)\overline{\text{Mod}^S(\varphi)} \subseteq \overline{\text{Mod}^S(\Phi)} =φ0ΦModS(φ0)= \overline{\bigcap\limits_{\varphi_0\in \Phi}\text{Mod}^S(\varphi_0)} =φ0ΦModS(φ0)= \bigcup\limits_{\varphi_0\in \Phi}\overline{\text{Mod}^S(\varphi_0)}。这当且仅当ModS(¬φ)φ0ΦModS(¬φ0)\text{Mod}^S(\neg \varphi)\subseteq \bigcup\limits_{\varphi_0\in \Phi}\text{Mod}^S(\neg\varphi_0),由上一段的证明这当且仅当存在Φ\Phi的有限子集Φ0\Phi_0使得ModS(¬φ)φ0Φ0ModS(¬φ0)\text{Mod}^S(\neg \varphi)\subseteq \bigcup\limits_{\varphi_0\in \Phi_0}\text{Mod}^S(\neg\varphi_0)。这当且仅当ModS(φ)ModS(Φ0)\overline{\text{Mod}^S(\varphi)}\subseteq \overline{\text{Mod}^S(\Phi_0)},也即ModS(Φ0)ModS(φ)\text{Mod}^S(\Phi_0)\subseteq \text{Mod}^S(\varphi),也即Φ0φ\Phi_0\models \varphi。所以Φφ    Φ0φ\Phi\vdash \varphi\implies \Phi_0\vdash \varphi

勒文海姆-斯科伦定理

可靠性和完备性同时成立告诉我们:一致性和可满足性是当且仅当的。在完备性的证明中,我们得知任何一致的SS-公式集Φ\Phi,都存在一个包含它的公式集ΨΦ\Psi \supseteq \Phi,使得Ψ\Psi可以被term interpretation IΨ\mathfrak{I}^\Psi满足。进而,IΨ\mathfrak{I}^\Psi也可以满足Ψ\Psi。我们考虑IΨ\mathfrak{I}^\Psi的论域,它是TST^S上的一个等价类。因此如果SS是至多可数集,那么TST^S也是至多可数集,因此IΨ\mathfrak{I}^\Psi的论域是至多可数集。这直接给出了下面这个结论:设符号集SS是至多可数的(有限或可数无穷),那么任何可满足的SS-公式集Φ\Phi都有一个满足它的解释I\mathfrak{I},其中I\mathfrak{I}的论域是至多可数集。这就是勒文海姆-斯科伦定理(The Löwenheim-Skolem Theorem)。

利用紧性定理,我们可以得到下面这个推论:选定符号集SS,设SS-formula集合Φ\Phi满足对于任意nNn\in \N都存在论域大小恰好为nn的解释In\mathfrak{I}_n满足Φ\Phi,那么存在一个论域无穷大的解释I\mathfrak{I}满足Φ\Phi。证明:对任意n2n\geq 2我们都可以构造一个公式φn:=v1vn i[n]j[n]ji¬vivj\varphi_n:=\exists v_1 \cdots \exists v_n \ \bigwedge\limits_{i \in [n]}\bigwedge\limits_{j\in [n]\land j \neq i}\neg v_i\equiv v_j。可见任何一个满足φn\varphi_n的解释的论域大小必须大于nn。由此我们构造公式集Ψ:=Φ{φnn2}\Psi:=\Phi \cup \{\varphi_n\mid n\geq 2\}。我们证明Ψ\Psi是可满足的,根据紧性定理只需证Ψ\Psi的任意有限子集是可满足的。对Ψ\Psi的任意有限子集Ψ0\Psi_0,一定存在n02n_0\geq 2使得Ψ0Φ{φi2in0}\Psi_0\subseteq \Phi \cup \{\varphi_i\mid 2\leq i\leq n_0\}。根据假设,Φ\Phi一定有一个论域大小为n0n_0的解释In0\mathfrak{I}_{n_0},于是一定有In0(Ψ0)=true\mathfrak{I}_{n_0}(\Psi_0)=true,也即Ψ0\Psi_0是可满足的。因此Ψ\Psi是可满足的。但是,满足Ψ\Psi的解释不可能只有有限大的论域(假设存在一个论域为mm的解释,那么它一定不满足φm+1\varphi_{m+1}),因此Ψ\Psi有无穷大论域的解释。所以Φ\Phi也有无穷大论域的解释。

勒文海姆-斯科伦定理定理似乎只是term interpretation的一个平凡推论,但它却显示出一阶逻辑在表达能力上的局限性:

观察到,当我们为一个公式集寻找一个解释时,并不能任意规定其论域——公式集本身具有刻画论域的能力。比如,考虑Φ={xy xy}\Phi=\{\forall x\forall y \ x \equiv y\},任何I\mathfrak{I}只要能满足Φ\Phi,就意味着I\mathfrak{I}的论域中的任意两个元素都相等,也即论域大小必须为11;考虑Φ={xy\Phi=\{\forall x\forall y (fxfyxy),(fx\equiv fy\to x\equiv y), ¬xyfyx}\neg \forall x\exists yfy\equiv x\},满足Φ\Phi的解释I\mathfrak{I}的论域必须是无穷集合,因为有限集不可能有到自己的单射而不是满射。

同时,公式集虽然能够左右论域的大小,却无法任意规定论域的大小。比如,考虑实数算数的structure Sar<={R,+,,0,1,<}S_{\text{ar}}^{<}=\{\mathbb{R},+,\cdot ,0,1,<\}:因为Sar<S_\text{ar}^<是一个可数集合,所以根据勒文海姆-斯科伦定理,任何Sar<S_\text{ar}^<-公式集一定有一个论域可数的解释。所以,我们不可能在符号集Sar<S_\text{ar}^<下找到一组公式Φ\Phi,使得能满足Φ\Phi的论域是不可数的。换言之,符号集Sar<S_\text{ar}^<下的公式集没有“规定论域为不可数集”的能力。

我们必须认识到,因为量词的存在,论域的大小是不能随意扩张的。假设Φ\Phi有一个可满足的解释I\mathfrak{I},其论域为AA。我们不能在AA中加入一个新元素aa,然后认为修改后的解释I\mathfrak{I}'依然能满足Φ\Phi:考虑Φ={xy xy}\Phi=\{\forall x\forall y \ x \equiv y\},那么满足Φ\Phi的解释的论域必须大小为11,对论域做任何扩展都会导致解释变得不可满足。但我们可以证明,如果可满足的论域本身是无穷大,那么它可以任意做扩展:

选定任意一个符号集SS,如果可满足的SS-公式集Φ\Phi存在一个满足它的论域无穷大的解释I\mathfrak{I},那么满足Φ\Phi的解释的论域大小可以比任何集合都要大(也即,对于任意集合UU,都可以找到一个满足Φ\Phi的解释IU=(AU=(AU,aU),βA)\mathfrak{I}_U=(\mathfrak{A}_U=(A_U,\mathfrak{a}_U),\beta_A)使得可以构造UAUU\to A_U的单射)。证:对于给定的集合UU,我们为UU中的每一个元素uUu \in U创造一个常量符号cuc_u,然后把符号集扩展为S{cuuU}S\cup \{c_u\mid u\in U\}。于是,我们可以构造一个S{cuuU}S\cup \{c_u\mid u\in U\}-公式集Ψ:=Φ{¬cucvu,vU,uv}\Psi:=\Phi \cup \{\neg c_u\equiv c_v\mid u,v \in U,u\neq v\}。显然,任何一个能满足Ψ\Psi的解释的论域都必须大过集合UU(存在UU到论域的单射)。并且既然这个解释可以在S{cuuU}S\cup \{c_u\mid u\in U\}下满足Ψ\Psi,就一定可以在SS下满足Φ\Phi。但我们还需验证Ψ\Psi的确是可满足的:根据紧性定理,只需证明Ψ\Psi的任意有限子集都是可满足的。这等价于证明,nN,Sat (Φ{¬cuicuj1i,jn,ij})\forall n \in \N,\text{Sat }(\Phi \cup \{\neg c_{u_i}\equiv c_{u_j}\mid 1\leq i,j \leq n,i\neq j\})。因为Φ\Phi有一个可满足的论域无穷大的解释I\mathfrak{I},所以我们总可以从I\mathfrak{I}的论域中挑出nn个元素b1,,bnb_1,\cdots,b_n。只需令a(cui)=bi\mathfrak{a}(c_{u_i})=b_i,我们就修改得到了一个解释I\mathfrak{I}'满足公式集Φ{¬cuicuj1i,jn,ij}\Phi \cup \{\neg c_{u_i}\equiv c_{u_j}\mid 1\leq i,j \leq n,i\neq j\},证毕。

Remark: 这个定理在数学实践上也有重要的应用:它可以帮助我们证明任意大的代数结构的存在性。例如,我们只需要用一阶逻辑语言写出刻画群的性质的公式集Φ\Phi,那么我们只需证明存在无穷大(比如可数无穷大)的群,就可以用上面的定理证明存在一个大于任意无穷大(比如大于不可数无穷大)的群。因为“存在无穷大的群”意味着Φ\Phi有一个无穷大论域,于是上面的定理就告诉我们论域可以任意大。由此可见,这套方法为我们提供了一套研究代数结构的一般方法。这门学科称为“模型论(model theory)”。

初等类

下面我们把讨论范围从formula限定到sentences。沿用我们讨论紧性时所用的符号“Mod\text{Mod}”,作如下定义:选定符号集SS,对任意SS-sentence集合Φ\Phi,称集合ModS(Φ):={AA(Φ)=true}\text{Mod}^S(\Phi):=\{\mathfrak{A}\mid \mathfrak{A}(\Phi)=true\}Φ\Phi的模型类(class of models)。注意,这里我们用structure A\mathfrak{A}作定义而不用interpretation I\mathfrak{I},因为在讨论sentence时不需考虑自由变量的赋值。

模型类是由全体SS-structure中的一部分构成的类(class)。我们用“类”是因为我们不想讨论“全体SS-structure”到底是否能构成一个“集合”。我们特别关心两种SS-structure类:

  • 对于任意SS-structure类K\mathfrak{K},如果存在某一个SS-sentence φ\varphi使得K=ModS(φ)\mathfrak{K}=\text{Mod}^S(\varphi),就称K\mathfrak{K}为一个初等类(elementary class);
  • 对于任意SS-structure类K\mathfrak{K},如果存在某一个SS-sentence Φ\Phi使得K=ModS(Φ)\mathfrak{K}=\text{Mod}^S(\Phi),就称K\mathfrak{K}为一个Δ\Delta-初等类(Δ\Delta-elementary class);

探讨一阶逻辑的表达能力问题,就是在探讨“怎样的SS-structure类是初等的”。如果一个SS-structure类是初等类,那么它可以用单个SS-sentence描述;如果一个SS-structure类是Δ\Delta-初等类,那么它可以用一组SS-sentence描述。判断一个SS-structure类是否是初等的,就是在判断这个structure类是否是“可公理化”的。

比如,取S={,e}S=\{\circ,e\},我们写出下面一组SS-sentence:

  • xyz (xy)z=x(yz)\forall x\forall y\forall z \ (x\circ y)\circ z=x\circ(y\circ z)
  • x xe=x\forall x \ x \circ e = x
  • xy xy=e\forall x \exists y \ x\circ y = e

于是,任何一个群都可以作为这组公式的structure。现在问:所有有限群组成的structure类K\mathfrak{K}是否是初等类或Δ\Delta-初等类?答案是不可能。假设这个K\mathfrak{K}Δ\Delta-初等类,那么存在sentence集合Φ\Phi使得K=ModS(Φ)\mathfrak{K}=\text{Mod}^S(\Phi)。因此,任何一个有限群structure都落在都能满足Φ\Phi,所以Φ\Phi可以被任何论域有限的解释满足。但是,根据勒文海姆-斯科伦定理的推论,Φ\Phi一定有一个论域无穷大的structure A\mathfrak{A}满足它。因此AModS(Φ)\mathfrak{A} \in \text{Mod}^S(\Phi)A∉K\mathfrak{A} \not\in \mathfrak{K},这与K=Mods(Φ)\mathfrak{K}=\text{Mod}^s(\Phi)矛盾。所以K\mathfrak{K}一定不是Δ\Delta-初等类。这就是说,所有有限群组成的structure类是不可被“公理化”的。

初等等价性

我们证明过Isomorphism Lemma:如果AB\mathfrak{A}\cong \mathfrak{B},那么对于任意SS-sentence φ\varphi都有A(φ)=B(φ)\mathfrak{A}(\varphi)=\mathfrak{B}(\varphi)。我们注意,“对于任意SS-sentence φ\varphi都有A(φ)=B(φ)\mathfrak{A}(\varphi)=\mathfrak{B}(\varphi)”这一条件是一阶逻辑表达能力的一个重要表述。如果两个structure在任意一个一阶逻辑sentence上的可满足性都是相同的,就意味着一阶逻辑语言无法区分这两个structure。Isomorphism Lemma就是在说:一阶逻辑语言无法区分两个同构的structure。

我们把这一性质定义为“初等等价性”:对于两个SS-structure A,B\mathfrak{A},\mathfrak{B},如果对于任何SS-sentence φ\varphi都有A(φ)=true    B(φ)=true\mathfrak{A}(\varphi)=true\iff \mathfrak{B}(\varphi)=true,就称A,B\mathfrak{A},\mathfrak{B}是初等等价(elementarily equivalent)的,记为AB\mathfrak{A}\equiv \mathfrak{B}。两个初等等价的structure对所有sentence都会做出相同的解释。于是Isomorphism Lemma可以表述为:同构的structure一定是初等等价的。

我们记得,Isomorphism Lemma的逆命题只对有限符号集成立。这意味着当符号集无限时,初等等价的structure不一定同构。这里已经出现了一阶逻辑的表达能力缺陷:当符号集无限时,总是存在两个不同构的structure是一阶逻辑无法区分的。

接下来我们要进一步证明,对任意符号集SS,只要A\mathfrak{A}是一个论域无穷大的structure,那么就一定存在一个与它初等等价的structure BA\mathfrak{B}\equiv \mathfrak{A},使得B\mathfrak{B}A\mathfrak{A}不同构。这体现了一阶逻辑表达能力的更大缺陷:任何一个论域无穷大的structure都有一个与它不同构的structure是一阶逻辑无法区分的,比如“自然数算术”或“实数算数”。

首先引入“一阶逻辑理论”的定义。选定符号集SS,对于SS-structure A\mathfrak{A},定义Th(A):={φL0SA(φ)=true}\text{Th}(\mathfrak{A}):=\{\varphi \in L_0^S\mid \mathfrak{A}(\varphi)=true\}Th(A)\text{Th}(\mathfrak{A})称为A\mathfrak{A}的理论(theory),它包含所有能被A\mathfrak{A}满足的sentence集合。

下面证明,对于两个SS-structure A,B\mathfrak{A},\mathfrak{B}AB\mathfrak{A}\equiv \mathfrak{B}当且仅当B(Th(A))=true\mathfrak{B}(\text{Th}(\mathfrak{A}))=true。也即,满足某个模型的理论的模型一定与该模型初等等价。证明:左推右:因为A(Th(A))=true\mathfrak{A}(\text{Th}(\mathfrak{A}))=true,而AB\mathfrak{A}\equiv \mathfrak{B},所以B(Th(A))=true\mathfrak{B}(\text{Th}(\mathfrak{A}))=true;右推左:对于任意一个SS-sentence φ\varphi,如果A(φ)=true\mathfrak{A}(\varphi)=true,那么φTh(A)\varphi \in \text{Th}(\mathfrak{A}),那么B(φ)=true\mathfrak{B}(\varphi)=true。如果A(φ)=false\mathfrak{A}(\varphi)=false,那么A(¬φ)=true\mathfrak{A}(\neg \varphi)=true,所以¬φTh(A)\neg\varphi \in\text{Th}(\mathfrak{A}),因此B(¬φ)=true\mathfrak{B}(\neg\varphi)=true,因此B(φ)=false\mathfrak{B}(\varphi)=false。所以但对于任意φ\varphi都有A(φ)=true    B(φ)=true\mathfrak{A}(\varphi)=true\iff \mathfrak{B}(\varphi)=true;证毕。

下面证明,对于论域无穷大的structure A\mathfrak{A},所有与它同构的structure构成的类{BBA}\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}不是Δ\Delta-初等类。证明:假设{BBA}\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}Δ\Delta-初等类,那么存在sentence集合Φ\Phi满足{BBA}=Mod(Φ)\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}=\text{Mod} (\Phi)。因为A{BBA}\mathfrak{A} \in \{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\},所以A(Φ)=true\mathfrak{A}(\Phi)=true。这说明Φ\Phi有论域无穷大的解释。由勒文海姆-斯科伦定理,Φ\Phi可以有任意无穷大的解释(比如达到A\mathfrak{A}的幂集那么大)。这说明存在一个与A\mathfrak{A}不同构的structure CMod(Φ)\mathfrak{C}\in \text{Mod}(\Phi),这与{BBA}=Mod(Φ)\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}=\text{Mod} (\Phi)矛盾。证毕。

下面证明,对于论域无穷大的structure A\mathfrak{A},所有与它初等等价的structure构成的类{BBA}\{\mathfrak{B}\mid \mathfrak{B}\equiv \mathfrak{A}\}Δ\Delta-初等类。因为AB\mathfrak{A}\equiv \mathfrak{B}当且仅当B(Th(A))=true\mathfrak{B}(\text{Th}(\mathfrak{A}))=true,所以{BBA}={BB(Th(A))=true}=Mod(Th(A))\{\mathfrak{B}\mid \mathfrak{B}\equiv \mathfrak{A}\}=\{\mathfrak{B}\mid \mathfrak{B}(\text{Th}(\mathfrak{A}))=true\}=\text{Mod}(\text{Th}(\mathfrak{A}))。因此{BBA}\{\mathfrak{B}\mid \mathfrak{B}\equiv \mathfrak{A}\}Δ\Delta-初等类。

对于论域无穷大的structure A\mathfrak{A},由Isomorphism Lemma,我们得知{BBA}\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}一定是{BBA}\{\mathfrak{B}\mid \mathfrak{B}\equiv \mathfrak{A}\}的子类。但前者不是Δ\Delta-初等类,后者却是Δ\Delta-初等类,这意味着{BBA}\{\mathfrak{B}\mid \mathfrak{B}\cong \mathfrak{A}\}一定是{BBA}\{\mathfrak{B}\mid \mathfrak{B}\equiv \mathfrak{A}\}的真子类。因此存在B\mathfrak{B}BA\mathfrak{B}\equiv \mathfrak{A}B≇A\mathfrak{B}\not\cong \mathfrak{A}

非标准模型

这意味着,自然数算术模型N=(N,+,,0,1)\mathfrak{N}=(\N,+,\cdot,0,1),或带有序关系的实数域模型R<=(R,+,,<,0,1)\mathfrak{R}^<=(\R,+,\cdot,<,0,1),都存在着与之不同构但与之初等等价的模型。这样的模型称为非标准模型(nonstandard model)。下面以自然数算术为例。

考虑所有被标准自然数算术N\mathfrak{N}满足的sentence集合,也即N\mathfrak{N}的理论Th(N)\text{Th}(\mathfrak{N})。由于N\mathfrak{N}本身就是Th(N)\text{Th}(\mathfrak{N})的一个论域无穷大的模型,所以由勒文海姆-斯科伦定理Th(N)\text{Th} (\mathfrak{N})总是存在大于任意无穷大的模型A\mathfrak{A}。因为A(Th(N))=true\mathfrak{A}(\text{Th}(\mathfrak{N}))=true,我们证明过这当且仅当AN\mathfrak{A}\equiv \mathfrak{N}。所以我们就找到了一个大于任意无穷大的自然数算术的非标准模型。

斯科伦进一步证明了:可以找到一个可数无穷大的自然数算术的非标准模型。构造自然数算术符号集下的formula集合Ψ:=Th(N){¬x0,¬x1,¬x2,}\Psi:=\text{Th}(\mathfrak{N})\cup \{\neg x\equiv 0,\neg x \equiv 1, \neg x\equiv 2,\cdots\},其中xx是任意一个变量名。我们证明Ψ\Psi是可满足的。由紧性定理只需证明Ψ\Psi的任意有限子集是可满足的。对于Ψ\Psi的任意有限子集Ψ0\Psi_0,一定可以找到一个nNn \in \N,令β(x)=n\beta(x)=n,从而得到一个解释I0=(N,β)\mathfrak{I}_0=(\N,\beta)满足Ψ0\Psi_0。因此Ψ\Psi是可满足的。勒文海姆-斯科伦定理说符号集有限时,任何可满足的公式集都有一个至多可数无穷大的解释满足它,所以Ψ\Psi有一个论域至多可数无穷大的解释I=(A,β)\mathfrak{I}=(\mathfrak{A},\beta)。因为要满足所有自然数算术,A\mathfrak{A}的论域AA不可能是有限大的。由此可得A\mathfrak{A}就是Th(N)\text{Th}(\mathfrak{N} )的一个可数无穷大的模型。因为A(Th(N))=true\mathfrak{A}(\text{Th}(\mathfrak{N}))=true,所以AN\mathfrak{A}\equiv \mathfrak{N}。接下来只需证明A≇N\mathfrak{A}\not\cong \mathfrak{N}。如果AN\mathfrak{A}\cong \mathfrak{N},那么存在一个AAN\N之间的双射π\pi。因为I(Ψ)=true\mathfrak{I}(\Psi)=true,所以对于任意nNn \in \N,一定有I(¬xn)=true\mathfrak{I}(\neg x \equiv n)=true,也即β(x)nA=π1(nN)\beta(x)\neq n^{\mathfrak{A}}=\pi^{-1}(n^{\mathfrak{N}})。也即,对于任意nNn \in \N都有π(β(x))nN\pi(\beta(x))\neq n^{\mathfrak{N}},也即π(β(x))∉N\pi(\beta(x))\not\in \N,这与π\pi是双射矛盾。所以A≇N\mathfrak{A}\not\cong \mathfrak{N},证毕。

究竟什么样的自然数算术模型是可数的,但是与自然数算术不同构?在上面构造的满足Ψ\Psi的模型A\mathfrak{A}中,我们证明了A\mathfrak{A}的论域中包含了一个N\N中没有的元素β(x)\beta(x)。我们可以想象,标准模型N\mathfrak{N}中所有元素都是沿一条数轴排列的,这是由于公式集Th(N)\text{Th}(\mathfrak{N})会规定了我们必须这么做:每个数都有一个比它恰好大1的数;每一个非零的数都有一个恰好比它小1的数;等等。那么,一定有比β(x)\beta(x)恰好大1的数,而由于β(x)\beta(x)不是0,一定也有比β(x)\beta(x)恰好小1的数。进而,有比β(x)+1\beta(x)+1恰好大1的数;β(x)1\beta(x)-1不能是0,否则意味着β(x)=1\beta(x)=1,因此还有比β(x)1\beta(x)-1恰好小1的数;……这意味着,模型A\mathfrak{A}中有一条包含β(x)\beta(x)的数轴,这条数轴是完全与N\N平行的,并且是往两侧无限延申的。进一步,β(x)+β(x)\beta(x)+\beta(x)在哪条数轴上呢?假如β(x)\beta(x)β(x)+β(x)\beta(x)+\beta(x)在同一条数轴上,那么不失一般性,存在nNn\in \N使得β(x)+n=β(x)+β(x)\beta(x)+n=\beta(x)+\beta(x)。由自然数算术的左消去律, 得到n=β(x)n=\beta(x),矛盾。所以β(x)+β(x)\beta(x)+\beta(x)又形成了一条独立的双向数轴。由此可见,初步分析已经说明非标准模型A\mathfrak{A}中存在无数条双向数轴。

所以,为了研究标准模型A\mathfrak{A}上的结论,并不一定需要在标准模型A\mathfrak{A}上研究,而可以采用任何非标准模型A\mathfrak{A}'。在非标准模型A\mathfrak{A} '上证出的结论A(Φ)    A(φ)\mathfrak{A}'(\Phi)\implies \mathfrak{A}'(\varphi)总可以还原到形式系统Φφ\Phi \vdash \varphi上。此时再用标准模型A\mathfrak{A}做解释,我们就能得出标准模型上的结论A(φ)    A(φ)\mathfrak{A}(\varphi)\implies \mathfrak{A}(\varphi)

由此可见,尽管非标准模型的存在是一阶逻辑表达能力的缺陷,但它却为我们带来了用全新的模型研究数学的可能性。最著名的实践就是非标准分析(nonstandard analysis)。1960年代,亚伯拉罕·鲁宾逊绕开了传统分析学繁琐的εδ\varepsilon-\delta定义,建立了一套把无穷大和无穷小作为论域中的元素的数学分析方法。

二阶逻辑

我们已经证明了,不可能写出一组一阶逻辑公式,使得任何满足这组公式的模型都与自然数算术模型N\mathfrak{N}同构。下面我们证明,如果改用二阶逻辑(Second Order Logic)语言,就可以做到这一点。

在alphabet上,二阶逻辑相比于一阶逻辑引入了“关系变量(relation variables)”。对于任何nN+n \in \N^+,都可以使用可数无穷个nn元关系变量V0n,V1n,V_0^n,V_1^n,\cdots。通常我们可以用大写字母X,Y,X,Y,\cdots来表示关系变量。

二阶逻辑只引入“关系变量”,而没有引入“函数变量”,这是一种处于简洁性考虑的设计。函数从数学上是一种特殊的关系:f(x,y)=zf(x,y)=z可以写成R(x,y,z)=trueR(x,y,z)=true。我们可以证明,假如我们设计了一套带有函数变量的二阶逻辑,那么这套逻辑一定可以等价地还原到不带有函数变量的二阶逻辑。深入下去,我们就再次回到了关于命题“范式(normal forms)”的讨论,就像我们在命题逻辑中所做的那样,在此不再详细展开。

二阶逻辑关于term的语法就是一阶逻辑term的语法;

一个二阶逻辑formula,除了所有一阶逻辑formula的语法的定义之外,还包括以下两条归纳定义:

  • 如果XX是一个nn元关系变量,t1,,tnt_1,\cdots,t_n都是term,那么Xt1tnXt_1\cdots t_n是一个formula;
  • 如果XX是一个nn元关系变量,φ\varphi是formula,那么Xφ\exists X \varphi是formula;(由功能完全性,我们不需要定义Xφ\forall X\varphi

在符号集SS下,全体满足二阶逻辑语法的formula集合记为LIISL^S_{\text{II}}

由于二阶逻辑和一阶逻辑在符号集的定义上完全相同,所以一个二阶逻辑structure A=(A,a)\mathfrak{A}=(A,\mathfrak{a})的定义与一阶逻辑相同。而在一个二阶逻辑解释I=(A,γ)\mathfrak{I}=(\mathfrak{A},\gamma)中,γ\gamma需要对所有关系变量做赋值。任何一个nn元关系变量VinV_i^n的赋值γ(Vin)\gamma(V_i^n)都是AnA^n的一个子集。

由此,我们在一阶逻辑的基础上定义二阶逻辑的语义:

  • I(Xt1tn)=true\mathfrak{I}(X t_1\cdots t_n) =true当且仅当在数学事实上nn元组(I(t1),,I(tn))γ(X)(\mathfrak{I}(t_1),\cdots,\mathfrak{I}(t_n))\in \gamma(X)
  • 对于nn元关系变量XXI(Xφ)=true\mathfrak{I}(\exists X \varphi)=true当且仅当在数学事实上存在CAnC\subseteq A^n使得ICX(φ)=true\mathfrak{I} \dfrac{C}{X}(\varphi)=true;其中,ICX:=(A,γCX)\mathfrak{I}\dfrac{C}{X}:=(\mathfrak{A},\gamma\dfrac{C}{X})γCX(Y):={C,Y=Xγ(Y),otherwise\gamma\dfrac{C}{X}(Y):=\begin{cases}C&,Y=X\\ \gamma(Y) & ,\text{otherwise}\end{cases}

皮亚诺公理

现在回到自然数算术上来。下面这组用二阶逻辑语言写出的公式就是刻画自然数算术模型N=(N,+N,N,0N,1N)\mathfrak{N}=(\N,+^\N,\cdot^\N,0^\N,1^\N)的皮亚诺公理(Peano Axioms):

  • x ¬x+10\forall x \ \neg x+1\equiv 0
  • x 0+xx\forall x \ 0+x \equiv x
  • x x00\forall x \ x \cdot 0\equiv 0
  • xy (x+1y+1xy)\forall x\forall y \ (x+1\equiv y+1\to x\equiv y)
  • xy(x+(y+1)(x+y)+1)\forall x\forall y(x+(y+1)\equiv (x+y)+1)
  • xy(x(y+1)(xy)+x)\forall x\forall y(x \cdot (y+1)\equiv (x\cdot y)+x)
  • P(((P0)k(PkP(k+1)))(y Py))\forall P(((P0)\land \forall k(Pk\to P(k+1)))\to (\forall y \ Py))

把这组公式记为Π\Pi。前六条都可以看作一阶逻辑命题。只有最后一条是二阶逻辑命题,它刻画了“归纳法”。我们证明任何满足Π\Pi的模型A\mathfrak{A}都有AN\mathfrak{A}\cong \mathfrak{N}

我们首先把符号限制到单个“后继函数符σ\sigma”以及“加法单位元00”上。写出下面这组公式,记为Π\Pi'

  • x ¬σx0\forall x \ \neg \sigma x \equiv 0
  • xy(σxσyxy)\forall x\forall y (\sigma x\equiv \sigma y\to x\equiv y)
  • P(((P0)k(PkP(σk)))(y Py))\forall P(((P0)\land \forall k(Pk\to P(\sigma k)))\to (\forall y \ Py))

我们在数学事实上定义N\N上的函数s:NNs:\N\to \Ns(n)=n+1s(n)=n+1。那么模型Nσ=(N,sN,0N)\mathfrak{N}_\sigma=(\N,s^\N,0^\N)显然满足Π\Pi'。下面我们证明任何满足Π\Pi'的模型A0\mathfrak{A}_0都有A0Nσ\mathfrak{A}_0\cong \mathfrak{N}_\sigma。设π:NA0\pi:\N \to A_0,令π(0N)=0A0\pi(0^\N)=0^{\mathfrak{A}_0},对任意nNn\in \Nπ(sN(n))=σA0(π(n))\pi(s^\N(n))=\sigma^{\mathfrak{A}_0}(\pi(n))。那么要证明π\piA0\mathfrak{A}_0Nσ\mathfrak{N}_\sigma的同构映射,只需证明π\piN\NA0A_0的双射。先证π\pi是满射:即证对于任意a0A0a_0 \in A_0,都存在nNn \in \N使得π(n)=a0\pi(n)=a_0。由于A0\mathfrak{A}_0满足Π\Pi',因此A0(P(((P0)k(PkP(σk)))(y Py)))=true\mathfrak{A}_0(\forall P(((P0)\land \forall k(Pk\to P(\sigma k)))\to (\forall y \ Py)))=true,也即对于任何A0A_0上的一元关系PA0P^{\mathfrak{A}_0},要证PA0=A0P^{\mathfrak{A}_0}=A_0只需证:① 0A0PA00^{\mathfrak{A}_0}\in P^{\mathfrak{A}_0};② 对任意a0A0a_0 \in A_0只要a0PA0a_0 \in P^{\mathfrak{A}_0}就有σA0(a0)PA0\sigma^{\mathfrak{A}_0}(a_0) \in P^{\mathfrak{A}_0}。令PP{anN,π(n)=a}\{a \mid \exists n \in \N,\pi(n)=a\}。先证①:π(0)=0A0\pi(0)=0^{\mathfrak{A}_0},因此0A0P0^{\mathfrak{A}_0}\in P;再证②:对于任意a0A0a_0 \in A_0,假设a0Pa_0 \in P,也即存在n1n_1使得π(n1)=a0\pi(n_1)=a_0,那么存在n2=n1+1n_2=n_1+1使得π(n2)=π(n1+1)=π(s(n1))\pi(n_2)=\pi(n_1+1)=\pi(s(n_1)) =σA0(π(n1))=\sigma^{\mathfrak{A}_0}(\pi(n_1)) =σA0(a0)=\sigma^{\mathfrak{A}_0}(a_0),所以σA0(a0)P\sigma^{\mathfrak{A}_0}(a_0)\in P;由此可见P=A0P=A_0,也即对于任意a0A0a_0\in A_0都存在nNn \in N使得π(n)=a0\pi(n)=a_0,因此π\pi是满射;再证π\pi是单射:即证对于任意的n,mNn,m\in \Nnm    π(n)π(m)n\neq m\implies \pi(n)\neq \pi(m)。我们用数学事实上的归纳法。当n=0n=0时,要证对于任意mN,m0    π(m)0A0m \in \N,m\neq 0\implies \pi(m)\neq 0^{\mathfrak{A}_0}。因为m0m\neq 0,可以设存在kNk \in \N使得m=k+1m=k+1,因此π(m)=π(k+1)=σA0(π(k))\pi(m)=\pi(k+1)=\sigma^{\mathfrak{A}_0}(\pi(k))。因为A0\mathfrak{A}_0满足Π\Pi',所以A0(x ¬σx0)=true\mathfrak{A}_0(\forall x \ \neg \sigma x \equiv 0)=true,也即任意a0A0a_0 \in A_0都有σA0(a0)0A0\sigma^{\mathfrak{A}_0}(a_0)\neq 0^{\mathfrak{A}_0},因此σA0(π(k))0A0\sigma^{\mathfrak{A}_0}(\pi(k))\neq 0^{\mathfrak{A}_0}。归纳步骤,设对于某个kk有:对于任意mN,mkm \in \N,m \neq k     π(m)π(k)\implies \pi(m)\neq \pi(k),要证对于任意mN,mk+1    π(m)π(k+1)m\in \N,m\neq k+1\implies \pi(m)\neq \pi(k+1)。如果m=0m=0,那么π(m)=0A0\pi(m)=0^{\mathfrak{A}_0},而π(k+1)=σA0(π(k))\pi(k+1)=\sigma^{\mathfrak{A}_0}(\pi(k)),同理应用Π\Pi'中的第一条可得σA0(π(k))0A0\sigma^{\mathfrak{A}_0}(\pi(k))\neq 0^{\mathfrak{A}_0}。如果m0m \neq 0,那么存在uNu \in \N使得m=u+1m=u+1,于是uku\neq k,并且π(m)=σA0(π(u))\pi(m)=\sigma^{\mathfrak{A}_0}(\pi(u))。因为A0(xy(σxσyxy))=true\mathfrak{A}_0(\forall x\forall y (\sigma x\equiv \sigma y\to x\equiv y))=true,所以对于任意x0,y0A0x_0,y_0\in A_0σA0(x0)=σA0(y0)    x0=y0\sigma^{\mathfrak{A}_0}(x_0)=\sigma^{\mathfrak{A}_0}(y_0)\implies x_0=y_0。根据uku\neq k,有π(u)π(k)\pi(u)\neq \pi(k),所以σA0(π(u))σA0(π(k))=π(k+1)\sigma^{\mathfrak{A}_0}(\pi(u))\neq \sigma^{\mathfrak{A}_0}(\pi(k))=\pi(k+1),也即π(m)π(k+1)\pi(m)\neq \pi(k+1);证毕。

对于任意满足Π\Pi的模型A=(A,+A,A,0A,1A)\mathfrak{A}=(A,+^\mathfrak{A},\cdot^\mathfrak{A},0^\mathfrak{A},1^\mathfrak{A}),我们可以定义符号σ\sigma,并在A\mathfrak{A}上赋予它语义aA,σA(a):=a+A1A\forall a \in A,\sigma^\mathfrak{A}(a):=a+^\mathfrak{A} 1^\mathfrak{A}。下面证明模型Aσ=(A,σA,0A)\mathfrak{A}_\sigma=(A,\sigma^\mathfrak{A},0^\mathfrak{A})满足Π\Pi'Aσ(x ¬σx0)=true\mathfrak{A}_\sigma(\forall x \ \neg \sigma x \equiv 0)=true当且仅当aA,σA(a)0A\forall a \in A,\sigma^\mathfrak{A}(a)\neq 0^\mathfrak{A},当且仅当aA,a+A1A0A\forall a \in A,a+^\mathfrak{A} 1^\mathfrak{A}\neq 0^\mathfrak{A},当且仅当A(x¬x+10)\mathfrak{A}(\forall x \neg x+1\equiv 0),成立;Aσ(xy(σxσyxy))=true\mathfrak{A}_\sigma(\forall x\forall y (\sigma x\equiv \sigma y\to x\equiv y))=true当且仅当a,bA,σA(a)=σA(b)\forall a,b \in A,\sigma^\mathfrak{A}(a)=\sigma^\mathfrak{A}(b)     a=b\implies a= b,当且仅当a,bA,a+A1A=b+A1A\forall a,b \in A,a+^\mathfrak{A} 1^\mathfrak{A}=b+^\mathfrak{A} 1^\mathfrak{A}     a=b\implies a= b,当且仅当A(xy (x+1y+1xy))\mathfrak{A}(\forall x\forall y \ (x+1\equiv y+1\to x\equiv y)),成立;同理,Aσ(P(((P0)k(PkP(σk)))(y Py)))=true\mathfrak{A}_\sigma(\forall P(((P0)\land \forall k(Pk\to P(\sigma k)))\to (\forall y \ Py)))=true当且仅当A(P(((P0)k(PkP(k+1)))(y Py)))=true\mathfrak{A}(\forall P(((P0)\land \forall k(Pk\to P(k+1)))\to (\forall y \ Py)))=true。因此Aσ(Π)=true\mathfrak{A}_\sigma(\Pi')=true。这意味着AσNσ\mathfrak{A}_\sigma\cong \mathfrak{N}_\sigma

最后证明AN\mathfrak{A}\cong \mathfrak{N}。根据AσNσ\mathfrak{A}_\sigma\cong \mathfrak{N}_\sigma,我们有NA\N \to A的双射π\pi,满足π(0N)=0A\pi(0^\N)=0^\mathfrak{A},对任意nN,π(σN(n))=σA(π(n))n \in \N,\pi(\sigma^\N(n))=\sigma^\mathfrak{A}(\pi(n))。所以为了证明AN\mathfrak{A}\cong \mathfrak{N},只需证明π\pi+N,N,1N+^\N,\cdot^\N,1^\N也保持结构:

乘法单位元:π(1)=π(σN(0))=σA(π(0))=0A+A1A\pi(1) = \pi(\sigma^\N(0)) = \sigma^\mathfrak{A}(\pi(0)) = 0^\mathfrak{A} +^\mathfrak{A} 1^\mathfrak{A}。由Π\Pi的第二条x 0+xx\forall x \ 0+x \equiv x,得证。

加法:要证n,mN,π(n+Nm)=π(n)+Aπ(m)\forall n,m\in \N,\pi(n+^\N m)=\pi(n)+^\mathfrak{A} \pi(m)。对mm做数学事实上的归纳法。基例:m=0m = 0。我们有π(n+N0)=π(n)=π(n)+A0A\pi(n +^\N 0) = \pi(n) = \pi(n) +^\mathfrak{A} 0^\mathfrak{A}(由Π\Pi的第二条x x+0x\forall x \ x + 0 \equiv x)。归纳:假设 π(n+m)=π(n)+Aπ(m)\pi(n + m) = \pi(n) +^\mathfrak{A} \pi(m),要证 π(n+m+1)=π(n)+Aπ(m+1)\pi(n + m + 1) = \pi(n) +^\mathfrak{A} \pi(m + 1)。我们有π(n+m+1)\pi(n + m + 1)。代入归纳假设,得到(π(n)+Aπ(m))+A1A(\pi(n) +^\mathfrak{A} \pi(m)) +^\mathfrak{A} 1^\mathfrak{A}。只需证(π(n)+Aπ(m))+A1A(\pi(n) +^\mathfrak{A} \pi(m)) +^\mathfrak{A} 1^\mathfrak{A} =π(n)+A(π(m)+A1A)=\pi(n) +^\mathfrak{A} (\pi(m) +^\mathfrak{A} 1^\mathfrak{A})。由Π\Pi的第五条xy(x+(y+1)(x+y)+1)\forall x \forall y (x + (y + 1) \equiv (x + y) + 1),得证。

乘法:要证n,mN,π(nNm)=π(n)Aπ(m)\forall n,m\in \N,\pi(n\cdot^\N m)=\pi(n)\cdot^\mathfrak{A} \pi(m)。对mm做数学事实上的归纳法。基例:m=0m = 0。我们有π(nN0)=π(0)=π(n)A0A\pi(n \cdot^\N 0) = \pi(0) = \pi(n) \cdot^\mathfrak{A} 0^\mathfrak{A}(由Π\Pi的第三条x x00\forall x \ x \cdot 0\equiv 0)。归纳:假设 π(nm)=π(n)Aπ(m)\pi(n \cdot m) = \pi(n) \cdot^\mathfrak{A} \pi(m),要证 π(n(m+1))=\pi(n \cdot(m + 1)) = π(n)Aπ(m+1)\pi(n) \cdot^\mathfrak{A} \pi(m + 1)。我们有π(n(m+1))=π(nm+n)=π(nm)+Aπ(n)\pi(n \cdot(m + 1)) =\pi(n\cdot m+n)=\pi(n\cdot m)+^\mathfrak{A}\pi(n)。由归纳假设,得到π(nm)=π(n)Aπ(m)\pi(n \cdot m) =\pi(n) \cdot ^\mathfrak{A} \pi(m)。因此只需证π(n)Aπ(m)+Aπ(n)\pi(n) \cdot ^\mathfrak{A} \pi(m)+^\mathfrak{A} \pi(n) =π(n)A(π(m)+A1A)=\pi(n) \cdot^\mathfrak{A} (\pi(m) +^\mathfrak{A} 1^\mathfrak{A})。由Π\Pi的第六条xy(x(y+1)(xy)+x)\forall x\forall y(x \cdot (y+1)\equiv (x\cdot y)+x),得证。

综上,我们证明了任何满足皮亚诺公理的模型都与自然数算术的标准模型N\mathfrak{N}同构。我们把任何满足皮亚诺公理的模型都称为一个皮亚诺系统(Peano System),任何皮亚诺系统都是同构的。全体皮亚诺系统构成的一个模型类,我们证明过不存在一组一阶逻辑公理的模型类为全体皮亚诺系统。而皮亚诺公理中除了最后一条“归纳公理”以外都是一阶逻辑公式,所以不存在一组一阶逻辑公理刻画“归纳公理”。这是一阶逻辑表达能力的局限性。必须把一阶逻辑扩展到二阶逻辑,才可以对自然数算术系统做“同构的刻画(characterize up to isomorphism)”。

二阶逻辑的完备性不成立

然而,二阶逻辑尽管相比于一阶逻辑在表达能力上有所增强,却失去了完备性。

让我们首先来证明,二阶逻辑中紧性定理的第三条“Sat Φ\text{Sat }\Phi当且仅当Φ\Phi的所有有限子集Φ0\Phi_0都有Sat Φ0\text{Sat }\Phi_0”是不成立的:

我们知道在数学事实上,对任意集合AA,如果AAA\to A的任何函数只要是单射就能推出满射,那么AA必须是有限集合。那么我们可以写出二阶逻辑公式φfin:=X((X(=1yXxy)xyz((XxzXyz)xy)))yxXxy\varphi_{\text{fin}}:=\forall X((\forall X(\exists ^{=1}yXxy)\land \forall x\forall y \forall z((Xxz\land Xyz)\to x\equiv y)))\to \forall y\exists x Xxy用来刻画论域是有限集合(其中,=1xφ\exists^{=1}x\varphixφy(φyxxy)\exists x\varphi \land \forall y(\varphi\dfrac{y}{x}\to x\equiv y)的缩写。我们再次对任意n2n\geq 2引入φn:=v1vn i[n]j[n]ji¬vivj\varphi_n:=\exists v_1 \cdots \exists v_n \ \bigwedge\limits_{i \in [n]}\bigwedge\limits_{j\in [n]\land j \neq i}\neg v_i\equiv v_j用来刻画论域的有限下界。由此,我们构造出一个sentence集合Φ:=φfin{φnn2}\Phi:=\varphi_{\text{fin}} \cup \{\varphi_n\mid n\geq 2\}。那么,任何大小为nn的structure都能满足φfin\varphi_{\text{fin}},但不能满足φn+1\varphi_{n+1}。所以Φ\Phi不存在有限大的structure满足它。但是,Φ\Phi的任何有限子集确实都是可满足的。所以如果紧性定理成立就会推出Φ\Phi也是可满足的,矛盾。因此对于二阶逻辑,紧性定理不成立。

但是,紧性定理是完备性的直接推论。回顾我们对紧性定理的证明就会发现,其证明过程没有用到任何一阶逻辑独有的而二阶逻辑没有的特殊性质。那么,假设二阶逻辑有完备性,那么我们应该能够证明上面这条紧性定理成立,矛盾。于是我们只能得出结论:此时完备性不成立。

这里,要注意语词的使用。当我们讨论“二阶逻辑的完备性”时,不仅涉及命题所用的语言“二阶逻辑”,还涉及用于形式化证明的推导规则。紧性定理不成立意味着,我们不可能找到一组推导规则使得完备性成立。如果我们找到了,我们就一定能推出紧性定理成立。所以,严格的表述应该是:对于任何一组二阶逻辑的形式化证明规则\vdash,都可以找到一组二阶逻辑公式集Φ\Phi和一个二阶逻辑公式φ\varphi,使得Φφ    Φφ\Phi \vdash \varphi\iff \Phi\models \varphi不成立。

可见,正是因为二阶逻辑表达能力的增强,使得我们可以直接刻画“论域有限”这一性质。但正是因为表达能力的增强,使得“二阶逻辑的完备性”不再成立。随着逻辑系统的表达能力的增强,它会失去原有的良好性质。我们之后还将不断看到这一点。

数学论域

当讨论“语义”(模型、解释等等)时,我们总是强调“数学事实”,它是“客观”的。然而,这里的“客观”并不是指数学事实一定是本体论意义上的存在。每当我们讨论“语义”或“数学事实”时,我们其实已经涉及了“哲学”。这个“哲学”包括每个做出语义解释的人所采取的本体论假设和认识论假设。不同的人当然会有不同的本体论假设和认识论假设,所以严谨地来看每个人都只是在研究他自己的数学。但是,很多时候会有一群人对于“数学事实”会采取几乎完全相同的假设,所以可以认为当这些人共同讨论“语义”时,它们所指向的对象是“客观的”。我们称它们奉行同一种“主义”。在不同“主义”的人群看来,数学事实有可能完全不同的。

奉行同一种“主义”的人会在相同的模型下对数学事实做出相同的判断,但这并不意味着他们已经完全弄清了它们是如何“做出判断”的。人们总是在使用和习惯的过程中加深对数学的了解,而不是在一开始就已经彻底厘清数学在根基上所有的细节。归根结底,数学只是一种特殊的语言。可以想象,数学在最初只是一群人约定而成的模糊的直观。直到“公理化”被提出,数学家们才开始采用“证明”的方法来澄清对数学事实的判定过程。可以说,现代数学就是公理化的数学。

在公理化的数学中,必须小心对待公理中提出的数学对象。在以前,人们依赖于一些“不需加以解释的数学对象”,例如几何原本中的“点”和“线”,朴素集合论中的“集合”。然而正是这些人们曾以为“不需加以解释”的概念引发了问题。罗素悖论就产生于对“集合”概念的阐释不清。人们意识到,并不是任何一组东西组合在一起都可以被称为集合。

ZFC公理化集合论的提出,就是对“什么是集合”的澄清。有的人希望把ZFC集合论作为数学的根本理论。它声称一切数学对象都可以还原为集合,一切数学对象之间的关系都可以还原为\in关系,并提出了一套公理作为一切数学讨论的起点。既然所有东西都是集合,那么我们就不必区分数学对象在“类型(type)”上的区别,比如“自然数”或“群”或“映射”都是集合。同时,既然所有东西都是集合,那么这样一套理论肯定可以用一阶逻辑写出,再也不用担心“关系”或“函数”不是一阶对象不能填到量词中,因为现在“集合到集合的映射”也是“集合”,所有对象都是一阶对象。

既然ZFC公理系统可以用一阶逻辑表示。而一阶逻辑本身也是一个数学对象。所以,如果我们相信ZFC公理系统能表示所有数学,那么原则上一阶逻辑也可以表示所有数学。我们可以把ZFC的所有公理用一阶逻辑公式写出,而当我们对这组公式做语义解释时,我们使用一个论域UU,它包含一切数学对象(一切集合)。在这个意义下他们认为,一切数学都可以用一阶逻辑“表达”。以皮亚诺算数为例,尽管我们已经证明我们不可能写出一组一阶逻辑公式使得满足这套公式的模型一定与自然数算术模型同构,但我们总是可以写出一组一阶逻辑公式来表示一个“皮亚诺系统”——任意某个“满足”“皮亚诺公理”这一数学对象的对象,其中关系词“满足”和名词“皮亚诺公理”最终都会被还原为“集合”。

注意,我们必须要区分“在观念上认同ZFC公理系统”和“研究‘ZFC公理’这个形式系统”,这二者截然不同。不采用ZFC系统的数学家也可以研究ZFC形式系统,因为本质上他只是在研究字符串的排列组合。但是,“在观念上认同ZFC公理系统”的人会应用“他观念中ZFC系统的结论”来预测ZFC形式系统的行为。也即,不同主义的数学家因为观念不同所以会使用不同的工具,而形式系统却是客观的(对于不同主义的人而言是相同的),因为形式系统是基于物理实体的(当然,“形式系统是客观的”是我本人的观点,某些唯心主义者可能并不认同)。ZFC公理系统的信仰者之间可以用符号把ZFC公理系统中的命题写出来,并且讨论它的含义,这时他们讨论的是他们所写的符号所指向的那个他们观念中共同的东西,这就是他们对他们所写的那串符号的语义的解释。他们也可以只做口头的交流,尽管只使用模糊的自然语言,但他们仍然能够指向他们共同观念中的东西。

这样,人们本质上把观念上的数学还原为了形式上的数学。我们可以把“ZFC公理系统”本身作为观念上的数学命题的判定标准。假如这么做真的有效,那么人们就从根本上解决了“什么是数学”的问题:数学对象只是形式符号,要判断数学命题的真假只需在形式系统中判断该命题是否可证。

然而随着对逻辑系统的进一步研究,人们却不得不承认这一做法过于简单化了。首先,人们证明了连续统假设(一个集合论命题)不可能由ZFC公理推出,同时又证明了连续统假设的否定也不可能由ZFC公理推出。这说明,ZFC并不具有否定完全性(negation completeness)。如果我们要求我们的数学观念中每个命题都要有一个真或假,那么我们肯定不能把ZFC公理系统作为我们的基本观念。哥德尔进一步证明了,这种否定完全性的丧失是形式化方法本身的缺陷,任何表达能力到达一定水平的公理系统都注定会丧失否定完全性。这说明了两个问题。第一,人们目前对数学的根基是什么尚且是无知的。第二,就算我们找到了数学的根基,它也不可能被公理系统描述。或许我们必须承认,人类的语言是有局限性的,总有一部分数学真理超越了语言所能描述的范畴。当然,只用简单的自然语言是无法讨论清楚这个问题。我们必须要在下一节看到哥德尔不完全性定理的证明之后,才能对此有更深刻的理解。

参考文献

[1] H.-D. Ebbinghaus, J.Flum, W. Thomas: Mathematical Logic