M00 · 第 2 章 · 第一编 数学语言与集合

集合与映射:从成员关系到可逆对应

从成员、子集和笛卡尔积建立集合语言,严格定义函数、像与原像,并推导单射、满射、双射、复合和逆映射的基本性质。

内容维护与审阅信息
维护角色
One Forth 编辑组
人工审阅者
未有独立人工审阅
  • 编辑检查待检查
  • 数学检查已自检
  • 数值检查已自检
  • 来源检查已自检
  • 无障碍检查待检查
  1. 内容修订新增集合、笛卡尔积、映射、像与原像、复合和逆映射的完整正文,并逐项复算有限集例题、练习及官方来源;本轮自检不等同于人工审阅。
报告页面错误
预备知识命题、量词与逻辑联结词

本章目标

  1. 区分元素、子集、空集、幂集与笛卡尔积,并用成员法证明集合相等。
  2. 把函数严格写成定义域、陪域和满足唯一性的对应规则。
  3. 判断有限映射是否为单射、满射或双射,并解释陪域改变造成的影响。
  4. 计算复合映射、集合的像与原像,并证明常用包含或等式。
  5. 证明函数可逆当且仅当它是双射,并区分逆映射与集合原像。
页面阅读位置0% · 仅保存在此浏览器
章节未开始
本册完成进度0/6 章 · 0%
本页目录

引言:先说清对象,再讨论对象之间的规则

一份课程名单、传感器编号、坐标点和模型标签看起来毫不相同,却都要求先回答两个问题:正在讨论哪些对象,以及对象之间允许怎样对应。集合给出对象的范围,映射给出从一个范围到另一个范围的确定规则。微积分里的函数、线性代数里的变换、概率论里的随机变量和计算机中的查找表,都建立在这两层语言之上。

本章从有限集合开始,因为每个结论都能逐项枚举复核;定义本身并不限于有限集合。正文采用通常的基础数学语言,不建立完整公理集合论。形如“所有满足某条件的对象”的集合,默认在已经说明的论域内取值,避免把无限制的自指描述误当成合法集合。

审阅状态说明:本文仍是 draftchecked 只记录本轮对定义、有限枚举、证明步骤和官方来源的自检。humanReviewer 保持为空,可访问性检查仍为待办;这些状态不表示已经完成独立人工审阅。

术语、符号与对象类型

写法对象类型含义
xAx\in A对象与集合xxAA 的元素
xAx\notin A对象与集合xx 不是 AA 的元素
ABA\subseteq B集合与集合AA 的每个元素都属于 BB
ABA\subsetneq B集合与集合ABA\subseteq BABA\ne B
\varnothing集合不含任何元素的空集
ABA\cup BABA\cap B集合并集与交集
ABA\setminus B集合属于 AA 但不属于 BB 的元素
P(A)\mathcal P(A)集合AA 的全部子集组成的幂集
A×BA\times B集合第一坐标来自 AA、第二坐标来自 BB 的有序对集合
A\lvert A\rvert非负整数或基数集合的大小;有限集时是元素个数
f:XYf:X\to Y函数定义域为 XX、陪域为 YY 的映射
f(S)f(S)集合SXS\subseteq Xff 下的像
f1(T)f^{-1}(T)集合TYT\subseteq Yff 下的原像
gfg\circ f函数先执行 ff,再执行 gg

成员关系与子集关系不能互换。例如对 A={1,{2,3}}A=\{1,\{2,3\}\},有 1A1\in A{2,3}A\{2,3\}\in A,但 2A2\notin A;同时 {1}A\{1\}\subseteq A,却没有 {1}A\{1\}\in A。斯坦福大学 CS103 的官方 成员与子集讲义 专门用对象类型解释 \in\subseteq 的差别,可作为这一符号边界的外部核对。

集合、子集与相等

集合的外延相等

集合由其元素决定。两个集合相等,当且仅当它们拥有完全相同的元素:

A=Bx(xAxB).A=B \quad\Longleftrightarrow\quad \forall x\,(x\in A\Longleftrightarrow x\in B).

