容斥原理

Abstract

容斥原理(Inclusion-Exclusion Principle)加法法则在集合存在重叠时的推广,用于精确计算多个集合并集的元素个数。其核心思想是:先”包含”所有集合的大小,再”排斥”(减去)交集部分,交替进行以消除重复计数。

定义

容斥原理(两个集合)

对任意两个有限集

直观理解:直接将 相加时, 中的元素被计算了两次,因此需要减去一次 来修正。

容斥原理(三个集合)

对任意三个有限集

规律:奇数个集合的交集前取正号,偶数个集合的交集前取负号。

容斥原理(一般形式)

个有限集

用紧凑形式表示:

核心性质

编号性质说明
P1交替符号交集的基数项符号交替变化:单集取正、两两交集取负、三三交集取正,依此类推
P2退化情况当所有集合两两不相交时,容斥原理退化为加法法则:$
P3补集形式可转化为计算不在任何集合中的元素数:$
P4De Morgan 定律联系容斥原理与 De Morgan 定律密切相关:
P5计算复杂度 个集合,需要计算 个交集项,因此当 较大时计算量急剧增长
P6与乘法法则联合在计算交集 $

关系网络

graph LR
    A[容斥原理]
    B[加法法则]
    C[乘法法则]
    D[集合运算]

    A -- "互斥时退化" --> B
    A -- "计算交集大小" --> C
    A -- "基于集合运算" --> D
    B -- "重叠时推广" --> A

章节扩展

  • 加法法则加法法则是容斥原理在集合不相交时的特例
  • 乘法法则乘法法则常用于计算容斥原理中各项交集的大小
  • 集合运算:容斥原理依赖于集合运算中的并集、交集等基本概念
  • 排列与组合:在高级计数问题中,容斥原理可用于计算”至少”、“恰好”等约束条件下的排列组合数
  • 7.1 离散概率导论:容斥原理直接应用于事件并集概率计算

第8章:高级计数 — 8.5-8.6节内容

  • 8.5 一般 集合容斥原理:前面给出的容斥原理一般形式 是处理任意 个集合重叠计数的核心公式。当 较大时,计算复杂度为 ,需要计算所有非空子集对应的交集大小。

  • 容斥原理的补集形式:计算不在任何 中的元素数: 其中 的项为 。补集形式在”都不满足某性质”的计数问题中极为常用。

  • 8.6 错排问题(Derangements) 个元素的错排数 (没有任何元素出现在原始位置上的排列数)可用容斥原理推导: 直觉:(总排列)减去至少1个固定点 + 至少2个固定点 - … 交替修正。当 时,。详见错排问题

  • onto 函数计数:从 元素集合到 元素集合的满射(onto)函数个数可用容斥原理计算: 直觉:从 (总函数)中减去至少遗漏1个值域元素的函数,再加回至少遗漏2个的,交替修正。详见onto函数

  • 欧拉函数 :不超过 且与 互素的正整数个数。利用容斥原理,设 的素因子分解,则: 该公式可通过容斥原理的补集形式推导:从 中排除被 中任何一个整除的数。详见欧拉函数

补充

生活类比

假设调查100名学生选修课程的情况:60人选了数学,50人选了物理,30人选了化学。如果直接相加得到140,超过了总人数100,因为有些学生同时选了多门课。容斥原理通过”先加后减”的方式修正:总选课人数 = 选数学 + 选物理 + 选化学 - 同时选两门的 + 同时选三门的,从而得到精确的不重复计数。

典型例题

在1到1000的整数中,不能被3、5、7中任何一个整除的整数有多少个?

  • 分别为被3、5、7整除的整数集
  • 答案:

参见