0%
6 min read 学习笔记 学习路线

组合学笔记 (Part 1): 基础计数与偏序集

组合学学习笔记(上):集合与加乘原理、排列组合与恒等式、偏序集、链与反链、容斥原理与莫比乌斯反演。

这是 组合学笔记 系列的第一期。

1. 集合与加乘原理

1.1 集合的基本概念

定义 1.1(集合) 集合是由确定的不同对象组成的整体,这些对象称为集合的元素。

一般用大写字母 A,B,C,A, B, C, \ldots 表示集合,用小写字母 a,b,c,a, b, c, \ldots 表示元素。

  • aa 是集合 AA 的元素,记作 aAa \in A(读作”aa 属于 AA”)
  • aa 不是集合 AA 的元素,记作 aAa \notin A(读作”aa 不属于 AA”)

定义 1.2(集合的表示法) 集合主要有两种表示方法:

  1. 列举法:将集合的所有元素一一列举出来,用花括号括起来。 A={1,2,3,4,5}A = \{1, 2, 3, 4, 5\}

  2. 描述法:用集合中元素所满足的性质来描述集合。 A={xx 是正整数,x5}A = \{x \mid x \text{ 是正整数}, x \leq 5\}

定义 1.3(空集) 不含任何元素的集合称为空集,记作 \varnothing\emptyset

定义 1.4(全集) 在特定问题中,包含所讨论的所有元素的集合称为全集,通常记作 UUΩ\Omega

1.2 集合间的关系

定义 1.5(子集) 设 A,BA, B 是两个集合,若对于任意 xAx \in A 都有 xBx \in B,则称 AABB 的子集,记作 ABA \subseteq BBAB \supseteq A

定义 1.6(真子集) 若 ABA \subseteq BABA \neq B,则称 AABB 的真子集,记作 ABA \subsetneq B

定义 1.7(集合相等) 若 ABA \subseteq BBAB \subseteq A,则称集合 AABB 相等,记作 A=BA = B

定理 1.1(子集的基本性质) 设 A,B,CA, B, C 是任意集合,则:

  1. 自反性:AAA \subseteq A
  2. 反对称性:若 ABA \subseteq BBAB \subseteq A,则 A=BA = B
  3. 传递性:若 ABA \subseteq BBCB \subseteq C,则 ACA \subseteq C
  4. 空集是任何集合的子集:A\varnothing \subseteq A

1.3 集合的运算

定义 1.8(并集) 集合 AABB 的并集定义为: AB={xxA 或 xB}A \cup B = \{x \mid x \in A \text{ 或 } x \in B\}

定义 1.9(交集) 集合 AABB 的交集定义为: AB={xxA 且 xB}A \cap B = \{x \mid x \in A \text{ 且 } x \in B\}

AB=A \cap B = \varnothing,则称 AABB 不相交。

定义 1.10(差集) 集合 AABB 的差集定义为: AB={xxA 且 xB}A \setminus B = \{x \mid x \in A \text{ 且 } x \notin B\}

定义 1.11(补集) 设 UU 为全集,AUA \subseteq U,则 AA 的补集定义为: A=UA={xxU 且 xA}\overline{A} = U \setminus A = \{x \mid x \in U \text{ 且 } x \notin A\}

定理 1.2(德摩根律) 设 A,BA, B 是全集 UU 的子集,则:

  1. AB=AB\overline{A \cup B} = \overline{A} \cap \overline{B}
  2. AB=AB\overline{A \cap B} = \overline{A} \cup \overline{B}

1.4 幂集

定义 1.12(幂集) 集合 AA 的所有子集组成的集合称为 AA 的幂集,记作 P(A)\mathcal{P}(A)2A2^A,即: P(A)={XXA}\mathcal{P}(A) = \{X \mid X \subseteq A\}

定理 1.3(幂集的基数) 若 A=n|A| = n(即 AA 含有 nn 个元素),则: P(A)=2n|\mathcal{P}(A)| = 2^n

1.5 加法原理

定理 1.4(加法原理,分类计数原理) 设完成一件事有 kk 类不同的方法,第 ii 类方法有 nin_i 种具体的方式(i=1,2,,ki = 1, 2, \ldots, k),且任何两类方法之间没有公共的方式(即各类方法互斥),则完成这件事共有: N=n1+n2++nk=i=1kniN = n_1 + n_2 + \cdots + n_k = \sum_{i=1}^{k} n_i 种不同的方法。

1.6 乘法原理

定理 1.5(乘法原理,分步计数原理) 设完成一件事需要 kk 个步骤,第 ii 步有 nin_i 种不同的方法(i=1,2,,ki = 1, 2, \ldots, k),且各步的选择相互独立,则完成这件事共有: N=n1×n2××nk=i=1kniN = n_1 \times n_2 \times \cdots \times n_k = \prod_{i=1}^{k} n_i 种不同的方法。


2. 组合数排列数与恒等式

2.1 排列数

定义(排列) 从 nn 个不同元素中取出 kk 个元素(0kn0 \leq k \leq n),按照一定顺序排成一列,称为从 nn 个元素中取 kk 个元素的一个排列。所有不同排列的个数称为排列数,记作 P(n,k)P(n,k)AnkA_n^k