集合不记录排列顺序,也不重复计数。因此 {1,2,2,3}={3,2,1}\{1,2,2,3\}=\{3,2,1\}。若顺序或重复次数重要,应改用序列、多重集或其他结构,而不是暗中改变“集合”的含义。

子集定义为

ABx(xAxB).A\subseteq B \quad\Longleftrightarrow\quad \forall x\,(x\in A\Longrightarrow x\in B).

证明 A=BA=B 的标准方法是双向包含:先证明任意 xAx\in A 都属于 BB,再证明任意 xBx\in B 都属于 AA。这个方法直接使用外延相等,不依赖图形面积或元素书写次序。

并集、交集和差集可用成员条件定义:

AB={x:xA 或 xB},AB={x:xA 且 xB},AB={x:xA 且 xB}.\begin{aligned} A\cup B&=\{x:x\in A\text{ 或 }x\in B\},\\ A\cap B&=\{x:x\in A\text{ 且 }x\in B\},\\ A\setminus B&=\{x:x\in A\text{ 且 }x\notin B\}. \end{aligned}

例如证明 De Morgan 律 A(BC)=(AB)(AC)A\setminus(B\cup C)=(A\setminus B)\cap(A\setminus C)。任取 xx,逐步改写成员条件:

xA(BC)xA 且 xBCxA 且 xB 且 xCx(AB)(AC).\begin{aligned} x\in A\setminus(B\cup C) &\Longleftrightarrow x\in A\text{ 且 }x\notin B\cup C\\ &\Longleftrightarrow x\in A\text{ 且 }x\notin B\text{ 且 }x\notin C\\ &\Longleftrightarrow x\in(A\setminus B)\cap(A\setminus C). \end{aligned}

两侧对任意 xx 的成员条件等价,所以集合相等。Venn 图能提示结论,但这条成员链才是证明。

空集与幂集

空集 \varnothing 没有元素。对任意集合 AA,都有 A\varnothing\subseteq A:因为不存在一个 xx\in\varnothing 能违反“若 xx\in\varnothing,则 xAx\in A”。这是空真,不是说空集中藏有某个特殊元素。

AA 的幂集定义为

P(A)={S:SA}.\mathcal P(A)=\{S:S\subseteq A\}.

A={a,b}A=\{a,b\},则

P(A)={,{a},{b},{a,b}}.\mathcal P(A)=\{\varnothing,\{a\},\{b\},\{a,b\}\}.

注意 aAa\in A,而 {a}P(A)\{a\}\in\mathcal P(A)。前者是原集合的元素,后者是幂集的元素。有限集 AAnn 个元素时,每个元素都有“选入子集”或“不选入子集”两种独立选择,所以 P(A)=2n|\mathcal P(A)|=2^n

幂集中的元素本身都是集合,这一点在概率论中尤其重要:样本空间的一个事件是样本点的集合,而全部事件候选组成样本空间幂集的子集族。空集对应不可能事件,整个样本空间也是自身的一个子集。

笛卡尔积与有序对

笛卡尔积

两个集合 A,BA,B 的笛卡尔积是

A×B={(a,b):aA, bB}.A\times B=\{(a,b):a\in A,\ b\in B\}.

有序对的坐标位置属于定义的一部分;通常 (a,b)(b,a)(a,b)\ne(b,a)

A={1,2}A=\{1,2\}B={u,v,w}B=\{u,v,w\},则

A×B={(1,u),(1,v),(1,w),(2,u),(2,v),(2,w)}.A\times B= \{(1,u),(1,v),(1,w),(2,u),(2,v),(2,w)\}.

有限情形下,每个 aAa\in A 都能与 BB 中的 B|B| 个元素配对。不同第一坐标产生互不相同的有序对,因此

A×B=AB.|A\times B|=|A|\,|B|.

AABB 为空集,则没有合法有序对,乘积为空;计数式仍成立。一般而言 A×BA\times BB×AB\times A 不相等,但交换坐标的映射 (a,b)(b,a)(a,b)\mapsto(b,a) 在二者之间给出双射。

笛卡尔积还固定了变量的类型。例如一张“学生—课程”登记表可以看成学生集合与课程集合的笛卡尔积的子集;把两个坐标交换后,得到的是“课程—学生”记录。信息相同但字段职责不同,不能在公式中随意交换。

