三個集的情況
（inclusion-exclusion principle）又称，在組合數學裏，其說明若A\_{1}, ... A\_{n} 為有限集，則
{\displaystyle {\begin{aligned}\left|\bigcup \_{i=1}^{n}A\_{i}\right|={}&\sum \_{i=1}^{n}|A\_{i}|-\sum \_{1\leq i<j\leq n}|A\_{i}\cap A\_{j}|+\sum \_{1\leq i<j<k\leq n}|A\_{i}\cap A\_{j}\cap A\_{k}|-\cdots +(-1)^{n-1}\left|A\_{1}\cap \cdots \cap A\_{n}\right|.\end{aligned}}}

其中|A|表示A的基數。例如在兩個集的情況時，我們可以通過將|A|和|B|相加，再減去其交集的基數，而得到其并集的基數。

描述
--

### 两个集合的容斥原理

n(A∪B)=n(A)+n(B) -n(A∩B)

### 三个集合的容斥原理

|A∪B∪C|=|A|+|B|+|C|-|A∩B|-|A∩C|-|B∩C|+|A∩B∩C|

### n个集合的容斥原理

      要计算几个集合并集的大小，我们要先将所有**单个集合**的大小计算出来，然后减去所有**两个集合相交**的部分，再加回所有**三个集合相交**的部分，再减去所有**四个集合相交**的部分，依此类推，一直计算到**所有集合相交**的部分。

最终得到公式：

{\displaystyle {\begin{aligned}\left|\bigcup \_{i=1}^{n}A\_{i}\right|={}&\sum \_{i=1}^{n}|A\_{i}|-\sum \_{1\leq i<j\leq n}|A\_{i}\cap A\_{j}|+\sum \_{1\leq i<j<k\leq n}|A\_{i}\cap A\_{j}\cap A\_{k}|-\cdots +(-1)^{n-1}\left|A\_{1}\cap \cdots \cap A\_{n}\right|.\end{aligned}}}

又可写成

{\displaystyle \left|\bigcup \_{i=1}^{n}A\_{i}\right|=\sum \_{k=1}^{n}(-1)^{k+1}\left(\sum \_{1\leq i\_{1}<\cdots <i\_{k}\leq n}|A\_{i\_{1}}\cap \cdots \cap A\_{i\_{k}}|\right)}

或

{\displaystyle \left|\bigcup \_{i=1}^{n}A\_{i}\right|=\sum \_{\emptyset \neq J\subseteq \{1,2,\ldots ,n\}}(-1)^{|J|-1}{\Biggl |}\bigcap \_{j\in J}A\_{j}{\Biggr |}.}

概率论中的容斥原理
---------

在概率论中，对于概率空间{\displaystyle (\Omega ,{\mathcal {F}},\mathbb {P} )}中的事件*A*1，……，*A**n*，当*n* = 2时容斥原理的公式为：

{\mathbb {P}}(A\_{1}\cup A\_{2})={\mathbb {P}}(A\_{1})+{\mathbb {P}}(A\_{2})-{\mathbb {P}}(A\_{1}\cap A\_{2}),
当*n* = 3时，公式为：

{\mathbb {P}}(A\_{1}\cup A\_{2}\cup A\_{3})={\mathbb {P}}(A\_{1})+{\mathbb {P}}(A\_{2})+{\mathbb {P}}(A\_{3})-{\mathbb {P}}(A\_{1}\cap A\_{2})-{\mathbb {P}}(A\_{1}\cap A\_{3})-{\mathbb {P}}(A\_{2}\cap A\_{3})+{\mathbb {P}}(A\_{1}\cap A\_{2}\cap A\_{3})
一般地：

{\mathbb {P}}{\biggl (}\bigcup \_{{i=1}}^{n}A\_{i}{\biggr )}=\sum \_{{i=1}}^{n}{\mathbb {P}}(A\_{i})-\sum \_{{i,j\,:\,i<j}}{\mathbb {P}}(A\_{i}\cap A\_{j})+\sum \_{{i,j,k\,:\,i<j<k}}{\mathbb {P}}(A\_{i}\cap A\_{j}\cap A\_{k})-\ \cdots \ +(-1)^{{n-1}}\,{\mathbb {P}}{\biggl (}\bigcap \_{{i=1}}^{n}A\_{i}{\biggr )},
也可以写成：

{\mathbb {P}}{\biggl (}\bigcup \_{{i=1}}^{n}A\_{i}{\biggr )}=\sum \_{{k=1}}^{n}(-1)^{{k-1}}\sum \_{{\scriptstyle I\subset \{1,\ldots ,n\} \atop \scriptstyle |I|=k}}{\mathbb {P}}(A\_{I}),
对于一般的测度空间(*S*,*Σ*,*μ*)和有限测度的可测子集*A*1，……，*An*，上面的恒等式也成立，如果把概率测度\mathbb {P} 换为测度*μ*。

