定理已证明
两个集合的容斥原理
命题陈述
对任意两个有限集合 A 与 B:∣A∪B∣=∣A∣+∣B∣−∣A∩B∣,其中 ∣A∣、∣B∣、∣A∩B∣、∣A∪B∣ 分别表示各集合的元素个数。
为什么成立?
简单地把 ∣A∣ 与 ∣B∣ 相加,会把同时属于两个集合的元素重复计算一次,因此再减去 ∣A∩B∣ 一次就纠正了这次重复计算。这正是从问卷调查数据中读取双圆维恩图背后的算术:在询问至少喜欢咖啡或茶其中一种的人数时,同时喜欢两者的人不能被重复计算。
证明思路
关键思路是把 A∪B 拆成三个两两不相交的部分,再各计数一次。
首先,用另一个集合来划分每个集合:A=(A∖B)∪(A∩B) 与 B=(B∖A)∪(A∩B)。在这两个等式中,右边的两部分互不相交,因为 (A∖B)∩(A∩B)=∅(不在 B 中的元素不可能同时在 B 中),同理 (B∖A)∩(A∩B)=∅。由于有限集合的大小等于其两两不相交划分各部分大小之和,由此得到 ∣A∣=∣A∖B∣+∣A∩B∣ 与 ∣B∣=∣B∖A∣+∣A∩B∣。
接下来注意到 A∪B 本身可以拆成三个两两不相交的部分:A∪B=(A∖B)∪(B∖A)∪(A∩B)。事实上 A∖B、B∖A、A∩B 两两不相交(属于 A∖B 的元素不属于 B,因而也不属于 A∩B 或 B∖A;其余情形同理),且它们的并集恰好就是属于 A 或属于 B 的全部元素。按此划分计数即得 ∣A∪B∣=∣A∖B∣+∣B∖A∣+∣A∩B∣。
最后代入:由 ∣A∣=∣A∖B∣+∣A∩B∣ 得 ∣A∖B∣ =∣A∣−∣A∩B∣,由 ∣B∣=∣B∖A∣+∣A∩B∣ 得 ∣B∖A∣ =∣B∣−∣A∩B∣。将两者代入 ∣A∪B∣=∣A∖B∣+∣B∖A∣+∣A∩B∣ 得 ∣A∪B∣=(∣A∣−∣A∩B∣)+(∣B∣−∣A∩B∣)+∣A∩B∣=∣A∣+∣B∣−∣A∩B∣,这正是 ∣A∪B∣=∣A∣+∣B∣−∣A∩B∣。证明完毕。