2023-03-01 15:43阅读: 58评论: 0推荐: 0

2-17组合数学笔记

引入———十二重法

考虑对 n 元集到 m 元集的映射进行计数,根据一些不同的限制,引申出十二个基本的组合问题,被称为十二重法。

  1. 单射/不受限/满射
  2. n 元集中的元素是可区分还是不可区分
  3. m 元集中的元素是可区分还是不可区分

一共 3×2×2=12 种限制。每种限制下是一个不同的组合问题。

用自然语言描述的话,就相当于把 n 个球扔到 m 个箱子里。如果第 i 个球扔到了第 j 个箱子里,就称相当于一个集合的元素 i 映射到第二个集合中的元素 j

于是对于第一种限制,单射就对应了每个盒子最多一个球;满射就对应了每个箱子都必须有球;不受限就是任意扔球。

如果小球可区分,那么就相当于球表了 1n 号;如果不能区分,就相当于只有红球这样的。箱子同理。

对于“可区分”和“不可区分”的严格定义:定义映射和映射之间的等价关系,如果两种映射可以通过一种限制转换成另外一种映射,就划分等价类,看为同一种映射。

这十二种问题难易程度各有不同。如果球和箱子都有区分,是非常简单的组合问题;如果球没有区分了,就会有一定难度;箱子没有区分,难度就会更高;都没有区分,难度就非常恐怖了。

具体求解

[m] 表示一个 m 元集(即 {1,2,,m})。

首先有一个显然的原则,双射原则。

  • 双射原则:两个集合形成双射,则两个集合大小相等。ST|S|=|T|

[m]×[m] 表示笛卡尔积,例如 {1,2,3}×{1,2,3}={(1,1),(1,2),(1,3),(2,1),,(3,2),(3,3)}

由此,可以发现 [m]n 相当于所有值域在 1mn 元组集合。观察可知,|[m]n|=mn。这可以由集合上的乘法原则得出:

  • 乘法原则:两个集合的笛卡尔积的大小,等于两个集合大小的乘积。|S×T|=|S|×|T|

接下来,考虑最基础的没有限制的,可区分的映射计数。容易发现,f:[n][m] 可以等价于一个 n 元组,值域在 1m 内,恰好对应了我们的 |[m]n|=mn

于是,我们运用乘法原则完成了第一个问题的答案了。

接下来,我们加一些限制,考虑第二个问题:求 n 元集到 m 元集的单射个数。

容易发现,这可以转化成 m 个元素的 n 排列的个数,即 Amn=m(m1)(m2)(mn+1)=m!(mn)!

组合数本质上表示的是一个集合的子集。如果要表示一个集合的所有子集,一般用 2[n],表示所有“子集”的集合。这个集合的大小显然是 2n,证明:

  1. 组合证明。把自己表示成 n 元组,每个元素为 0/1,表示有没有这个元素(即二进制表示集合)。于是,子集与 02n1 的二进制数形成了一一对应的双射。接下来,运用乘法原则即可得到 n 元组的数量为 2n

  2. 不组合的证明。把 2[n] 的大小记为 f(n),我们会发现 f(n)=2f(n1),这用到我们的下一条原则———加法原则。

    • 加法原则:两个不相交的集合的并,大小等于两个集合大小之和。ST=|ST|=|S|+|T|

    有了加法原则,我们可以将 2[n] 中的元素分为两类,一类是没有元素 n,则这一类与 2[n1] 相等,所以大小为 f(n1);另一类有元素 n,则与 2[n1] 可以形成一一对应(双射),所以大小也为 f(n1)。显然这两类不相交,所以根据加法原则,f(n)=2f(n1)

到此为止,我们所有推论都可以通过三个原则推出来,除了一个例外:排列数 m(m1)(m2)(mn+1)。排列数并不是笛卡尔积,因为前面选了哪些元素对后面产生了影响,并不是两个集合直接笛卡尔积并起来。这并不是乘法原则,而是“链式法则”。

总结三条原则:

  • ST|S|=|T|
  • |S×T|=|S|×|T|
  • ST=|ST|=|S|+|T|

二项式系数

二项式系数 (nk) 的扩展 ([n]k) 表示 n 元集合中的 k 元子集组成的集合。即 |([n]k)|=(nk)

k=2 时,相当于一个完全图。当 k 更高的时候,我们称之为 “k-完全超图”,其中每个“超边”不再连向两个点,而是连向 k 个点。

总结

通过十二重法介绍的集合映射来理解组合,有助于我们将一些感性理解的组合问题形式化地描述出来并归类,且能根据三条原则严谨地解决。

以前接触到的加法原理和乘法原理与加法、乘法原则类似,但这里的原则通过对集合操作的描述,能够更加严谨地解决问题。这里主要讲的组合问题难度都不高,但这节课让我们看到了更深刻的理解。

posted @   曹轩鸣  阅读(58)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起