Skip to content

定义Definition

集合

Set

由成员完全决定的数学对象;成员关系给出集合的内容,额外结构须另行指定。

形式陈述 ​

集合记录哪些对象属于它。写作 x∈A,表示“x 是集合 A 的元素”;x∉A 表示它不是元素。一个集合的身份完全由成员决定,而不由成员的排列、出现次数或描述方式决定。这就是外延性:

A=B⟺∀x(x∈A↔x∈B).

例如,{1,2,3}、{3,1,2,2} 和“正整数中小于 4 的数所成的集合”描述同一个对象。重复写出 2 不会增加一个元素。与之不同,序列 (1,2,2) 会保留次序和重复。[1,2]

描述集合有两种常见记号。列举式 {a,b} 给出成员;受限描述式

{x∈A:φ(x)}

表示从已经给定的集合 A 中筛出满足条件 φ 的元素。例如 {n∈Z:n2=1}={−1,1}。冒号后的条件决定筛选规则,冒号前的 A 指定筛选范围。

若 A 中的每个元素都属于 B,则称 A 是 B 的子集,记作

A⊆B⟺∀x(x∈A⇒x∈B).

∈ 问“一个对象是否是成员”,⊆ 问“一个集合的成员是否全部被另一个集合包含”。这是两种不同的判断;当对象本身也是集合时,两种问题都可以提出,但答案不必相同。

直觉

可以把集合看成一份只回答“在不在其中”的成员记录。它不记录存储地址、加入时间或重复次数;所以程序中两份占用不同内存的集合对象,仍可能表示同一个数学集合。列表、多重集合和图还要记录顺序、重数或连接方式,这些信息不是底集自动提供的。

集合也能作为另一个集合的元素。关键是先认清当前正在数哪一层:∅ 没有元素,{∅} 有一个元素,那个元素恰好是空集;{{∅}} 也有一个元素,但那个元素是“装着空集的单元素集”。花括号不是可以随意省略的装饰。

这种层次也解释了幂集:P(A) 的元素不是通常意义下“从 A 抽出的一个成员”,而是 A 的整个子集。若 a∈A,则 {a}⊆A,进而 {a}∈P(A);同时 A⊆A,所以 A∈P(A)。从“成员”提升到“成员组成的集合”,会改变正在讨论的对象。

例子与边界

同一对象上的两个问题 ​

令 A={∅,{∅}}。逐项查看便有

∅∈A,∅⊆A,{∅}∈A,{∅}⊆A.

第一式是因为空集被直接列为成员;第二式则是因为空集没有任何元素可以违反包含条件。第三式检查另一个直接列出的成员,第四式只需检查 ∅∈A。四式虽然都成立,理由分别对应“查看成员名单”和“逐元素核对”。

成员关系不具有传递性。取 B={∅}、C={B},有 ∅∈B 和 B∈C,但 ∅∉C。反之,包含关系具有传递性:A⊆B⊆C 时,A 的元素经由 B 仍是 C 的元素。

从成员判断得到集合运算 ​

并集 A∪B 收集至少属于一边的对象,交集 A∩B 收集同时属于两边的对象,差集 A∖B 保留属于 A 却不属于 B 的对象。例如 A={1,2}、B={2,3} 时,它们依次为 {1,2,3}、{2}、{1}。

幂集 P(A)={S:S⊆A} 的成员是 A 的所有子集。若 A={a,b},则

P(A)={∅,{a},{b},{a,b}}.

这里空集和 A 自身都必须出现。若有限集 A 有 n 个成员,每个成员都有“选入或不选入”两种选择,故其幂集有 2n 个成员。

顶点与边为什么要分清 ​

设网络的顶点是三个不同标签 u,v,w,有向边表示为有序对,并约定顶点标签与边记录是不同类型的对象。于是

V={u,v,w},E={(u,v),(v,w)}⊆V×V.

u 是顶点,(u,v) 是边记录;E 的元素是有序对,E 本身是笛卡尔积的一个子集。把 (u,v) 改写为 {u,v} 会丢失方向。这里的类型区分是建模约定,并不是集合论禁止“某个有序对恰好又被选作顶点”;需要区分时,可以用标签明确区分。

花括号并不保证存在 ​

在纯 ZF 集合论中,所有对象都是集合,成员关系 ∈ 是基本符号。日常的数、点、函数可以通过集合编码,但使用它们时通常不展开这些编码。

ZF 的分离模式允许在已有集合内按性质筛选,不能由任意性质直接制造集合。假设无条件允许

R={x:x∉x},

就会得到 R∈R⟺R∉R,即 Russell 悖论。因此“所有集合组成的集合”不存在;“所有序数”也不是一个集合,可以在元语言中作为真类讨论。限制成集规则保护的是论证的一致性,而不是禁止描述这些总体。[2,3]

受限版本 RA={x∈A:x∉x} 则确实存在。它不会导致矛盾,而是推出 RA∉A:只有再假设 RA∈A,才会出现 RA∈RA⟺RA∉RA。所以任何给定集合 A 都不可能包含所有集合;关键区别是先有筛选范围,还是无条件收集所有对象。

推论与应用

外延性给出一个非常实用的证明方法:要证集合相等,分别证明两边包含;要证不等,找一个只属于其中一边的元素。表达式长得不同,并不妨碍它们具有相同成员。

分配律 A∩(B∪C)=(A∩B)∪(A∩C) 的完整逐元素证明见集合运算。这类证明先展开任意对象的成员条件,再由外延性得到集合等号;只检查几个列出的元素还不够。

从集合出发,乘积把选择装入坐标,关系挑选允许出现的对象对,函数再要求每个输入恰有一个输出。给同一底集添加不同运算、次序或测度,则会得到不同数学结构。外延性判断底集是否相同;附加结构是否相同,还要核对各自的数据。

统一的集合编码让这些对象可以放进同一基础体系;抽象使用则让证明只依赖公开的相等判据和操作规则。区分这两层,既能追问对象如何构造,也不会把某种底层编码的偶然成员关系误当成数学性质。

参考资料
  • [1] Jiří Lebl, Basic Analysis I: Introduction to Real Analysis,作者在线版,§0.3“Basic set theory”,访问于 2026-09-21;集合、包含与函数的入门解释。
  • [2] Paul R. Halmos, Naive Set Theory, Dover 重印版,2017(初版 1960),§§1–6;外延性、成集与集合运算。
  • [3] Herbert B. Enderton, Elements of Set Theory, Academic Press, 1977,Chapters 1–2;集合论语言、悖论与公理化成集。
关系图谱114 个相邻概念 · 3 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
分类位置

上位 / 更一般

暂未标注直接上位概念。

下位 / 直接特例

类型化关系