特殊情况
----

如果在容斥原理的概率形式中，交集*AI*的概率只与*I*中元素的个数有关，也就是说，对于{1, ... *n*}中的每一个*k*，都存在一个*ak*，使得：

a\_{k}={\mathbb {P}}(A\_{I})，对于每一个I\subset \{1,\ldots ,n\}\,\,(|I|=k),
则以上的公式可以简化为：

{\mathbb {P}}{\biggl (}\bigcup \_{{i=1}}^{n}A\_{i}{\biggr )}=\sum \_{{k=1}}^{n}(-1)^{{k-1}}{\binom nk}a\_{k}
这是由于二项式系数\scriptstyle {\binom nk}的组合解释。

类似地，如果对有限集合*A*1，……，*An*的并集的元素个数感兴趣，且对于{1, ... *n*}中的每一个*k*，交集

A\_{I}:=\bigcap \_{{i\in I}}A\_{i}
的元素个数都相同，例如*ak* = |*AI*|，与{1, ... *n*}的*k*元素子集*I*无关，则：

{\biggl |}\bigcup \_{{i=1}}^{n}A\_{i}{\biggr |}=\sum \_{{k=1}}^{n}(-1)^{{k-1}}{\binom nk}a\_{k}\,.
在一般的测度空间(*S*,*Σ*,*μ*)和有限测度的可测子集*A*1，……，*An*的情况中，也可以进行类似的简化。

容斥原理的证明
-------

欲证明容斥原理，我们首先要验证以下的关于指示函数的等式：

1\_{{\cup \_{{i=1}}^{n}A\_{i}}}=\sum \_{{k=1}}^{n}(-1)^{{k-1}}\sum \_{{\scriptstyle I\subset \{1,\ldots ,n\} \atop \scriptstyle |I|=k}}1\_{{A\_{I}}}\qquad (\*)
至少有两种方法来证明这个等式：

**第一种方法** 我们只需证明对于*A*1，……，*An*的并集中的每一个*x*，等式都成立。假设*x*正好属于*m*个集合（1 ≤ *m* ≤ *n*），不妨设它们为*A*1，……，*Am*。则*x*处的等式化为：

1=\sum \_{{k=1}}^{m}(-1)^{{k-1}}\sum \_{{\scriptstyle I\subset \{1,\ldots ,m\} \atop \scriptstyle |I|=k}}1.
*m*元素集合中的*k*元素子集的个数，是二项式系数\textstyle {\binom mk} 的组合解释。由于\textstyle 1={\binom m0} ，我们有：

{\binom m0}=\sum \_{{k=1}}^{m}(-1)^{{k-1}}{\binom mk}.
把所有的项移到等式的左端，我们便得到(1 – 1)*m*的二项式展开式，因此可以看出，(\*)对*x*成立。

**第二种方法** 设*A*表示集合*A*1，……，*An*的并集。于是：

0=(1\_{A}-1\_{{A\_{1}}})(1\_{A}-1\_{{A\_{2}}})\cdots (1\_{A}-1\_{{A\_{n}}})\,,
这是因为对于不在*A*内的*x*，两边都等于零，而如果*x*属于其中一个集合，例如*Am*，则对应的第*m*个因子为零。把右端的乘积展开来，便可得到等式(\*)。

### 归纳法证明

设：S1= n (A1)+n (A2)+n (A3) +…...+n (An)

S2= n(A1∩A2)+ n(A1∩A3) …...+ n(A1∩An)+ n(A2∩A3)+ …...+n(An-1∩An)

S3= n(A1∩A2∩A3)+ ……+ n(An-2∩An-1∩An)……

Sn =n(A1∩A2∩A3∩……∩An)

求证：A=n(A1∪A2∪A3∪A4……∪An)= S1-S2+ S3+……+(-1)n-1Sn

证明：当n=2时，A=n(A1∪A2)=n(A1)+n(A2) -n(A1∩ A2)= S1-S2

假设：当n=k(k>=2)时，A=n (A1∪A2∪A3∪A4……∪Ak)= S1-S2+ S3+……+(-1)k-1Sk 等式成立。

当n=k+1时，

A= n( (A1∪A2∪A3∪A4……∪Ak) ∪Ak+1)

= n (A1∪A2∪A3∪A4……∪Ak)+n(Ak+1)-n((A1∪A2∪A3∪A4……∪Ak) ∩Ak+1)

