Burnside引理和Polya定理之间的联系

最近,研究了两天的Burnside引理和Polya定理之间的联系,百思不得其解,然后直到遇到下面的问题:

对颜色限制的染色

例:对正五边形的三个顶点着红色,对其余的两个顶点着蓝色,问有多少种非等价的着色?

其中置换的方法有旋转 \(0^{\circ}, 72^{\circ}, 144^{\circ}, 216^{\circ}, 288^{\circ}\), 穿过一个点做对称轴进行翻转。

Burnside引理的证明

那么,在解决这个问题之间,我们首先要定义和证明一些东西:

在集合\(X\)的置换群的作用下,设\(G\)\(X\)的置换群,\(C\)\(X\)的着色集,且\(G\)作用在\(C\)下。

定义\(c\)(小写)保持不变的\(G\)中所有的置换的集合:
\[ G(c) = \{f: f\in G, f*c=c\} \]
上面的公式含义就是:对于每一个确认的着色方案,我们都能确定一个置换的集合,使得集合内任意元素和\(c\)运算后的结果保持不变(感觉可以看成一个等价类)。

使着色\(c\)保持不变的所有的置换群的集合\(G(c)\)称为\(c\)的稳定核。

\(f\)的作用下使着色\(c\)保持不变的\(C\)中的所有的着色集,(确定一个\(f\),就能得到一个\(c\)的集合)

\[ C(f) = \{c: c\in C, f*c=c\} \]
这个就是后面的求解过程中,对于每一种置换,统计不动点的方式。

推论1:设\(c\)\(C\)中的一种着色,那么与\(c\)等价的着色数

\[ \left | \{ f*c:f \in G\}\right | \]
等于\(G\)中的置换数除以\(c\)的稳定核中的置换数的个数:

\[ \frac{|G|}{|G(c)|} \]
证明:

对于每一个置换\(f\),恰好存在\(|G(c)|\)个置换,这些置换作用在\(c\)上与\(f\)有相同的效果。因为总共有\(|G|\)个置换,所以与\(c\)等价的着色数为

\[ \frac{|G|}{|G(c)|} \]
是不是感觉一头雾水。。。没关系,我们通过一个典型的例子来进一步的解读:

例:对正方形的4个小格用两种颜色着色,可得多少种不同的图像?置换的方式有旋转0°,90°,180°,270°。

先画出所有的涂色方案:

a7ded905ly1fy3q69o4m7j21vm0jimyy.jpg

假设我们选择涂色方案\(f_1\),在16中涂色的方案中,有多少的涂色方案预期等价呢?

\[ G(f_1) = \{旋转0°, 旋转90°,旋转180°,旋转270°\}\\ |G(f_1)| = 4 \\ \therefore 16中涂色方案中,有\frac{|G|}{|G(f_1)|} = 1种方案与其等价\\ 同理:G(f_3) = {旋转0°}\\ |G(f_3)| = 1\\ \therefore 16中涂色方案中,有\frac{|G|}{|G(f_3)|} = 4种方案与其等价, 它们分别是f_3, f_4, f_5, f_6\\ \]
下面就是关键了!!

Burnside定理:设\(G\)\(X\)的置换群,而\(C\)\(X\)中一个满足下面条件的着色集合:对于\(G\)中所有的\(f\)\(C\)中的所有的\(c\)都有\(f*c\)仍在C中,则\(C\)中非等价的着色数\(N(G, C)\):

\[ N(G, C) = \frac{1}{|G|}\sum_{f\in G}|C(f)| \]

证明:

采用两种不同的计数的方法,然后使计数相等,最后化简求解。

一种方式是考察\(G\)中的每一个\(f\),并计算\(f\)保持着色不变的着色数然后求和。

\[ \sum_{f \in G}|C(f)| \]
另外一种方式就是考察\(C\)中的每一个\(c\),对保持不变的着色方案数求和:

\[ \sum_{c \in C}|G(c)| \]
两种计数方式的总和相等:

\[ \sum_{f \in G}|C(f)| = \sum_{c \in C}|G(c)| \]
由推论1:

