1.2. 扩展集论语言
由于在接下来的实践中, 我们将极度重视所用公式的复杂度, 我们需要严格考察集合论语言的扩展会给理论带来什么变化. 首先, 我们来观察加入谓词后会发生什么; 值得注意的是, 零元谓词只有真假两个可能, 因此加入之并无意义.
定义 1.2.0.1. 考虑扩展一个 元谓词 的集合论语言 为例. 我们首先定义对应的 Levy 层级:
• | , 和 是 公式. |
• | 余下照抄. |
对应的, 我们会考虑各种 公理模式.
元定理 1.2.0.2. 任给 的理论 , 中的同一套理论对 保守, 即它不会在原来的语言 中额外证明任何公式.
定义 1.2.0.3. 给定 中的公式 和理论 . 我们称 中的理论 为带有谓词 解释的 扩展, 记为 , 这个具体的 称作 的解释.
在指定理论 后, 我们定义以下从 公式 到 公式 的满映射, 后者称作 在解释 下的翻译:
• | 和 的翻译仍是 和 . |
• | 的翻译是 . |
• | 其余递归定义忠实地保持句子的结构. |
元定理 1.2.0.4. 中理论 可证公式 , 当且仅当 中 可证 .
证明. 我们先证明仅当, 假定 是 中一个对 的证明序列, 我们在其上从前向后归纳证明 可证每一个公式的翻译, 显然唯一值得讨论的就是 新增的公理, 而这条公理的翻译是 显然重言, 因此证毕.
推论 1.2.0.5. 理论 仍对理论 保守.
元定理 1.2.0.6. 我们区分以下三个情况. 注意 对 保守, 与 在语言 中说的是同一件事.
• | 是 公式, .
| ||||||
• | 是 公式, .
| ||||||
• | 是 公式.
|
接下来我们考察加入函数后会发生什么. 这比加入谓词要困难得多!
定义 1.2.0.7. 考虑扩展一个 元函数 的集合论语言 为例. 我们首先定义对应的 Levy 层级:
• | 我们首先定义这个层级最底端的公式类, 称为 公式:
| ||||||||||
• | 我们现在交错地定义 和 语句, 方案照抄. |
对应的, 我们会考虑各种 公理模式.
注意到 可以作为 元谓词符号, 我们记它们对应的 Levy 层级为 .
元定理 1.2.0.8. 任给 的理论 , 中的同一套理论对 保守.
定义 1.2.0.9. 给定 中的公式 和理论 . 我们称 中的理论 为带有函数 解释的 扩展, 记为 , 这个具体的 称作 的解释.
在指定理论 后, 我们定义以下两个从 公式到 公式的满映射.
第一个称作 在解释 下的存在翻译 :
• | 原子公式 (此处 是 中的非平凡项) 的翻译是 (此处 是一个新的未出现在 和 中的变元符号), 原子公式 (此处 是 中的项) 的翻译如下递归地定义:
| ||||
• | 原子公式 的翻译是 . | ||||
• | 其余递归定义忠实地保持句子的结构. |
第二个称作 在解释 下的任意翻译 :
• | 原子公式 的翻译是 , 原子公式 的翻译如下递归地定义:
| ||||
• | 原子公式 的翻译是 . | ||||
• | 其余递归定义忠实地保持句子的结构. |
元定理 1.2.0.10. 如果 , 则 中理论 可证公式 , 当且仅当 中 可证 , 也当且仅当 中 可证 .
评注. 注意到相比于新增谓词的情况, 这里需要额外要求 可证一件事, 这件事将被称作 可证 是一个函数的定义.
推论 1.2.0.11. 若 可证 是一个函数的定义, 则 对 保守.
本节的最后, 我们来考虑 不足以证明某公式 确定义一个函数的情况.
第一种可能是 . 我们这时称 可证 定义一个预函数, 这是因为我们只需要再断言确实存在这样的 就能让它成为函数, 而这往往可以通过合理地扩张理论 的证明能力来实现.
第二种可能是 只能证明 , 我们在强调这一情形时时候往往意味着 可证这样的 不可能唯一, 那么加入一个新的函数符号来满足这个公式就相当于是加入了一个 Skolem 函数. 通过一些模型论手段, 我们仍然能证明 对 保守, 但这并不是能通过如上的翻译过程解决的. 这种时候, 我们很难自如地将 中的公理模式扩展为 中的类似的公理模式, 我们指出以下定义和事实.
定义 1.2.0.12. 我们考虑加入一元函数符号 得到的扩展集合论语言 , 直观上我们希望 能行使全局选择函数的功效; 我们在新语言中考虑以下公理和公理模式:
• | 全局选择公理: |
• | 扩展分离公理模式: 任给 个变元的 公式 , |
• | 扩展替代公理模式: 任给 个变元的 公式 , |
在此语言中重新定义以下公理组:
• | , , 和 仍然代指以前的公理组, 这意味着分离公理模式和替代公理模式中出现的公式必须是 中的公式. |
• | , , 和 指的是将分离公理模式和替代公理模式改成对应的扩展分离公理模式和扩展替代公理模式所得的理论. |
• | 指的是在 中将选择公理改成全局选择公理所得的公理组, 同理. |
• | 指的是在 中将分离公理模式改成对应的扩展分离公理模式所得的公理组, 同理且也扩展替代公理模式. |
元定理 1.2.0.13. , , 和 均对未扩展版本保守, 不可证 , 不可证 , 可证 , 对 保守.
评注. 是否相对 保守仍属世界未解之谜. 不可证 和 不可证 的直观原因是我们没有获得扩展分离公理模式, 因此不能从集合 上面用含 的公式分离出 上的选择函数; 当然构造对应的模型是比较头痛的, 请读者查阅最后一章以获得此证明的细节.
证明. 我们这里摘录 Haim Gaifman 在 Global and Local Choice Functions 中获得的 对 保守的初等证明. 在集合论中, 初等往往意味着我们没有使用力迫法, 因此读者应当在合适的时候再来看这个证明. 以下常有此情况, 望读者海涵.
考虑所有形如 的结构, 其中 是极限序数, 是整个 上的选择函数. 将全体这类结构合称一个真类 . 值得注意的是, 被子结构关系 (记为 , 即便它并不是) 束成一树, 且其上同高度的节点必然是同一个 上的不同结构. 我们现在归纳地对自然数 指出新的真类 , 使得它们满足以下要求:
1. |
|
2. |
|
3. |
|
4. | 每个 都对其内的结构升链取并操作封闭, 换言之被子结构关系束成一树. |
如果这一系列 确能满足条件地被构造出来, 我们宣称 对 保守. 这是因为:
证明. 对每个 和 , 有性质 我们知道存在 使得每个 中秩 的结构都能被扩张为一个 中秩 的结构, 而根据性质 这个结构也在 中, 于是必然存在最小的 使得每个 中秩 的结构都能被扩张为一个 中秩 的结构. 于是对给定 , 我们可以造出序数多个 使得 是如前所要的 , 而 是极限时 是前面所有东西的极限. 记这个序数的真子类为 .
鉴于性质 , 我们确实可以断言: 任给 中两序数 , 总有任何 中秩 的结构都能被扩张为一个 中秩 的结构 (极限步时我们有一串升链); 按定义可见 是闭无界的. 现在做类 , 则显然据性质 我们可以加强地说: 时, 任给 中两序数 , 总有任何 中秩 的结构都能被扩张为一个 中秩 的结构, 且这个秩 的结构其实是秩 的结构的 级初等子结构 (保持且反射所有量词数量不超过 个的公式的真假).
于是我们其实在 里说明了: 任给 级公式 , 若其中全体自由变元均取值于某 , 其中 且 , 则 当且仅当 . 再简略地说: 这些 全都是全宇宙 的 级初等子模型.
接下来我们断言: 任给 的有穷子集 , 都存在 使得所有不小于它的 都满足 ( 可知的) 中每个结构都是 的模型.
如果 里面没有任何替代公理, 那 就行了. 我们现在来查看某个特定的扩展语言中的句子 , 假定其中有 重量词, 我们证明: 任给 对应的 中的结构 , 如果 , 则 .
这个证明其实相当简单. 假定 , 我们将 里的 扩展到 里的 , 这样 就是 的 级子模型; 在 里面, 确实见证 , 这恰好是因为前提 说明这些 . 又由于这个句子的量词数量是 , 作为 级初等子模型自然同样赞同这个句子. 这就完成了证明.
现在来构造这一列 . 由归纳法, 我们不妨假定不小于 的逐级 均已按满足条件的方式构造好了, 现在要 同样满足诸要求.
先构造. 为了满足第一条, 我们直接从 里面选出满足以下要求的 合成所要的 : 对任何扩展语言里的 级公式 , , 如果存在 扩张 且 , 则早已有 . 现验诸性质. 第一条已经由定义满足, 第二条也由定义显然; 第四条由归纳假设并起来还在 里面, 注意到扩张两次也是扩张由所并结构的要求即知. 以下证明第三条同样正确, 这是整个证明的核心部分. 注意到由整个归纳假设, 我们只需要构造不小于 的 (回退一层, 然后变大到本层, 然后变得不小于, 这就是大于了).
我们先对每个由 中结构构成的集 定义一个同样由 中结构构成的 , 使得其中有且仅有 中结构的扩张, 且 中所有结构具有相同的 . 如果 中所有结构已经同秩, 则直接取 ; 否则注意到 在 中闭无界, 把 中每个结构的秩生成的闭无界类全部交起来 (只有集合多个) 仍然是个闭无界类, 取其中最小者, 然后对 中每个结构挑选秩等于之的一个扩张, 收集起来即得 .
现在我们来考虑建造 结构到 结构的扩张, 一个自然的想法是看看某个 结构 距离成为一个 结构有多远, 于是我们对每个 级公式 考虑以下集合 , 它收集了全体这样的属于 的 : , 但存在 的扩张 满足 . 我们立即得到 , 且 是 结构当且仅当 对任何 都是空集.
我们先来看同在 中的扩张 , 这是 级初等扩张就说明 就必有 , 换言之 ; 特别的, 如果 , 我们取扩张 , 则 , 于是 . 我们的构造方案是: 先反复如上过程, 在集合步内将 变空, 然后重复 步将每个 对应的 变空; 为了防止这个空了别的又不空了, 我们的这个 步要让每个公式都被共尾地枚举 (这显然是可以做到的); 最后, 我们把这一串结构构成的升链全部并起来就可以了. 下面来实现这个想法.
对 和 级公式 , 我们定义以下 : 如果已有 , 则 ; 否则, 取最小的 使得 , 然后取最小的 使得存在 的秩为 的扩张 以满足 . 我们把所有满足这要求的 收集起来得到 , 注意其中每个 都有相同的秩 . 进一步, 对于一集结构 , 我们令 (这里加一下是为了统一所有结构的秩). 由定义我们知道 中有且仅有 中结构的扩张, 且其中所有结构秩相同, 且任给 和 若 不空则必有 是前者的真子集.
现在我们归纳地定义 如下:
1. |
|
2. |
|
3. | 如果 是极限序数, 构成一个结构升链 |
由定义可知, 每个 都是一集等秩的 结构, 且任给 , 若 不空, 则有 构成升链, 且 满足 , 于是总有一个 迫使 .
现在我们将 中秩 的全体结构收为一集 . 记 , 为 的基数, 为 的后继基数; 简单的势的比较就说明任给 都有 . 不妨设 中所有结构的秩都是 , 重复以上过程, 我们就得到一列 和 . 取 , 我们就知道任何 都满足 . 于是我们令这个 为 .
评注. 不难意识到, 我们其实并没有完全发挥这个构造的性质 的威力. Gaifman 的论文中进一步指出, 如果一个 模型中的全体序数 (在这个模型认为的 下) 构成的良序集在我们 (外部世界) 看来是 共尾的, 则只需 (同样从外部) 添加一个其上的全局选择函数就能让它成为一个 模型 (而无需添加任何新的集合).