映射的严格定义

函数或映射

函数 f:XYf:X\to Y 可表示为 X×YX\times Y 的一个子集 GfG_f,并满足:对每个 xXx\in X,存在唯一的 yYy\in Y 使 (x,y)Gf(x,y)\in G_f。把这个唯一输出记为 f(x)f(x)

“存在”保证定义域内没有漏掉输入,“唯一”保证一个输入不会同时得到两个输出。定义域 XX、陪域 YY 和对应规则共同确定函数。实际出现的输出组成值域或像集

f(X)={f(x):xX}Y.f(X)=\{f(x):x\in X\}\subseteq Y.

值域可以小于陪域。同一张输入输出表若更换陪域,满射性质可能改变,因而不能只看公式或有序对。麻省理工学院开放课程(下文简称 MIT OCW)的 《计算机科学数学》官方教材 在“Mathematical Data Types”部分同样把函数作为带定义域和陪域的确定关系处理,并用箭头性质区分单射与满射。

例题一:从笛卡尔积筛出一个函数

例 1:有限关系是否构成函数

X={1,2,3}X=\{1,2,3\}Y={a,b}Y=\{a,b\},关系

R={(1,a),(2,a),(3,b)}X×Y.R=\{(1,a),(2,a),(3,b)\}\subseteq X\times Y.

逐个检查定义域:1,2,31,2,3 都恰好作为一次第一坐标出现,所以 RR 定义了函数 f:XYf:X\to Y。输出 aa1,21,2 同时命中,输出 bb33 命中。因而值域为 f(X)={a,b}=Yf(X)=\{a,b\}=Y

若删除 (3,b)(3,b),输入 33 没有输出,关系不是定义域为 XX 的函数。若再加入 (1,b)(1,b),输入 11 有两个不同输出,也不是函数。有限表格中的函数检查必须同时核对“无遗漏”和“无冲突”。

这个例子也说明“关系”比“函数”更宽。任意 X×YX\times Y 的子集都是从 XXYY 的二元关系,只有满足全定义且单值的关系才是函数。判定时先检查函数性,再讨论单射或满射;对一个尚非函数的关系直接贴上“单射函数”标签没有意义。

单射、满射与双射

对函数 f:XYf:X\to Y

  • 单射要求 f(x1)=f(x2)x1=x2f(x_1)=f(x_2)\Longrightarrow x_1=x_2,即不同输入不会碰到同一输出;
  • 满射要求对每个 yYy\in Y,都存在 xXx\in X 使 f(x)=yf(x)=y,即陪域没有漏点;
  • 双射同时满足单射与满射,每个 yYy\in Y 恰有一个原像元素。

例题一中的 ff 是满射但不是单射,因为 f(1)=f(2)=af(1)=f(2)=a。对有限集合,若 X>Y|X|>|Y|,函数 XYX\to Y 不可能单射;若 X<Y|X|<|Y|,则不可能满射。这是抽屉原理的直接表现。集合大小相同仍不足以自动得到双射,还要核对具体对应。

例题二:平方映射的像与原像

例 2:定义域、陪域与碰撞共同决定性质

X={2,1,0,1,2},Y={0,1,4},q(x)=x2.X=\{-2,-1,0,1,2\},\qquad Y=\{0,1,4\},\qquad q(x)=x^2.

全部输出依次为 4,1,0,1,44,1,0,1,4,所以 q(X)={0,1,4}=Yq(X)=\{0,1,4\}=Y,函数是满射。它不是单射,因为 q(2)=q(2)q(-2)=q(2)q(1)=q(1)q(-1)=q(1)

S={2,0,1}XS=\{-2,0,1\}\subseteq X,则

q(S)={4,0,1}=Y.q(S)=\{4,0,1\}=Y.

T={1,4}YT=\{1,4\}\subseteq Y,原像为

q1(T)={2,1,1,2}.q^{-1}(T)=\{-2,-1,1,2\}.