公式P(n,k)=n!(nk)!=n(n1)(n2)(nk+1)P(n,k) = \frac{n!}{(n-k)!} = n(n-1)(n-2)\cdots(n-k+1)

特例:当 k=nk = n 时,P(n,n)=n!P(n,n) = n!,即 nn 个元素的全排列数为 n!n!

2.2 组合数

定义(组合) 从 nn 个不同元素中取出 kk 个元素(0kn0 \leq k \leq n),不考虑顺序,称为从 nn 个元素中取 kk 个元素的一个组合。所有不同组合的个数称为组合数,记作 (nk)\binom{n}{k}CnkC_n^k

公式(nk)=n!k!(nk)!=n(n1)(nk+1)k!\binom{n}{k} = \frac{n!}{k!(n-k)!} = \frac{n(n-1)\cdots(n-k+1)}{k!}

约定:当 k<0k < 0k>nk > n 时,规定 (nk)=0\binom{n}{k} = 0

性质 1:边界值 (n0)=(nn)=1,(n1)=(nn1)=n\binom{n}{0} = \binom{n}{n} = 1, \quad \binom{n}{1} = \binom{n}{n-1} = n

性质 2:对称性 (nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}

2.3 帕斯卡恒等式

定理(Pascal’s Identity):对于整数 n1n \geq 10kn0 \leq k \leq n,有: (nk)=(n1k1)+(n1k)\binom{n}{k} = \binom{n-1}{k-1} + \binom{n-1}{k}

组合证明:考虑集合 S={1,2,,n}S = \{1, 2, \ldots, n\},将所有 kk 元子集按是否包含元素 nn 分成两类:

  • 包含元素 nnkk 元子集:需要从其余 n1n-1 个元素中选 k1k-1 个,个数为 (n1k1)\binom{n-1}{k-1}
  • 不包含元素 nnkk 元子集:需要从其余 n1n-1 个元素中选 kk 个,个数为 (n1k)\binom{n-1}{k}

由加法原理即得结论。

2.4 范德蒙德恒等式

定理(Vandermonde’s Identity):对于非负整数 m,n,rm, n, r(其中 rmin{m,n}r \leq \min\{m,n\}),有: (m+nr)=k=0r(mk)(nrk)\binom{m+n}{r} = \sum_{k=0}^{r} \binom{m}{k}\binom{n}{r-k}

组合证明:考虑两个不相交的集合 AABB,其中 A=m|A| = mB=n|B| = n

  • 左边(m+nr)\binom{m+n}{r} 表示从 ABA \cup B 中选取 rr 个元素的方法数。
  • 右边:按从 AA 中选取的元素个数 kk 分类,方法数为 (mk)(nrk)\binom{m}{k}\binom{n}{r-k}

推论 1(Chu-Vandermonde):令 m=n=rm = n = r,得: k=0n(nk)2=(2nn)\sum_{k=0}^{n} \binom{n}{k}^2 = \binom{2n}{n}

2.5 二项式定理

定理:对于任意实数 x,yx, y 和正整数 nn,有: (x+y)n=k=0n(nk)xnkyk(x+y)^n = \sum_{k=0}^{n} \binom{n}{k} x^{n-k} y^k

推论 1:令 x=y=1x = y = 1,得: k=0n(nk)=2n\sum_{k=0}^{n} \binom{n}{k} = 2^n

推论 2:令 x=1,y=1x = 1, y = -1,得: k=0n(1)k(nk)=0(n1)\sum_{k=0}^{n} (-1)^k \binom{n}{k} = 0 \quad (n \geq 1)

2.6 曲棍球棒恒等式(Hockey-Stick Identity)

定理:对于 0rn0 \leq r \leq nk=rn(kr)=(n+1r+1)\sum_{k=r}^{n} \binom{k}{r} = \binom{n+1}{r+1}

2.7 插板法(Stars and Bars)

问题:将 nn 个相同的小球放入 mm 个不同的盒子,允许空盒,有多少种方法?

定理:方法数为: (n+m1m1)=(n+m1n)\binom{n+m-1}{m-1} = \binom{n+m-1}{n}