= n (A1∪A2∪A3∪A4……∪Ak) +n(Ak+1)-n((A1∩Ak+1) ∪(A2∩Ak+1) ∪(A3∩Ak+1) ∪ …∪(Ak∩Ak+1))

∵ 当n=k时，等式成立

∴A= n (A1∪A2∪A3∪A4……∪Ak) +n(Ak+1)-(n (A1∩Ak+1)+ n (A2∩Ak+1)+ ……+n(Ak∩Ak+1)-n(A1∩A2∩Ak+1)-n(A1A3∩Ak+1) -……- n(Ak-1∩Ak∩Ak+1)+ ……+(-1)k.n(A1∩A2∩A3∩∪……∩Ak+1)

   = S1-S2+ S3+……+(-1)k-1Sk+n(Ak+1)-(n (A1∩Ak+1)+ n (A2∩Ak+1)+ ……+n(Ak∩Ak+1)-n(A1∩A2∩Ak+1)-n(A1∩A3∩Ak+1) -……- n(Ak-1∩Ak∩Ak+1)+ ……+(-1)k.n(A1∩A2∩A3∩∪……∩Ak+1)

    = S1-S2+ S3+……+(-1)kSk+1

综上所述，当n>=2时,n (A1∪A2∪A3∪A4……∪An)

= n (A1)+n (A2)+n (A3) ……+ n (An)-n(A1∩A2)- n(A1∩A3) ……- n(A1∩An)- n(A2∩A3)- ……-n(An-1∩An)+n(A1∩A2∩A3)+ n(A1∩A2∩A3)+ ……+ n(An-2∩An-1∩An)- ……+……+(-1)n-1.n(A1∩A2∩A3∩……∩An)

其它形式
----

有时容斥原理用以下的形式来表述：如果

g(A)=\sum \_{{S\,:\,S\subseteq A}}f(S)
那么：

f(A)=\sum \_{{S\,:\,S\subseteq A}}(-1)^{{\left|A\right|-\left|S\right|}}g(S)
在这种形式中可以看出，它是*A*的所有子集的偏序集合的指标代数的莫比乌斯反演公式。

应用
--

在许多情况下，容斥原理都可以给出精确的公式（特别是用埃拉托斯特尼筛法计算素数的个数时），但是用处不大，这是因为它里面含有的项太多。即使每一个单独的项都可以准确地估计，误差累积起来仍然意味着容斥原理不能直接应用。在数论中，这个困难由维戈·布朗解决。开始时进展很慢，但他的想法逐渐被其他数学家所应用，于是便产生了许多各种各样的筛法。这些方法是尝试找出被"筛选"的集合的上界，而不是一个确切的公式。

### 错排

容斥原理的一个著名的应用，是计算一个有限集合的所有乱序排列的数目。一个集合*A*的*错排*，是从*A*到*A*的没有不动点的双射。通过容斥原理，我们可以证明，如果*A*含有*n*个元素，则乱序排列的数目为[*n*! / *e*]，其中[*x*]表示最接近*x*的整数。

这也称为*n*的子阶乘，记为!*n*。可以推出，如果所有的双射都有相同的概率，则当*n*增大时，一个随机双射是错排的概率迅速趋近于1/*e*。

交集的计算
-----

容斥原理与德·摩根定理结合起来，也可以用于计算集合的交集中元素的数目。设\scriptstyle \overline {A}\_{k}表示*A**k*关于全集*A*的补集，使得对于每一个*k*，都有\scriptstyle A\_{k}\,\subseteq \,A。于是，我们有：

\bigcap \_{{i=1}}^{n}A\_{i}=\overline {\bigcup \_{{i=1}}^{n}\overline {A}\_{i}}
这样便把计算交集的问题化为计算并集的问题。

参见
--

* 其他组合原理，如：
	+ 乘法原理
	+ 抽屜原理
* 布尔不等式
* 项链问题
* 许特-内斯比特公式
* 最大-最小恒等式

拓展阅读
----

* （页面存档备份，存于）

* （页面存档备份，存于）

* （页面存档备份，存于） （页面存档备份，存于）（俄文） 中文翻译： （页面存档备份，存于）

参考文献
----

1. ↑ . blog.sina.com.cn.  [2018-02-06]. （原始内容存档于2019-08-22）.

* Klaus Dohmen: *Improved Bonferroni Inequalities via Abstract Tubes - Inequalities and Identities of Inclusion-Exclusion Type*, Springer-Verlag, 2003, ISBN 3-540-20025-8.
* Stasys Jukna: *Extremal Combinatorics*, Springer, 2001, ISBN 3-540-66313-4.
* （页面存档备份，存于）

本條目含有来自PlanetMath《principle of inclusion-exclusion》的內容，版权遵守知识共享协议：署名-相同方式共享协议。