这里 q1(T)q^{-1}(T) 是集合原像,不要求 qq 可逆。若把陪域扩大为 Y={0,1,4,9}Y'=\{0,1,4,9\} 而保持同一输入和公式,值域仍是 {0,1,4}\{0,1,4\},函数立即不再满射。

平方映射的两次碰撞还能用原像大小复核:00 的原像含一个元素,1144 的原像各含两个元素,合计 1+2+2=5=X1+2+2=5=|X|。满射只要求这些原像都非空,并不要求它们大小相同。

像与原像的运算规律

SXS\subseteq XTYT\subseteq Y,定义

f(S)={f(x):xS},f1(T)={xX:f(x)T}.f(S)=\{f(x):x\in S\}, \qquad f^{-1}(T)=\{x\in X:f(x)\in T\}.

原像保留并集、交集和相对于陪域的补集。例如

f1(CD)=f1(C)f1(D).f^{-1}(C\cap D)=f^{-1}(C)\cap f^{-1}(D).

证明只需追踪一个元素:

xf1(CD)f(x)CDf(x)C 且 f(x)Dxf1(C)f1(D).\begin{aligned} x\in f^{-1}(C\cap D) &\Longleftrightarrow f(x)\in C\cap D\\ &\Longleftrightarrow f(x)\in C\text{ 且 }f(x)\in D\\ &\Longleftrightarrow x\in f^{-1}(C)\cap f^{-1}(D). \end{aligned}

像对并集有等式 f(ST)=f(S)f(T)f(S\cup T)=f(S)\cup f(T),但对交集一般只有

f(ST)f(S)f(T).f(S\cap T)\subseteq f(S)\cap f(T).

要把包含升级为等式,需要 ff 在相关输入上单射。原因是右侧同一个输出可能分别来自 SSTT 中两个不同输入,并不保证存在一个同时属于两集合的输入。

原像的等式更稳定,因为判断 xx 是否进入原像时始终考察同一个输入 xx;像的交集则可能把来自不同输入的相同输出合并。证明像相关等式时,应主动检查是否暗中需要单射条件。

反例:像不总是保留交集

两个不同输入碰到同一输出

f:RRf:\mathbb R\to\mathbb Rf(x)=x2f(x)=x^2,并取 S={1}S=\{-1\}T={1}T=\{1\}。因为 ST=S\cap T=\varnothing,所以 f(ST)=f(S\cap T)=\varnothing。但是

f(S)={1}=f(T),f(S)f(T)={1}.f(S)=\{1\}=f(T), \qquad f(S)\cap f(T)=\{1\}.

因此两侧不相等。失败来自平方函数的非单射性,不是集合运算规则突然改变。

左侧先求输入交集,两个不同输入被消去;右侧先映射,平方函数已经把它们合并为同一输出,之后再取交集无法恢复输入身份。若 ffSTS\cup T 上单射,这种碰撞不会发生,反向包含也能证明,像的交集等式才成立。

复合映射与顺序

f:XYf:X\to Yg:YZg:Y\to Z,复合映射 gf:XZg\circ f:X\to Z 定义为

(gf)(x)=g(f(x)).(g\circ f)(x)=g(f(x)).

右侧的 ff 先执行。陪域与下一层定义域必须匹配,或至少保证 f(X)f(X) 落在 gg 的定义域内。复合满足结合律,因为对每个输入 xx

(h(gf))(x)=h(g(f(x)))=((hg)f)(x).(h\circ(g\circ f))(x) =h(g(f(x))) =((h\circ g)\circ f)(x).

复合通常不交换;先把摄氏温度转成华氏温度再四舍五入,与先四舍五入摄氏值再换算可能不同。

单射与满射在同类复合下保持。若 f,gf,g 都是单射,且 (gf)(x1)=(gf)(x2)(g\circ f)(x_1)=(g\circ f)(x_2),由 gg 单射得到 f(x1)=f(x2)f(x_1)=f(x_2),再由 ff 单射得到 x1=x2x_1=x_2。若 f,gf,g 都是满射,任取 zZz\in Z,先由 gg 满射找到 yYy\in Y 使 g(y)=zg(y)=z,再由 ff 满射找到 xXx\in X 使 f(x)=yf(x)=y,于是 (gf)(x)=z(g\circ f)(x)=z