\[ |G(c)| = \frac{|G|}{与c等价的着色数} \]
因此:

\[ \sum_{c \in C}|G(c)| = |G|\sum_{c \in C}\frac{1}{与c等价的着色数} \]
又在一个等价类里面,每一个元素的贡献都是:

\[ \frac{1}{与c等价的着色数} \]
一个等价类的和就是1。

所以:
\[ \sum_{c \in C}|G(c)| = |G|*N(G,C)\\ \therefore \sum_{f \in G}|C(f)| = |G|*N(G,C)\\ \therefore N(G,C) = \frac{\sum_{f \in G}|C(f)|}{|G|} \]

是不是感觉一脸懵逼,没关系,我们继续用上面的例子来说明:

\[ 两种等价的计数方式为:\\ (16+4+2+2) = (4+4+1+1+1+1+1+1+1+1+2+2+1+1+1+1)\\ 24 = (4*2+1*4+1*4+2*2+1*4),右边的为(权重*个数),个数和为16\\ 24 = 24\\ 以上我们解释了两种计数方案的相等性。\\ \\ \\ \\ 继续:\\ 24 = 4*(\frac{1}{1}+\frac{1}{1}+\frac{1}{4}*4+\frac{1}{4}*4+\frac{1}{2}*2+\frac{1}{4}*4)\\ 发现右边的每一个等价类的权重和都为1 \]
好了,我们这样就证明好了Burnside引理。

Polya定理

实际上,Polya定理仅仅是改变了Burnside引理右边的计数的方法,这使得计数变得更加的简单。

我们知道,在使用Burnside引理的时候我们首先要枚举出来所有的染色方案数,然后在每种置换的情况下,统计所有的染色方案不变的情况。这样的时间复杂度为置换数染色方案数\(O(置换数*染色方案数)\),进一步可知,我们的染色的方案数的时间空间复杂度是幂次级别的。

以例1为例,我们仅考虑每一个格点,不考虑位置,我们进行下面的计算:

a7ded905ly1fy3s10spw3j20al0awdfp.jpg

