Gödel 完备性定理

Gödel 完备性定理数理逻辑中的基本定理, 它说明了一阶语言的完备性, 即语义蕴涵与句法蕴涵等价.

通俗来说, Gödel 完备性定理说明了 “所有真的命题都是可证明的”.

1定理

定理 1.1 (Gödel 完备性定理). 是一个一阶语言, 是其中的某个公式集, 而 是其中的某个公式. 那么我们有:

2证明

我们采取 Henkin 的证明.

模型存在定理

首先只需要证明如下的模型存在定理:

定理 2.1 (模型存在定理). 如果语句集 (句法) 相容, 即 , 则 存在一个模型.

模型存在定理可以推出 Gödel 完备性定理 (1.1). 首先无妨假设 Gödel 完备性定理中的 只包含语句: 否则只需要把那些自由出现的变元视作一个新语言 中的常数, 而 也仅仅只在 上添加这些常数. 然后我们证明:

是明显的: 验证推导规则每一步即可.

假设 . 则有 没有模型. 由模型存在定理 (2.1), 知 . 利用排中律和否定规则便得 .

下面我们证明模型存在定理 (2.1).

Henkin 语言

首先我们需要扩充语言 和语句集 .

在实质性地构造之前, 我们先把 “” 和其公理加进 . 它不影响证明.

定义 2.2.

我们按如下步骤定义 :

1.

对于 中的语句 , 我们定义常数 . 定义

2.

定义 . 以此类推 .

3.

定义

被称作 Henkin 语言.

对于 中的语句 , 记它被称为 Henkin 公理.

引理 2.3. 中相容.

证明. 首先 中相容. 若否, 则 . 从而存在一段演绎使得其叶的后件形如 , 其根的后件是 , 每个节点的后件是 中的公式. 但是 的公式只是 的公式添加一些常数, 所以我们可以把所有出现在节点后件公式中, 却不在 中的常数替换成不出现在这段演绎的变元. 由于叶和根的后件是 中的公式, 所以这个替换不影响叶和根; 但替换之后所有节点的后件都是 的公式, 故 , 与 的相容性矛盾.

其次证明如果 中相容的语句集, 且其中的语句不含 , 那么 也是 中相容的公式集. 若否, 则 . 通过推导规则便知 . 因为 中的语句不含 , 利用与第一段同样的替换可得 , 其中 是不出现在 中的变元. 全称概括告诉我们 , 即 . 所以 (由存在列举). 结合 知这与 的相容性矛盾.

从而引理得证: 我们只需从 开始, 一步步添加 Henkin 公理, 每一步都利用上一段的论述即证.

最后我们利用 Lindenbaum 引理将上述语句集扩充成 上的一个完备理论, 记为 .

Henkin 模型

定义 2.4. 定义如下 - 结构:

, 其中 中所有常数, 是等价关系 .

对于 元函数 , .

对于 元谓词 , .

显然此定义是良定的, 且 Henkin 公理 (2.2) 告诉我们常数在此结构下保持不变 (即 ).

引理 2.5. 对于任意 中的语句 , 有

证明. 递推.

语句 最基础的形式是 . 此时 等价于 , 也就是等价于 .

对形成语句的规则逐一验证 (需要用到 的完备性), 唯一不平凡的验证是对规则 的验证 ( 可以通过 消去).

如果 , 那么 Henkin 公理 (2.2) 说明 . 从而便说明 是语句 的模型. 由 的定义可以直接得到 .

另一方面, 如果 , 则存在 使得 , 从而有 . 存在概括说明 .

从而证明了引理.

完成证明

模型存在定理 (2.1). 取上述 - 模型 , 由于 , 知 - 结构 也是 的模型. 但是 的扩充, 所以作为 - 结构, 也是 的模型.

对于不可数语言, 证明完备性定理需要使用 Zorn 引理.

3应用

定理 3.1. 向下 Löwenheim–Skolem 定理: 若可数句子集 是一致的, 为一个可数语言, 则它有一个论域至多 的模型.

证明. 在完备性定理的证明中, 我们证明了存在极大一致且具有见证性的 使得 . 满足项模型的商模型 . 显然它的论域 是至多可数的.

Lowenheim-Skolem-Tarski 定理要比这要强: 如果一个一阶逻辑语言 的理论存在无穷大的模型模型, 那么这个模型存在一个基数至多为 的子模型; 还可以要求, 在不违背模型基数要求的情况下, 原模型中任意元素被包含进子模型内. 这一性质 Henkin models 不满足.

(...)