3. ZF 与 NBG
3.1ZF
定义 3.1.1 (ZF 公理). 集合论的语言是一个只带一个等词和一个二元谓词的语言 . 将 记为 . 这个 被称为 " 属于 ".
首先, 我们有以下这些公理.
1. |
|
2. |
|
3. |
|
4. |
|
5. |
|
注意到配对公理 (Pair)、并集公理 (Union)、幂集公理 (Power) 都是对某个 存在一个 这样的论断, 我们给这些 起一个名字, 起名这件事可靠则是由其定义以及外延公理 (Ext) 保证的.
配对公理中, 我们记 . 并集公理中, 我们记 . 幂集公理中, 我们记 .
不难用配对公理归纳地对每个自然数 定义出 . 我们又记 , 并特别地记 , .
现在我们给出一个指出存在某个集合的公理.
6.
这个无穷公理的前半部分指出了一个没有其他集合属于它的集合, 我们记为 , 它满足 .
最后, 我们给出两个公理模式, 它们给每个一阶语句 配上一条相应的公理.
7.
我们由定义和 (Ext) 又可以从这个分离公理模式中简记 .
8., 替换公理模式
定理 3.1.2 (Dissolving of Russell’s Paradox).
定理 3.1.3 (Russell’s Paradox). 概括公理模式不一致.
最后, 我们引入一些简便的记号.
定义 3.1.4. 将 简记为 , 即 是 的子集或 包含于 .
将 简记为 , 存在量词同理.
将 简记为 , 读作存在唯一的 .
由分离公理模式, 令 , 而对非空的 按替换公理模式指示的集合族 有一个交 , 其中 是保证 非空的那个元素.
同样由分离公理模式, 令 .
3.2二阶 NBG
接下来, 我们对 NBG 集合论稍作介绍. NBG 指的是 von Neumann-Bernays-Gödel, 它是一个二类的语言 (而非一阶语言). 我们将用大写字母代表类, 小写字母代表集.
定义 3.2.1 (BGC 公理). 我们的语言现在有两类变元符号, 大写字母 称作类, 小写字母 称作集合. 二元关系有 和 , 它们都允许在两侧出现不同类的变元符号.
公理首先按原样继承了 ZF 的 (Ext)、(Fund)、(Pair)、(Union)、(Power)、(Inf), 这里不再重新叙述. 注意它们都是对集合这类变元的要求. 接下来是类与集合的关系.
1. |
|
2. |
|
3. |
|
有了类的概念, 我们可以轻松写出替换与概括 (而不是分离).
1. |
|
2. | , 这里的 isFunction 检查给定的类是否是一个对所有集合有定义的 (类) 函数. |
注 3.2.2. 因此, 我们会用 指代全体集合构成的类, 它常常被称为集合论宇宙, 且在模型论中 (尤其是考虑 ZF 的模型时) 总是作为元概念出现.
注 3.2.3. 然而, 在可以不使用 BGC 的时候, 我们总是默认 ZF(C), 这意味着许多形若 的语句应当理解为 . 这又被称作 Church 公理模式: .
3.3一阶 NBG
我们现在采取一个优雅的方式把 NBG 优化成一阶理论.
定义 3.3.1. 这一次 NBG 是个一阶集合论, 但是其中的对象叫做类. 我们先做定义:
1. | 若 , 则称 是集合. |
2. | 若 , 则称 是真类. |
现在我们来看公理们. 我们默认小写字母的变元是集合.
1. | . |
2. | , 这里 是量词辖域均受限在全体集合上的一个 句子. |
3. | , 这里 就是说 . |
4. | 别的造集合的公理与 ZF 一样, 记得把量词限定在全体集合上. |
注 3.3.2. 其实 NBG 可有穷公理化, 处理 的手段是把它变成类的存在与类的操作存在, 从而每个 可以由 的构造过程从这些类操作中产生.
定理 3.3.3. NBG 是 ZF 的保守扩张.