2.1 Inclusion-Exclusion

Roughly speaking, a "sieve method" in enumerative combinatorics is a method for determining the cardinality of a set $S$ that begins with a larger set and somehow subtracts off or cancels out unwanted elements. Sieve methods have two basic variations: (1) We can first approximate our answer with an overcount, and then subtract off an overcounted approximation of our original error, and so on, until after finitely many steps we have "converged" to the correct answer. This method is the combinatorial essence of the Principle of Inclusion-Exclusion, to which this section and the next four are devoted. (2) The elements of the larger set can be weighted in a natural combinatorial way so that the unwanted elements cancel out, leaving only the original set $S$. We discuss this technique in Sections 2.6 and 2.7.

The Principle of Inclusion-Exclusion is one of the fundamental tools of enumerative combinatorics. Abstractly, the Principle of Inclusion-Exclusion amounts to nothing more than computing the inverse of a certain matrix. As such, it is simply a minor result in linear algebra. The beauty of the principle lies not in the result itself, but rather in its wide applicability. We will give several examples of problems that can be solved by Inclusion-Exclusion, some in a rather subtle way. First, we state the principle in its purest form.

2.1.1 Theorem. Let $S$ be an $n$-set. Let $V$ be the $2^n$-dimensional vector space (over some filed $K$) of all functions $f\colon 2^S\to K$. Let $\phi\colon V\to V$ be the linear transformation defined by
\begin{equation}
\phi f(T) = \sum_{Y\supseteq T} f(Y), \text{ for all $T\subseteq S$.}
\end{equation}
Then $\phi^{-1}$ exists and is given by
\begin{equation}
\phi^{-1}f(T) = \sum_{Y\supseteq T} (-1)^{\#(Y-T)}f(Y), \text{ for all $T\subseteq S$.}
\end{equation}

Proof. Define $\psi\colon V\to V$ by $\psi f(T) = \sum_{Y\supseteq T}(-1)^{\#(Y-T)}f(Y)$. Then (composing functions right to left)
\begin{aligned}
\phi\psi f(T) &= \sum_{Y\supseteq T}(-1)^{\#(Y-T)}\phi f(Y) \\
&= \sum_{Y\supseteq T} (-1)^{\#(Y-T)}\sum_{Z\supseteq Y} f(Z)\\
&= \sum_{Z\supseteq T} \left(\sum_{Z\supseteq Y\supseteq T} (-1)^{\#(Y-T)}\right) f(Z).
\end{aligned}

注:"composing functions right to left" 的意思应当是:$\phi\psi f(T)$ 的操作顺序是 $\phi$ 先作用于 $f$,$\psi$ 再作用于 $\phi f$ 。这里采用的顺序跟通常函数复合的操作顺序不同,有点奇怪。

Setting $m = \# (Z- T)$, we have
\begin{equation*}
\sum_{\substack{Z\supseteq Y \supseteq T\\ (Z,T\ \mathrm{fixed})}} (-1)^{\#(Y-T)} = \sum_{i = 0}^{m} (-1)^{i}\binom{m}{i} = \delta_{0m},
\end{equation*}
so $\phi\psi\, f(T) = f(T)$. Hence, $\phi\psi f = f$, so $\psi = \phi^{-1}$.

注: 从证明过程可以看出,将 $\supseteq$ 换成任意偏序关系 $\le$,上述定理都成立。

The following is the usual combinatorial situation involving Theorem 2.1.1. We think of $S$ as being a set of properties that the elements of some given set $A$ of objects may or may not have. For any subset $T$ of $S$, let $f_=(T)$ be the number of objects in $A$ that have exactly the properties in $T$ (so they fail to have the properties in $\overline T = S - T$). More generally, if $w\colon A\to K$ is any weight function on $A$ with values in a field (or abelian group) $K$, then one could set $f_=(T) = \sum_x w(x)$, where $x$ ranges over all objects in $A$ having exactly the properties in $T$. Let $f_\ge(T)$ be the number of objects in $A$ that have at least the properties in $T$. Clearly then,
\begin{equation}
f_\ge(T) = \sum_{Y\supseteq T} f_=(Y). \label{E:f_\ge(T)}
\end{equation}

Hence by Theorem 2.1.1,
\begin{equation}
f_=(T) = \sum_{Y\supseteq T}(-1)^{\#(Y-T)}f_\ge(Y). \label{E:4}
\end{equation}
In particular, the number of objects having none of the properties in $S$ is given by
\begin{equation}
f_=(\emptyset) = \sum_{Y}(-1)^{\#Y}f_\ge(Y), \label{E:5}
\end{equation}
where $Y$ ranges over all subsets of $S$. In typical applications of the Principle of Inclusion-Exclusion, it will be relatively easy to compute $f_\ge(Y)$ for $Y\subseteq S$, so equation \eqref{E:4} will yield a formula for $f_=(T)$.

In equation \eqref{E:4} one thinks of $f_\ge(T)$ (the term indexed by $Y = T$) as being a first approximation to $f_=(T)$. We then subtract
\begin{equation*}
\sum_{\substack{Y\supseteq T\\ \#(Y-T) = 1}} f_\ge(Y),
\end{equation*}
to get a better approximation. Next we add back in
\begin{equation*}
\sum_{\substack{Y\supseteq T\\ \#(Y-T) = 2}} f_{\ge}(Y),
\end{equation*}
and so on, until finally reaching the explicit formula \eqref{E:4}. This reasoning explains the terminology "Inclusion-Exclusion."

Perhaps the most standard formulation of the Principle of Inclusion-Exclusion is one that dispenses with the set $S$ of properties per se, and just considers subsets of $A$. Thus, let $A_1, \dots, A_n$ be subsets of a finite set $A$. For each subset $T$ of $[n]$, let
\begin{equation*}
A_T = \bigcap_{i\in T} A_i
\end{equation*}
(with $A_\emptyset = A$), and for $0\le k\le n$ set
\begin{equation}
S_k = \sum_{\#T = k} \# A_T, \label{E:S_k}
\end{equation}
the sum of the cardinalities, or more generally the weighted cardinalities
\begin{equation*}
w(A_T) = \sum_{x\in A_T} w(x),
\end{equation*}
of all $k$-tuple intersections of the $A_i$'s. Think of $A_i$ as defining a property $P_i$ by the condition that $x\in A$ satisfites $P_i$ if and only if $x\in A_i$. Then $A_T$ is just the set of objects in $A$ that have at least the properties in $T$, so by \eqref{E:5} the number $\#(\overline{A_1} \cap \dots \cap\overline{A_n})$ of elements of $A$ lying in none of the $A_i$'s is given by
\begin{equation}
\#(\overline{A_1} \cap \dots \cap\overline{A_n}) = S_0 - S_1 + S_2 - \dots + (-1)^{n}S_n, \label{E:7}
\end{equation}
where $S_0 = \#A_{\emptyset} = \#A$.

The Principle of Inclusion-Exclusion and its various reformulations can be dualized by interchanging $\cap$ and $\cup$, $\subseteq$ and $\supseteq$, and so on, throughout. The dual form of Theorem 2.1.1 states that if
\[
\widetilde{\phi} f(T) = \sum_{Y\subseteq T} f(Y), \quad \text{for all $T\subseteq S$},
\]
then $\widetilde{\phi}^{-1} f(T)$ exists and is given by
\begin{equation*}
\widetilde{\phi}^{-1} f(T) = \sum_{Y\subseteq T} (-1)^{\#(T-Y)} f(Y), \quad\text{for all $T \subseteq S$}.
\end{equation*}
Similarly, if we let $f_\le(T)$ be the (weighted) number of objects of $A$ having at most the properties in $T$, then
\begin{equation}
\begin{aligned}
f_\le(T) &= \sum_{Y\subseteq T}f_=(Y), \\
f_=(T) &= \sum_{Y\subseteq T} (-1)^{\#(T-Y)} f_\le(Y).
\end{aligned}\label{E:8}
\end{equation}

A common special case of the Principle of Inclusion-Exclusion occurs when the function $f_=$ satisfies $f_=(T) = f_=(T')$ whenever $\#T = \#T'$. Thus also $f_\ge(T)$ depends only on $\#T$, and we set $a(n-i) = f_=(T)$ and $b(n-i) = f_\ge(T)$ whenever $\#T= i$. (Caveat. In many problems the set $A$ of objects and $S$ of properties will depend on a parameter $p$, and the functions $a(i)$ and $b(i)$ may depend on $p$. Thus, for example, $a(0)$ and $b(0)$ are the number of objects having all the properties, and this number may certainly depend on $p$. Proposition 2.2.2 is devoted to the situation when $a(i)$ and $b(i)$ are independent of $p$.) We thus obtain from equation \eqref{E:f_\ge(T)} and \eqref{E:4} the equivalence of the formulas

\begin{align}
b(m) &= \sum_{i= 0}^m \binom{m}{i} a(i), \quad 0\le m\le n, \label{E:9} \\
a(m) &= \sum_{i=0}^m \binom{m}{i} (-1)^{m-i} b(i), \quad 0\le m \le n. \label{E:10}
\end{align}

In other words, the inverse of the $(n+1)\times(n+1)$ matrix whose $(i,j)$-entry $(0\le i, j\le n)$ is $\binom{j}{i}$ has $(i,j)$-entry $(-1)^{j-i}\binom{j}{i}$. For instance,
\[
\begin{bmatrix}
1 & 1 & 1 & 1\\
0 & 1 & 2 & 3\\
0 & 0 & 1 & 3 \\
0 & 0 & 0 & 1
\end{bmatrix}^{-1} = \begin{bmatrix}
1 & -1 & 1 & -1 \\
0 & 1 & -2 & 3 \\
0 & 0 & 1 & -3 \\
0 & 0 & 0 & 1
\end{bmatrix} .
\]
Of course, we may let $n$ approach $\infty$ so that \eqref{E:9} and \eqref{E:10} are equivalent for $n = \infty$.

Note that in language of the calculus of finite differences, \eqref{E:10} can be rewritten as
\[
a(m) = \Delta^m b(0), \quad 0 \le m \le n.
\]

抄书 Richard P. Stanley Enumerative Combinatorics Chapter 2 Sieve Methods的更多相关文章

  1. Chapter 7:Statistical-Model-Based Methods

    作者:桂. 时间:2017-05-25  10:14:21 主要是<Speech enhancement: theory and practice>的读书笔记,全部内容可以点击这里. 书中 ...

  2. 卡特兰数 Catalan数 ( ACM 数论 组合 )

    卡特兰数 Catalan数 ( ACM 数论 组合 ) Posted on 2010-08-07 21:51 MiYu 阅读(13170) 评论(1)  编辑 收藏 引用 所属分类: ACM ( 数论 ...

  3. 卡特兰数(Catalan)简介

    Catalan序列是一个整数序列,其通项公式是 h(n)=C(2n,n)/(n+1) (n=0,1,2,...) 其前几项为 : 1, 1, 2, 5, 14, 42, 132, 429, 1430, ...

  4. 【集训笔记】【大数模板】特殊的数 【Catalan数】【HDOJ1133【HDOJ1134【HDOJ1130

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3324 http://blog.csdn.net/xymscau/artic ...

  5. Awesome Reinforcement Learning

    Awesome Reinforcement Learning A curated list of resources dedicated to reinforcement learning. We h ...

  6. mit课程ocw-mathematics

    https://ocw.mit.edu/courses/find-by-topic/#cat=mathematics Course # Course Title Level 1.010 Uncerta ...

  7. Introduction to Machine Learning

    Chapter 1 Introduction 1.1 What Is Machine Learning? To solve a problem on a computer, we need an al ...

  8. ESL翻译:Linear Methods for Regression

    chapter 3: Linear Methods for Regression 第3章:回归的线性方法 3.1 Introduction A linear regression model assu ...

  9. 游戏人工智能 读书笔记 (四) AI算法简介——Ad-Hoc 行为编程

    本文内容包含以下章节: Chapter 2 AI Methods Chapter 2.1 General Notes 本书英文版: Artificial Intelligence and Games ...

随机推荐

  1. 2018.6.20 Java考试试题总结(Java语言基础与面向对象编程)最新版

    Java考试试题总结 一.单选题(每题1分 * 50 = 50分) 1.java程序的执行过程中用到一套JDK工具,其中javac.exe指( B ) A.java语言解释器 B.java字节码编译器 ...

  2. mbstring未安装

    yum install php55w-mbstring.x86_64 把php版本换成自己的就ok

  3. cocoapods 类库管理利器

    作为iOS开发者,第三方类库的使用是最经常的,但鉴于第三方类库的不断更新以及其可能需要依存其他类,如果要使用最新版那么我们需要重新下载再添加到项目中,无疑带来一些繁琐的麻烦,那么现在这里就有一款能解决 ...

  4. Dungeon Master POJ - 2251 (搜索)

    Dungeon Master Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 48605   Accepted: 18339 ...

  5. ORA-04031: Unable To Allocate 32 Bytes Of Shared Memory

    记录一次生产库遇到的4031错误,后来通过调整sga大小将问题解决了 报错信息: ORA-04031: 无法分配 32 字节的共享内存 ("shared pool","s ...

  6. Date.prototype.Format---对Date的扩展

    // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占 ...

  7. I Like for You to Be Still【我会一直喜欢你】

    I Like for You to Be Still I like for you to be still 我会一直喜欢这你 It is as though you are absent 就算你并不在 ...

  8. kuangbin 并查集

    A : Wireless Network  POJ - 2236 题意:并查集,可以有查询和修复操作 题解:并查集 #include<iostream> #include<cstdi ...

  9. UVA - 10213 How Many Pieces of Land?(欧拉公式 + 高精度)

    圆上有n个点,位置不确定.问这些点两两连接成的线段,最多可以把圆划分成多少块平面? 欧拉公式:V-E+F = 2,V是点数,E是边数,F是面数. 答案是F=C(n,4)+C(n,2)+1,看的别人推的 ...

  10. JVM垃圾回收原理

    原文地址:http://chenchendefeng.iteye.com/blog/455883 一.相关概念 基本回收算法 1. 引用计数(Reference Counting) 比较古老的回收算法 ...