形式陈述
集合论以二元关系符号 ∈ 表示成员关系;x ∈ A 读作“x 是 A 的元素”。在纯 ZF 集合论 公理库 ZF 集合论公理系统 ZF set theory · Zermelo–Fraenkel set theory 以成员关系为唯一非逻辑关系,并受控规定集合存在性的标准一阶公理系统。 中,论域里的对象全都是集合,∈ 是语言中唯一的非逻辑关系符号,并不由更基础的概念定义。日常数学常把数、点或函数当作已经给定的对象,这是一种有意隐藏底层编码的抽象用法。
集合的身份由成员决定。外延性写成
A = B ⟺ ∀ x ( x ∈ A ↔ x ∈ B ) . 花括号则是构造或描述记号。列举式 { a , b } 表示恰含 a , b 的集合;受限描述式
{ x ∈ A : φ ( x ) } 表示从既有集合 A 中筛出满足性质 φ 的元素。后一对象的存在由分离模式保证。没有底集的 { x : φ ( x ) } 只是一段形式描述,除非相关公理另行保证,它未必命名一个集合。
若 A 的每个元素都属于 B ,就有包含关系 公理库 子集 Subset · Set inclusion A 的每个元素都属于 B 时成立的包含关系;它在集合之间形成偏序。
A ⊆ B ⟺ ∀ x ( x ∈ A ⇒ x ∈ B ) . 这里比较的是两个集合;成员式 x ∈ A 比较的是一个对象与一个集合。两种关系处在不同类型层级,不能交换符号使用。
直觉
可以把集合看成一份只回答“在不在其中”的成员记录。记录不保存排列顺序、重复次数、插入时间或存储地址,因此 { a , b } 与 { b , a , a } 表示同一个集合。若顺序、重数或邻接方式会影响对象身份,就需要列表、多重集合、图等额外结构。
集合能够继续充当元素,于是会形成层级。若 a ∈ A ,单元素集 { a } 是 A 的子集;A 自身则是幂集 公理库 幂集 Power set 把 A 的每一种子集选择提升为元素所得的集合,记作 P(A)。 P ( A ) 的一个元素。再往前,有序对 公理库 有序对 Ordered pair 区分第一、第二分量且由分量逐项相等刻画相等性的二元对象。 可以由集合编码,而 A × B 的元素是有序对,不是 A 或 B 中的普通元素。这条层级线索解释了许多初学错误:括号每增加一层,对象的类型就可能已经改变。
集合只提供载体。把同一个底集赋予不同次序、运算、拓扑或概率测度,会得到不同的数学结构;外延性只判断底层成员是否相同,不替这些附加结构判等。
例子与边界
设一张有向网络的顶点集为 V = { u , v , w } ,边集为
E = { ( u , v ) , ( v , w ) } ⊆ V × V . u ∈ V ,但 ( u , v ) ∉ V ;相反,( u , v ) ∈ E 。这个例子中的 V 、V × V 与 E 分属“顶点集合”“有序对集合”“有序对集合的子集”三个层次。若把边写成 { u , v } ,方向信息就会消失。
空集 ∅ 没有元素,却仍是一个集合。下列三个对象彼此不同:
∅ , { ∅ } , { { ∅ } } . 后两个集合都只有一个元素,但元素分别是 ∅ 与 { ∅ } 。成员关系也不传递:虽然 ∅ ∈ { ∅ } 且 { ∅ } ∈ { { ∅ } } ,却有 ∅ ∉ { { ∅ } } 。
Russell 悖论划出受限成集的边界。假设存在
R = { x : x ∉ x } , 代入 x = R 会得到 R ∈ R ⟺ R ∉ R 。ZF 没有“所有集合组成的集合”,分离模式也只能在给定底集内筛选,所以这段无界描述不能借花括号自动获得集合身份。诸如“所有序数”这样的总体可以在元语言中作为真类讨论,却不是 ZF 论域里的一个集合。
推论与应用
外延性 公理库 集合外延性公理 Axiom of extensionality · Extensionality 两个集合恰在拥有相同元素时相等。 把集合相等化为逐元素证明。要证 A = B ,通常分别证明 A ⊆ B 与 B ⊆ A ;要证两集合不等,只需给出一个只属于其中一边的见证。这个方法不关心集合最初如何写出,因此适用于列举式、方程解集和递归生成集。
从已有集合出发,并、交与差 公理库 集合运算 Set operations · Union, intersection, difference 用逻辑条件逐元素定义并、交、差、补与对称差,并扩展到集合族。 重组成员,幂集把全部子集提升为元素,笛卡尔积 公理库 笛卡尔积 Cartesian product · Direct product of sets 由各坐标分别取值形成的有序元组集合;二元情形记作 A×B。 把跨集合的选择装入坐标。随后,关系 公理库 关系 Relation · Binary relation 带源集与目标集的二元关系,其底层关系图是 A×B 的子集。 成为乘积集的子集,函数 公理库 函数 Function · Map · Mapping 由定义域、陪域和单值图共同组成,并把每个输入送到唯一输出的映射。 再给关系加入全定义与单值条件。这是一条类型明确的构造链:每一步都说明新对象的元素究竟是什么。
在 ZF 内部,数、元组、关系和函数最终都能编码成集合;在普通数学论证中,应依赖它们公开的相等判据和运算规则,而不展开编码。这样既保留统一基础,也避免把某种集合编码的偶然成员关系误当成原对象的数学性质。
参考资料
Paul R. Halmos, Naive Set Theory , Dover, 2017, §§1–6。
Herbert B. Enderton, Elements of Set Theory , Academic Press, 1977, Chapters 1–2。
Thomas Jech, Set Theory , 3rd millennium ed., Springer, 2003, Chapter 1。