例题三:复合与逆向复算

例 3:三步有限双射

X={1,2,3}X=\{1,2,3\}Y={a,b,c}Y=\{a,b,c\}Z={10,20,30}Z=\{10,20,30\}。定义

f(1)=a, f(2)=b, f(3)=c,g(a)=10, g(b)=20, g(c)=30.f(1)=a,\ f(2)=b,\ f(3)=c, \qquad g(a)=10,\ g(b)=20,\ g(c)=30.

每个函数都让定义域与陪域逐点一一对应,因此均为双射。复合结果为

(gf)(1)=10,(gf)(2)=20,(gf)(3)=30.(g\circ f)(1)=10, \quad(g\circ f)(2)=20, \quad(g\circ f)(3)=30.

逆向计算时先用 g1g^{-1},再用 f1f^{-1}。例如 30c330\mapsto c\mapsto3,所以

(gf)1=f1g1.(g\circ f)^{-1}=f^{-1}\circ g^{-1}.

顺序反转来自“撤销最后一步必须最先进行”。把三个输入逐项往返后都回到自身,给出有限表上的完整复算。

逐项往返还验证了两个恒等式:对每个 xXx\in X,先做复合再做其逆得到 xx;对每个 zZz\in Z,先做逆再做复合得到 zz。有限表上的这两轮检查分别对应左逆和右逆条件,缺一轮都不足以证明函数在声明的两端可逆。

逆映射存在的充要条件

函数 f:XYf:X\to Y 的逆映射是一个函数 f1:YXf^{-1}:Y\to X,满足

f1f=idX,ff1=idY.f^{-1}\circ f=\operatorname{id}_X, \qquad f\circ f^{-1}=\operatorname{id}_Y.

若逆映射存在,第一式说明 f(x1)=f(x2)f(x_1)=f(x_2) 时对两侧应用 f1f^{-1} 可得 x1=x2x_1=x_2,所以 ff 单射;第二式说明每个 yYy\in Y 都等于 f(f1(y))f(f^{-1}(y)),所以 ff 满射。因此可逆推出双射。

反过来,若 ff 是双射,则每个 yYy\in Y 至少有一个原像(满射),且至多有一个原像(单射)。把这个唯一元素定义为 f1(y)f^{-1}(y),便得到满足两条恒等式的函数。因此

f 可逆f 是双射.f\text{ 可逆}\quad\Longleftrightarrow\quad f\text{ 是双射}.

符号 f1f^{-1} 有两个相关但不同的用法:f1(T)f^{-1}(T) 作为集合原像对任意函数都有定义;f1(y)f^{-1}(y) 作为逆函数值只有在已经建立双射时才有定义。上下文必须说明输入是集合还是单个陪域元素。

有限集实验:计算前的预测

本章没有调用现有 InteractiveFigure。当前实验插件处理线性变换、梯度、波与神经网络等连续或模型化对象,把它们借来展示有限集合会混淆实验模型。这里采用可以手算、复制和逐项核对的有限集枚举。

A={a,b,c,d},B={0,1,2},A=\{a,b,c,d\},\qquad B=\{0,1,2\},

候选对应为

F={(a,0),(b,1),(c,1),(d,2)}.F=\{(a,0),(b,1),(c,1),(d,2)\}.

计算前先写预测:AA 有四个元素而 BB 只有三个元素,所以任何函数 ABA\to B 都不可能单射;但满射仍然可能。还应检查每个第一坐标是否恰好出现一次,而不能仅凭元素个数断言 FF 是函数。

有限集实验:枚举、代码与复算

逐项扫描 FFa,b,c,da,b,c,d 各出现一次,故它确实定义函数。输出集合为 {0,1,2}=B\{0,1,2\}=B,所以满射;b,cb,c 同时映到 11,所以不是单射。三个单点原像为

F1({0})={a},F1({1})={b,c},F1({2})={d}.F^{-1}(\{0\})=\{a\},\quad F^{-1}(\{1\})=\{b,c\},\quad F^{-1}(\{2\})=\{d\}.