不允许空盒的情形:方法数为 (n1m1)\binom{n-1}{m-1}(要求 nmn \geq m

2.8 算两次原理(Double Counting)

原理:对同一组对象用两种不同方式计数,所得结果相等。

例题(证明 k(nk)=n(n1k1)k\binom{n}{k} = n\binom{n-1}{k-1}):

算两次对象:从 nn 人中选 kk 人委员会并指定其中一人为主席的方案。

  • 先选委员会再选主席:k(nk)k\binom{n}{k}
  • 先选主席再选委员会:n(n1k1)n\binom{n-1}{k-1}

k(nk)=n(n1k1)k\binom{n}{k} = n\binom{n-1}{k-1}

2.9 双射计数(Bijective Proof)

原理:若存在集合 AA 到集合 BB 的双射(一一对应),则 A=B|A| = |B|

例题(组合数对称性):定义 f:ABf: A \to Bf(S)={1,,n}Sf(S) = \{1,\ldots,n\} \setminus S(取补集),这是双射,故 (nk)=(nnk)\binom{n}{k} = \binom{n}{n-k}


3. 偏序集、容斥原理与莫比乌斯变换

3.1 偏序集基础

定义(偏序关系):设 PP 是一个集合,RRPP 上的二元关系。若 RR 满足:

  1. 自反性xP,xx\forall x \in P, x \leq x
  2. 反对称性x,yP\forall x, y \in P,若 xyx \leq yyxy \leq x,则 x=yx = y
  3. 传递性x,y,zP\forall x, y, z \in P,若 xyx \leq yyzy \leq z,则 xzx \leq z

则称 RRPP 上的偏序关系(P,)(P, \leq) 称为偏序集(poset)。

例 1(幂集上的包含关系):设 SSnn 元集,P=2SP = 2^SSS 的幂集。定义 ABA \leq B 当且仅当 ABA \subseteq B,则 (2S,)(2^S, \subseteq) 是偏序集,称为布尔格 BnB_n

例 2(整除关系):设 P=Z+P = \mathbb{Z}^+,定义 aba \leq b 当且仅当 aba \mid b,则 (Z+,)(\mathbb{Z}^+, \mid) 是偏序集。

3.2 链与反链

定义(链):偏序集 (P,)(P, \leq) 的子集 CPC \subseteq P 称为,若 CC 中任意两个元素都可比较。

定义(反链):子集 APA \subseteq P 称为反链,若 AA 中任意两个不同元素都不可比较。

3.3 Sperner 定理

定理(Sperner, 1928):设 SSnn 元集,Bn=2SB_n = 2^S 是布尔格。则 BnB_n 中最大反链的大小为 (nn/2)\binom{n}{\lfloor n/2 \rfloor}

证明(LYM不等式):设 FBn\mathcal{F} \subseteq B_n 是反链,则: AF1(nA)1\sum_{A \in \mathcal{F}} \frac{1}{\binom{n}{|A|}} \leq 1

由于对所有 kk(nk)(nn/2)\binom{n}{k} \leq \binom{n}{\lfloor n/2 \rfloor},故: F(nn/2)|\mathcal{F}| \leq \binom{n}{\lfloor n/2 \rfloor}

3.4 容斥原理(PIE)

定理(容斥原理):设 A1,A2,,AnA_1, A_2, \ldots, A_n 是有限全集 UU 的子集,则

i=1nAi=k=1n(1)k+11i1<i2<<iknAi1Ai2Aik\left| \bigcup_{i=1}^n A_i \right| = \sum_{k=1}^n (-1)^{k+1} \sum_{1 \leq i_1 < i_2 < \cdots < i_k \leq n} |A_{i_1} \cap A_{i_2} \cap \cdots \cap A_{i_k}|

等价地,补集的交: i=1nAic=UiAi+i<jAiAji<j<kAiAjAk++(1)nA1An\left| \bigcap_{i=1}^n A_i^c \right| = |U| - \sum_{i} |A_i| + \sum_{i<j} |A_i \cap A_j| - \sum_{i<j<k} |A_i \cap A_j \cap A_k| + \cdots + (-1)^n |A_1 \cap \cdots \cap A_n|

应用 1:错排问题

错排数 DnD_n(无不动点的排列数): Dn=n!k=0n(1)kk!=n!e+12D_n = n! \sum_{k=0}^n \frac{(-1)^k}{k!} = \left\lfloor \frac{n!}{e} + \frac{1}{2} \right\rfloor

应用 2:欧拉函数

n=p1a1prarn = p_1^{a_1} \cdots p_r^{a_r},则: φ(n)=ni=1r(11pi)\varphi(n) = n \prod_{i=1}^r \left(1 - \frac{1}{p_i}\right)

3.5 莫比乌斯反演

定义(莫比乌斯函数):偏序集上的莫比乌斯函数 μ\mu 定义为:

  • μ(x,x)=1\mu(x, x) = 1
  • x<yx < yμ(x,y)=xz<yμ(x,z)\mu(x, y) = -\sum_{x \leq z < y} \mu(x, z)

定理(莫比乌斯反演):设 (P,)(P, \leq) 是局部有限偏序集,f,g:PRf, g: P \to \mathbb{R}。若 g(y)=xyf(x)g(y) = \sum_{x \leq y} f(x),则: f(y)=xyμ(x,y)g(x)f(y) = \sum_{x \leq y} \mu(x, y) g(x)

例 1(布尔格):μ(A,B)=(1)BA\mu(A, B) = (-1)^{|B| - |A|}

例 2(整除格):若 dmd \mid m,则 μ(d,m)=μ(m/d)\mu(d, m) = \mu(m/d)(经典数论莫比乌斯函数)

经典莫比乌斯反演:设 f,g:Z+Rf, g: \mathbb{Z}^+ \to \mathbb{R}

  • g(n)=dnf(d)g(n) = \sum_{d|n} f(d),则 f(n)=dnμ(d)g(n/d)f(n) = \sum_{d|n} \mu(d) g(n/d)

Comments