定理已证明
交集对并集的分配律
命题陈述
对任意三个集合 A、B、C:A∩(B∪C)=(A∩B)∪(A∩C)。
为什么成立?
正如普通代数中乘法对加法满足分配律一样,集合代数中交集对并集也满足分配律。这使得像"属于类别 A,且(正在促销 B 或新品 C)"这样的过滤条件,可以改写成两个更易处理、再用并集合并的过滤条件,这正是数据库与搜索引擎的查询规划器化简布尔过滤条件的方式。
证明思路
我们通过证明双向包含关系来说明两个集合相等,方法是取任意元素 x0 进行"元素追踪"。
(正向,⊆) 设 x0∈A∩(B∪C)。由交集的定义,这意味着 x0∈A 且 x0∈B∪C。由并集的定义,x0∈B∪C 意味着 x0∈B 或 x0∈C。分两种情形讨论。情形1:x0∈B。结合 x0∈A,得到 x0∈A∩B。情形2:x0∈C。结合 x0∈A,得到 x0∈A∩C。无论哪种情形,x0 都属于 x0∈A∩B 或属于 x0∈A∩C,因此 x0∈(A∩B)∪(A∩C)。
(反向,⊇) 设 x0∈(A∩B)∪(A∩C)。由并集的定义,这意味着 x0∈A∩B 或 x0∈A∩C。若 x0∈A∩B,则 x0∈A 且 x0∈B,从而 x0∈B∪C(因为 x0 属于 B,故属于 B 或 C),于是 x0∈A∩(B∪C)。若 x0∈A∩C,则 x0∈A 且 x0∈C,从而 x0∈B∪C,同样得到 x0∈A∩(B∪C)。
由于左边的每个元素都属于右边,反之亦然,两个集合含有完全相同的元素,故 A∩(B∪C)=(A∩B)∪(A∩C) 成立,证明完毕。