\[ Q:\left\{\begin{matrix} q_1 = (1)\quad(2)\quad(3)\quad(4), & 旋转0°\\ q_2 = (1\quad 2\quad 3\quad 4) &, 逆时针旋转90°\\ q_3 = (1\quad 3)\quad(2\quad 4), & 逆时针旋转180°\\ q_4 = (4\quad 3\quad 2\quad 1)& 逆时针旋转270° \end{matrix}\right. \]
注意\(q_2, q_4\)是两种不同的方案,他们是这样产生的:

\[ q_2 = \begin{pmatrix} 1 & 2 & 3 & 4\\ 2 & 3 & 4 & 1 \end{pmatrix} = (2\quad 3\quad 4\quad 1) = (1\quad 2\quad 3\quad 4), 可以进行轮换换序\\ q_4 = \begin{pmatrix} 1 & 2 & 3 & 4\\ 4 & 1 & 2 & 3 \end{pmatrix} = (4\quad 3\quad 2\quad 1) \]
置换\(f\)的循环分解中的循环个数记为

\[ \#(f) \]

定理2:

\(f\)是集合\(X\)的置换。如果我们用\(k\)种颜色对\(X\)的元素进行着色。设\(C\)\(X\)所有的着色的集合。则\(f\)中保持着色不变的着色数为:

\[ |C(f)| = k^{\#(f)} \]
这个式子并没有证明,意思就是每一个循环节看成一个等价类,这个等价类里面的元素的颜色全都相同。

然后我们就可以愉快的给出Polya的表示的形式了:

Polya定理

\(Q\)(为了区分\(G\),实际上它们两的数量是相等的)是n个对象的一个置换群,用m种颜色涂染这n个对象,一个对象涂任意一种颜色,则在\(Q\)作用下不等价的方案数为:

\[ L = \frac{1}{|G|}\sum_{f \in G}m^{\#(f)} \]
有了上面的这些定理之后呢,我们还是不能证明我们最初的问题,还需要一个工具:母函数!!!

母函数求解本质不同的染色问题

例2:用4种颜色涂3个编号分别为1,2,3的求,设颜色为b(蓝),g(绿),r(红),y(黄)。

解:

\[ P(b_1, b_2, b_3, g_1, g_2, g_3, r_1, r_2, r_3, y_1, y_2, y_3)\\ =(b_1+g_1+r_1+y_1)(b_2+g_2+r_2+y_2)(b_3+g_3+r_3+y_3) \]
展开后就能得到所有的64种方案了。

那么我们仅仅关系用了哪些颜色,而不关心在哪些球上染色呢?

我们可以有:

\[ P(b, g, r, y) = (b+g+r+y)^3 \\ =(b^3+g^3+r^3+y^3)+[(3b^2g+3b^2r+3b^2y)+(3g^2b+3g^2r+3g^2y)+(3r^2b+3r^2g+3r^3y)+\\ (3y^2b+3y^2g+3y^2r)+(6bgr+6bgy+6bry+6gry)] \]

它们的系数和是64,将使用颜色相同的视为同一种方案的话,本质不同的染色方案数为20,因为有20个项。

例3:用3种颜色b(蓝),r(红色),y(黄色)染4个不同的球, 将4个球分为2组,每组2个,要求同组的球色相同。

\[ P(b_1, b_2, r_1, r_2, y_1, y_2)\\ =(b_1^2+r_1^2+y_1^2)(b_2^2+r_2^2+y_2^2) \]
展开后可以得到所有的方案。

我们改变Polya的表示方式,使之便于代入母函数。

Polya定理的母函数表示

我们将一个置换分解成若干的循环节之后。假设f的循环因子分解有\(e_1\)个1循环,\(e_2\)个2循环,\(\dots, e_n\)个n循环。

\[ 1*e_1+2*e_2+\dots+i*e_i+\dots+n*e_n=n \]
那么循环数\(\#(f)\)

\[ \#(f) = e_1+e_2+\dots+e_n \]
因为循环的类型仅取决于循环因子分解中的循环的阶数,与元素在哪一个循环中无关。所以,不同的置换可以有相同的类型,我们试图定义不同的类型来群分置换,所以引进n个未定的变元:

\[ z_1, z_2,\dots,z_n \]
定义f的多项式为:

注释:它的定义是为了后面运用母函数的方便。
\[ mon(f) = z_1^{e_1}*z_2^{e_2}\dots z_n^{e_n} \]
于是, 对于\(G\)中的每一个置换\(f\)的单项式进行求和,我们得到关于\(G\)中的置换按照类型的生成函数

\[ \sum_{f \in G}mon(f) = \sum_{f \in G}z_1^{e_1}z_2^{e_2}\dots z_n^{e_n} \]
合并同类项,\(z_1^{e_1}z_2^{e_2}\dots z_n^{e_n}\)的系数等于同种置换类型的个数。

于是\(G\)的循环指数定义为该生成函数除以\(G\)中的置换的个数\(|G|\),

\[ P_G(z_1, z_2, \dots, z_n) = \frac{1}{|G|}\sum_{f \in G}z_1^{e_1}z_2^{e_2}\dots z_n^{e_n} \]
我们以例1进行相应的说明:

变换的类型置换拆分置换的类型单项式
旋转0°(1) (2) (3) (4)(4, 0, 0, 0)\(z_1^4\)
旋转90°(1 2 3 4)(0, 0, 0, 1)\(z_4\)
旋转180°(1 3) (2 4)(0, 2, 0, 0)\(z_2^2\)
旋转270°(4 3 2 1)(0, 0, 0, 1)\(z_4\)

定理3:

\(X\)是元素集合,\(G\)\(X\)的置换群,\(\{u_1, u_2, \dots, u_k\}\)是k种颜色的集合,C是X的任意着色集。这时,针对各颜色的数目C的非等价着色数的生成函数是

\[ P_G(z_1=u_1+u_2+\dots+u_k, z_2=u_1^2+u_2^2+\dots u_k^2, \dots, z_n = u_1^n+u_2^n+\dots+u_k^n) \]
这里其实就是将\((z_1, z_2, \dots, z_n)\)替换成多项式,至于为什么可以这样替换,可以体会一下前面举的一些关于生成函数统计不同的方案数的例子。

我们还是用例1来体会:

设颜色为w(白色),b(黑色)
\[ P_G(z_1 = w+b, z_2=w^2+b^2, z_3 = w^3+b^3, z_4=w^4+b^4) \\ =\frac{1}{4}(z_1^4+z_2^2+2z_4) = w^4+w^3b+2w^2b^2+wb^3+b^4 \]
我们将它的系数相加,得到答案为6,与Burnside引理和前面的一般的Polya公式的计算结果一致!

实际上,我们为什么可以用\(m^{\#(f)}\)代入一开始的Polya公式呢?实际上生成函数也可以解释,生成函数的系数和必然为\(m^{\#(f)}\)

哈哈,终于把所有的知识和需要用的定理铺盖完毕!

下面,我们来解决我们最初的问题:

例:对正五边形的三个顶点着红色,对其余的两个顶点着蓝色,问有多少种非等价的着色?

其中置换的方法有旋转 \(0^{\circ}, 72^{\circ}, 144^{\circ}, 216^{\circ}, 288^{\circ}\), 穿过一个点做对称轴进行翻转。

Burnside引理的解法

置换方式P循环因子分解(Polya定理使用)不变的着色数
旋转\(0^{\circ}\)
旋转\(72^{\circ}\)
旋转\(144^{\circ}\)
旋转\(216^{\circ}\)
旋转\(288^{\circ}\)
过1号点翻转
过2号点翻转
过3号点翻转
过4号点翻转
过5号点翻转

首先表示出所有的情况:

a7ded905ly1fy377rlrkmj219f0lmq4u.jpg

我们按照Burnside的定义,填写第三列的值:

旋转\(0^{\circ}\):
\[ p_1 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 \\ 1& 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 \end{pmatrix} = (f_1)(f_2)(f_3)(f_4)(f_5)(f_6)(f_7)(f_8)(f_9)(f_{10}) \]
发现有16个不动点。

顺时针旋转\(72^{\circ}\) :
\[ p_2 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 \\ 5& 6 & 7 & 1 & 8 & 9 & 2 & 10 & 3 & 4 \end{pmatrix} = (f_5 f_8 f_{10} f_4 f_1)(f_6 f_9 f_3 f_7 f_2) \]
发现有0个不动点。

顺时针旋转\(144^{\circ}\):
\[ p_3 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 \\ 8& 9 & 2 & 5 & 10 & 3 & 6 & 4 & 7 & 1 \end{pmatrix} = (f_8 f_4 f_{5} f_{10} f_1)(f_9 f_7 f_6 f_3 f_2) \]
发现有0个不动点。

同理我们算出旋转\(216^{\circ}, 288^{\circ}\) 的不动点的个数都是0。

穿过1号点(最上面的点,顺时针依次标号为1, 2, 3, 4, 5)的对称轴:
\[ p_6 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10 \\ 5& 2 & 9 & 8 & 1 & 7 & 6 & 4 & 3 & 10 \end{pmatrix} = (f_5 f_1)(f_2)(f_3 f_9)(f_8 f_4)(f_7 f_6)(f_{10}) \]
有两个不动点。

同理,依次通过2, 3, 4, 5号点的对称轴,进行翻转的不动点都为2个。

于是我们可以填写下面的表:

置换方式循环因子分解(Polya定理使用)不变的着色数
旋转\(0^{\circ}\)10
旋转\(72^{\circ}\)0
旋转\(144^{\circ}\)0
旋转\(216^{\circ}\)0
旋转\(288^{\circ}\)0
过1号点翻转2
过2号点翻转2
过3号点翻转2
过4号点翻转2
过5号点翻转2

由Burnside引理,我们可以计算出不同等价类的染色数目为:

\[ L = \frac{10+0*4+2*5}{10} = 2 \]
实际上,我们有一个很直观的理解:

两个蓝色要么连在一起,要么两个蓝色中间间隔一个红色,总共有两种本质不同染色方案数。

Polya定理解法

Polya定理的基本形式:用m种颜色\(C ={c_1, c_2, \dots, c_m} 涂染个对象涂染n个对象S = {1, 2, \dots, n}\), 在S的置换群Q作用下, 不等价的方案数为:

\[ L = \frac{1}{\left | Q \right |}\sum_{q\in Q} m^{\lambda(q)} \]
我们先填写第二列的表:

a7ded905ly1fy3oxaenrhj21980jvq6o.jpg

仅仅对节点进行变换,不考虑颜色。

旋转\(0^{\circ}\):

\[ p_1 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 \\ 1& 2 & 3 & 4 & 5 \end{pmatrix} = (1)(2)(3)(4)(5) \]
旋转\(72^{\circ}\):
\[ p_1 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 \\ 2& 3 & 4 & 5 & 1 \end{pmatrix} = (2\quad 3 \quad4\quad 5\quad 1) = (1\quad 2 \quad3\quad 4\quad 5) \]
旋转\(144^{\circ}\):
\[ p_1 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 \\ 3& 4 & 5 & 1 & 2 \end{pmatrix} = (3\quad 5 \quad2\quad 4\quad 1) = (1\quad 3 \quad5\quad 2\quad 4) \]
同理我们可以算出旋转\(216^{\circ}, 288^{\circ}\)的循环节。

经过1号节点的对称轴:

\[ p_1 = \begin{pmatrix} 1& 2 & 3 & 4 & 5 \\ 1& 5 & 4 & 3 & 2 \end{pmatrix} = (1)(2\quad 5)(3\quad 4) \]
同理可以计算经过其他的节点进行翻转的循环节。

然后我们就可以填写下面的表了:

置换方式P循环因子分解(Polya定理使用)循环节的类型\((z_1, z_2, z_3, z_4, z_5)\)
旋转\(0^{\circ}\)(1) (2) (3) (4) (5)(5, 0, 0, 0, 0)
旋转\(72^{\circ}\)(1 2 3 4 5)(0, 0, 0, 0, 1)
旋转\(144^{\circ}\)(1 3 5 2 4)(0, 0, 0, 0, 1)
旋转\(216^{\circ}\)(1 4 2 5 3)(0, 0, 0, 0, 1)
旋转\(288^{\circ}\)(1 5 4 3 2)(0, 0, 0, 0, 1)
过1号点翻转(1) (2 5) (3 4)(1, 2, 0, 0, 0)
过2号点翻转(1 3) (2) (4 5)(1, 2, 0, 0, 0)
过3号点翻转(1 5) (3) (2 4)(1, 2, 0, 0, 0)
过4号点翻转(1 2) (3 5) (4)(1, 2, 0, 0, 0)
过5号点翻转(1 4) (2 3) (5)(1, 2, 0, 0, 0)

1个(5, 0, 0, 0, 0), 4个(0, 0, 0, 0, 1), 5个(1, 2, 0, 0, 0)类型的

然后我们代入母函数:

\[ P_Q (Z_1, Z_2, Z_3, Z_4, Z_5) = \frac{1}{\left |Q \right |}*(Z_1^5+4*Z_5+5*Z_1Z_2^2) \\ P_Q (r+b, r^2+b^2, r^3+b^3, r^4+b^4, r^5+g^5) = \frac{1}{10}((r+b)^5+4(r^5+b^5)+5(r+b)(r^2+b^2)^2) \\ =\frac{1}{10}(10r^5+10r^4b+20r^3b^2+20r^2b^3+10rb^4+10b^5) \]
我们单独观察\(r^3b^2\)的系数,发现是\(\frac{20}{10} = 2\),与我们的Burnside引理的计算结果一致!!

转载于:https://www.cnblogs.com/babydragon/p/10106472.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值