下面的纯函数复现同一检查。输入按有序对列表给出,输出包括是否为函数、像集、碰撞和遗漏陪域元素;排序只为让结果稳定。

type Pair = readonly [string, number];

export function inspectFiniteMapping(
  domain: readonly string[],
  codomain: readonly number[],
  pairs: readonly Pair[],
) {
  const domainSet = new Set(domain);
  const codomainSet = new Set(codomain);
  const uniquePairs = [...new Map(pairs.map((pair) => [`${pair[0]}\0${pair[1]}`, pair])).values()];
  const outputs = new Map<string, number[]>();
  for (const [input, output] of uniquePairs) {
    outputs.set(input, [...(outputs.get(input) ?? []), output]);
  }
  const pairsStayInsideDeclaredSets = uniquePairs.every(
    ([input, output]) => domainSet.has(input) && codomainSet.has(output),
  );
  const isFunction =
    pairsStayInsideDeclaredSets && domain.every((input) => outputs.get(input)?.length === 1);
  const image = [...new Set(uniquePairs.map(([, output]) => output))].sort((a, b) => a - b);
  const collisions = image.filter(
    (output) => uniquePairs.filter(([, candidate]) => candidate === output).length > 1,
  );
  const missing = codomain.filter((output) => !image.includes(output));
  return { isFunction, image, collisions, missing };
}

代入本实验数据应得到 { isFunction: true, image: [0, 1, 2], collisions: [1], missing: [] }。这与手算一致。若删掉 (d,2)isFunction 变为 false,因为定义域元素 dd 被漏掉;若保留全部有序对但把陪域改成 B={0,1,2,3}B'=\{0,1,2,3\},函数仍成立,missing 变为 [3],因而不再满射。

实验后的分析

实验把四个容易混合的判断拆开了。函数性检查第一坐标是否完整且唯一;单射性检查不同第一坐标是否碰到同一输出;满射性比较像集与声明的陪域;双射性要求后两项同时成立。改变陪域不会改变有序对列表,却会改变满射结论,这正说明函数元数据不是可省略的装饰。

三个单点原像互不相交且并为整个定义域,这是函数把定义域按输出值分组的结果。碰撞发生在原像大小大于一的输出上。对有限集,这些原像大小之和等于 A|A|;本例为 1+2+1=41+2+1=4。该计数核对只验证当前有限数据,不代替一般定义或无限集合上的证明。

常见边界与误读

同一公式代表同一个函数

xx2x\mapsto x^2R\mathbb R[0,)[0,\infty) 是满射但非单射;从 [0,)[0,\infty)[0,)[0,\infty) 是双射;从 R\mathbb RR\mathbb R 既非单射也非满射。公式相同,定义域和陪域不同,得到的函数性质就不同。

原像符号已经表示逆函数

任何函数都能计算集合原像。非单射的平方函数仍有 q1({1})={1,1}q^{-1}(\{1\})=\{-1,1\};这不是一个单值逆函数。只有双射才允许把每个陪域元素唯一送回定义域。

画出箭头就完成了证明

有限箭头图可以完整枚举一个小函数;对无限集合,它只能展示样例。一般性结论必须从量词定义推出,不能把几根箭头当成覆盖所有输入的证据。

练习

练习 1

A={1,2,4}A=\{1,2,4\}B={2,4}B=\{2,4\}。求 ABA\cap BABA\setminus B,完整列出 A×BA\times B,并判断 A×BA\times B 是否等于 B×AB\times A

查看提示
先分别列出交集和差集,再按第一坐标分组枚举有序对。
查看解答
复核过的解答:A∩B={2,4},A∖B={1}。A×B 依次为 (1,2)、(1,4)、(2,2)、(2,4)、(4,2)、(4,4),共 3×2=6 个;B×A 也有 6 个,但例如 (2,1) 属于 B×A 而不属于 A×B,所以两集合不相等。
练习 2

X={0,1,2}X=\{0,1,2\}Y={a,b}Y=\{a,b\}R={(0,a),(1,b),(2,b)}R=\{(0,a),(1,b),(2,b)\}。判断 RR 是否定义函数,并判断它是否单射、满射或双射。

