1 群

群$(G, cdot)$: 闭合, 结合律, 幺元, 逆

1.1 置换群

置换为双射$pi:[n]to [n]$, 置换之间的操作符 $cdot$ 定义为函数的复合, 即$(pi cdot sigma)(i)=pi(sigma(i))$

对称群$S_n$

$S_n$表示$[n]$的所有置换的集合. 容易验证$S_n$和函数复合操作 $cdot$ 构成一个群, 称为$n$元对称群.
$S_n$的子群称为置换群.

循环群$C_n$

定义特殊的置换$sigma$满足$forall i, ~sigma(i)=(i+1)mod n$, $C_n={sigma^t|tge 0}$, $C_n$称为$n$阶循环群, 生成元为$sigma$, 是$n$边正多边形的旋转对称.

Dihedral群$D_n$

定义特殊置换$rho$满足$forall iin [n], ~rho(i)=n-i-1$. 把$rho$加入$C_n$则得到Dihedral群$D_n$. 为正$n$边形翻转和旋转操作的对称群

Cycle decomposition

将置换等价表示为cycle的复合

1.2 群操作

例子: 项链上色

问题: $n$个珠子的项链, 珠子每个是$m$种颜色之一. 形式化的为$x:[n]to[m]$, 即把$m$个颜色分配给$n$个位置. $X={x:[n]to[m]}$为这样的分配的集合.

考虑两种对称操作:

  • 旋转: 循环群$C_n$
  • 旋转和翻转: dihedral群$D_n$

项链的操作被描述为$X$上的群操作. 对于置换群$G$, 任意$pi in G$和$xin X$, 群操作$picirc x$定义为$(pi circ x)(i)=x(pi(i))$

2 Burnside’s Lemma

2.1 轨道(Orbits)

定义和性质如下:

可以把轨道理解为一个等价类, 同一等价类中的元素可以通过$G$中的操作相互转换.

2.2 invariant set and stabilizer

$G$: 作用于集合$X$上的置换群. $piin G$, $xin X$.

  • $pi$的invariant set: $X_pi ={xin X|picirc x=x}$
  • $x$的stabilizer: $G_x={piin G|pi circ x=x}$

引理:

证明:

  • $Gx={x_1,x_2,cdots, x_t}$, $P={pi_1,pi_2,cdots, pi_t}$, 其中$pi_icirc x=x_i, ~ i = 1,2,cdots, t$

  • 构造一个$G$和$Ptimes G_x$的双射:

    • 对于任意$piin G$, 对于某个$x_i$有$picirc x=x_i$
    • 因为$pi_icirc x=x_i$, 所以$pi_icirc x=picirc x$, 故$(pi_i^{-1}cdot pi)circ x=x$
    • 记$sigma=pi_i^{-1}pi$, 则$pi_icdot sigma =pi$, $sigma circ x=x$, 即$sigma in G_x$.
    • 因此每个$piin 大专栏  组合数学之Pólya计数理论G$对应一个不同的pair$(pi_i, sigma)in Ptimes G_x$
    • 对于每个$pi_iin P$和$sigmain G_x$, 有$pi=pi_icdot sigmain G$
    • 对于$pi_isigma=pi_jtau$, 有$(pi_icdot sigma)circ x=x_i$, $(pi_jcdot tau)circ x=x_j$, 所以$x_i=x_j$, $pi_i=pi_j$, $tau =sigma$

    • 因此是双射, 得证.

2.3 轨道计数

Burnside’s Lemma: 轨道的个数(记做$|X/G|$) 为

证明:

  • 记$A(pi, x)=begin{cases}1 & picirc x=x,\0& ~ otherwise. end{cases}$

  • $sum_{piin G}|X_pi|=sum_{piin G}sum_{xin X}A(pi, x)=sum_{xin X}sum_{piin G}A(pi, x)=sum_{xin X}|G_x|$.

  • 定义轨道为$X_1,cdots, X_{|X/G|}, 则$

  • 使用上面的引理, 有

3 Pólya’s Theory of Counting

3.1 The cycle index

对于某种上色$x$, 如果$x$在$piin G$下是不变的, 那么在$pi$的每个circle中的所有位置必须有相同颜色. 即如果$pi$被分解为$k$个circle, 那么$|X_pi|=m^k$.

定义一个置换群$G$中的cycle index:

对任意$piin G$, 如果$pi$是$k$个cycle的乘积, 且第$i$个cycle的长度为$l_i$,令

$G$的cycle index

3.2 Pólya’s enumeration formula

对于任意tuple $v=(n_1,n_2,cdots, n_m)$满足$n_1+n_2+cdots+n_m=n$和$n_ige 0, ~ 1le ile m$, 表示第$i$个颜色的珠子有$n_i$个.

pattern inventory:

$a_v$的多元生成函数

Pólya’s enumeration formula:

非等价的$n$个物体的$m$色上色的pattern inventory

证明思路如下:

  • $X^v={x:[n]to[m]|forall iin [m], x^{-1}(i)=n_i}$表示第$i$个颜色出现$n_i$的着色方案集合(所有都算, 对称的也算)

  • $X_pi^v={xin X^v|picirc x=x}$

  • 先(用Burnside’s lemma)证明

  • 再证明

    考虑中间值$(y_1^{l_1}+y_2^{l_1}+cdots,y_m^{l_1})y_1^{l_2}+y_2^{l_2}+cdots,y_m^{l_2})cdots (y_1^{l_m}+y_2^{l_m}+cdots,y_m^{l_m})$, 和等式左右都相等.

  • 合起来即证毕.