查看提示
先检查每个定义域元素作为第一坐标出现几次,再分别查碰撞和陪域漏点。
查看解答
复核过的解答:0、1、2 各恰好出现一次,因此 R 是函数。输出为 a、b、b,像集是 {a,b},等于陪域,所以满射;1 与 2 都映到 b,所以不是单射,也不是双射。
练习 3

f:{1,2}{u,v}f:\{1,2\}\to\{u,v\} 满足 f(1)=u,f(2)=vf(1)=u,f(2)=v,令 g:{u,v}{5,7}g:\{u,v\}\to\{5,7\} 满足 g(u)=5,g(v)=7g(u)=5,g(v)=7。求 gfg\circ f 及其逆映射,并用复合式核对结果。

查看提示
先从右到左计算复合;求逆时按相反顺序撤销每一步。
查看解答
复核过的解答:先算 f 得到 1↦u、2↦v,再算 g 得到 (g∘f)(1)=5、(g∘f)(2)=7。两个映射都逐点一一对应,故复合为双射。逆映射把 5↦1、7↦2,并且等于先做 g⁻¹(5↦u、7↦v)再做 f⁻¹(u↦1、v↦2)。
练习 4

证明对任意函数 f:XYf:X\to YC,DYC,D\subseteq Y,都有

f1(CD)=f1(C)f1(D).f^{-1}(C\cup D)=f^{-1}(C)\cup f^{-1}(D).

再给出反例说明一般不能把原像符号去掉后仍断言 f(ST)=f(S)f(T)f(S\cap T)=f(S)\cap f(T)

查看提示
对原像等式追踪任意输入 x;对像的交集结论尝试让两个不同输入得到同一输出。
查看解答
复核过的解答:x 属于 f⁻¹(C∪D) 当且仅当 f(x) 属于 C 或 D,当且仅当 x 属于 f⁻¹(C) 或 f⁻¹(D),故原像等式成立。像的交集等式不总成立:取 f(x)=x²、S={-1}、T={1},则 f(S∩T)=∅,而 f(S)∩f(T)={1}。

知识关系

  • 函数与图像 把映射限制到实数变量,进一步研究公式、图像、复合和反函数。
  • 命题逻辑与量词 为“任意元素”和“存在唯一输出”提供形式化表达。
  • 线性变换 在映射定义上增加保持加法和数乘的结构条件。
  • 概率公理 把事件视为样本空间的子集,并对并、交和补集赋予概率规则。
  • 凸集 在向量空间的子集上增加线段闭包条件。

已核对的外部资源

课程 · 2015

MIT 6.042J Mathematics for Computer Science

Albert R. Meyer, Adam Chlipala

用于核对集合运算、函数定义、像与原像、单射满射以及有限集合上的证明方法。

打开官方来源

MIT 6.042J 第 4 章系统处理集合、关系、函数、复合、单射、满射和有限基数。本文用它核对函数三要素、箭头性质与复合结论;官方 课程讲义页 还把“Sets and Functions”列为独立课次,并提供课堂问题与解答。

课程 · 年份待核

Stanford CS103 Guide to Elements and Subsets

用于核对成员符号、子集符号及二者不能互换的基础边界。

打开官方来源

斯坦福大学 CS103 的集合讲义集中解释成员与子集的对象类型、空集和嵌套集合。本文用它核对符号区分与边界例子,并保留前文的官方 PDF 直达引用,使相邻主张可以直接追溯。

以上链接均在 2026-07-11 通过学校官方域名核对。引用支持的是相邻定义和课程范围;本文中的有限枚举、De Morgan 律、复合性质与逆映射充要条件另已按定义逐步复算。

后续学习

接着阅读 命题逻辑与量词,把集合包含与函数性质写成精确量词;再进入 函数与图像,研究实函数的定义域、图像变换和反函数。之后可沿 线性变换 学习保结构映射,或沿 概率公理 学习事件集合上的运算与测度。

建议先把本章有限实验换成自己的四至六个元素数据,完整记录定义域、陪域、像集和各单点原像,再尝试用量词证明观察到的规律。进入无限集合后,枚举不再可行;双向包含、构造原像和证明唯一性会成为主要工具。