组合数学之Pólya计数理论的更多相关文章

  1. 组合数学(Pólya计数原理):UvaOJ 10601 Cubes

    Cubes You are given 12 rods of equal length. Each of them is colored in certain color. Your task is ...

  2. 【等价的穿越】Burnside引理&Pólya计数法

    Problem 起源: SGU 294 He's Circle 遗憾的是,被吃了. Poj有道类似的: Mission 一个长度为n(1≤n≤24)的环由0,1,2组成,求有多少本质不同的环. 实际上 ...

  3. 《程序设计中的组合数学》——polya计数

    我们在高中的组合数学中常常会碰到有关涂色的问题,例如:用红蓝两种颜色给正方形的四个顶点涂色,会有几种不同的方案.在当时,我们下意识的认为,正方形的四个顶点是各不相同的,即正方形是固定的.而实际上我们知 ...

  4. Pólya计数定理

    我日啊..被cls的计数题虐得欲仙欲死...根本不会计数QAQ... 不懂数学啊... 前置技能 群 群是二元组\((G,*)\),满足 \(*:(G,G)\rightarrow G\) \(\exi ...

  5. 组合数学起步-排列计数[ZJOI2010][BZOJ2111]

    <题面> 数据范围:$1 \leq N \leq 10^6, P \leq 10^9 $ 这个题…… 以为是排列,其实是组合 题目中说是从所有排列中找到Magic的,就是 $p_{i/2} ...

  6. UVa 10294 (Pólya计数) Arif in Dhaka (First Love Part 2)

    Burnside定理:若一个着色方案s经过置换f后不变,称s为f的不动点,将置换f的不动点的数目记作C(f).等价类的数目等于所有C(f)的平均值. 一个项链,一个手镯,区别在于一个能翻转一个不能,用 ...

  7. 组合数学之Polya计数 TOJ1116 Let it Bead

    1116: Let it Bead  Time Limit(Common/Java):1000MS/10000MS     Memory Limit:65536KByteTotal Submit: 7 ...

  8. 组合数学--Polya 原理及典型应用

    Redfield-Polya (Pólya enumeration theorem,简称PET)定理是组合数学理论中最重要的定理之一.自从 1927 年 Redfield 首次运用 group red ...

  9. bzoj 1004 Cards 组合计数

    这道题考察的是组合计数(用Burnside,当然也可以认为是Polya的变形,毕竟Polya是Burnside推导出来的). 这一类问题的本质是计算置换群(A,P)中不动点个数!(所谓不动点,是一个二 ...

随机推荐

  1. 吴裕雄--天生自然TensorFlow高层封装:Keras-CNN

    # 1. 数据预处理 import keras from keras import backend as K from keras.datasets import mnist from keras.m ...

  2. vi几个常用的命令

    1.同时打开多个文件:vi 1.txt 2.txt 3.txt 在多个文件中来回切换,命令行模式输入“:next"表示下一个,输入":previous"代表进入上一个,” ...

  3. 尝试brpc来升级rpc服务,测试应用过程

    照着官方文档来,不过在mac下还是有些小坑 对熟悉c++的人来说很小儿科,但对c++相对比较外行 (只知道基本语法和部分数据结构)的人,还是作不到开箱即用 首先编译```If you need to ...

  4. [概率DP]相逢是温厚

    题意 有\(n\)场比赛,他每次等概率地选择一场,选择的比赛可能有没ac过的题,他一定会ac这次比赛中的某一道,并说我好菜啊.如果全ac过了,也会说我好菜啊.求期望说多少次我好菜啊. 注意题目中每场题 ...

  5. 构建Oracle的Docker镜像

    说明:本次构建环境,Centos7.7,Oracle12.2.0.1,Docker19 注意:已安装好docker的,请检查docker版本,1.13以下版本要升级: # df -h 命令检查根目录的 ...

  6. Z变换解差分方程的思考

    问题描述 今日碰到一道差分方程的题目,如下 [ y(n + 2) - cfrac{7}{10}y(n + 1) + cfrac{1}{10}y(n) = 7x(n+2) -2 x(n + 1) ] 已 ...

  7. DateTimePicket jQuery 日期插件,开始时间和结束时间示例

    需要引入的js文件: <input type="text" id="startTime" placeholder="开始时间"/> ...

  8. Listening-lecture|主旨题|术语解释|举例原则|Crash course 哔哩哔哩

    Listening-lecture: Major topic: SP1---detail---detail---detail SP2---detail---detail---detail Crash ...

  9. jsp页面之间传中文参数显示乱码问题的解决

    最近在项目中遇到jsp页面通过url传递参数,出现乱码,但是在本地是正常显示,在服务器上却是乱码,找了好久都没找到解决方法,最终在大神的帮助下解决了这个问题 比如从a.jsp像b.jsp页面传递参数 ...

  10. ReactJS - 组件的生命周期

    组件的生命周期分为三个状态 Mounting: 已插入真实DOM Updateing: 正在被重新渲染 Unmounting: 已移出真实DOM React 为每个状态都提供了两种处理函数,即函数在进 ...