置换群 学习笔记
参考博客:
https://www.cnblogs.com/maoyiting/p/14171300.html#/cnblog/works/article/14171300
详细定义 & 证明可以看上面的博客,这里主要给出两个定理及其应用。
Burnside 引理
表述:
对于一个置换群 G G G,有
L = 1 ∣ G ∣ ∑ g ∈ G X g L=\dfrac{1}{|G|}\sum_{g\in G}X^g L=∣G∣1g∈G∑Xg
其中 L L L 表示 G G G 作用下,等价类(或者说人话,本质不同的方案)的数量。 X g X^g Xg 为 G G G 中的一个置换 g g g 下,不动点的数量(或者说,经过 g g g 作用后还是它本身的方案数)。
判断不动点看起来很麻烦,但推荐根据下面的 Polya 定理进行应用。
Polya 定理
其实这两个定理真的没啥区别。
我们接着上面 Burnside 引理继续说。不动点不好找?我们把置换 g g g 分若干成循环置换,当且仅当每个循环置换内部的颜色一样时它才是不动点。于是,我们找到了判断不动点的好用的方法:用你有的颜色填所有的元素,要求每个循环置换的颜色相同。
有了上面的阐述,很轻松地推出 Polya 定理的形式。其实和上面的并无区别。
L = 1 ∣ G ∣ ∑ g ∈ G m c ( g ) L=\dfrac{1}{|G|}\sum_{g\in G}m^{c(g)} L=∣G∣1g∈G∑mc(g)
例题
https://www.luogu.com.cn/training/1026
P4980
https://www.luogu.com.cn/problem/P4980
经典的环染色问题。解题第一步,要数有哪些置换。
本题一共有 n n n 个置换:逆时针旋转 k ( 1 ≤ k ≤ n ) k(1\le k\le n) k(1≤k≤n) 个元素(注意数置换的时候不能把等价的算重)。如果我们可以对每个置换求得其下的循环置换的个数就解决了本题。很容易发现,“逆时针旋转 k k k 个元素”的置换可以拆成 gcd ( n , k ) \gcd(n,k) gcd(n,k) 个循环置换。于是根据 Polya 定理:
L = 1 n ∑ k = 1 n n gcd ( n . k ) L=\dfrac{1}{n}\sum_{k=1}^nn^{\gcd(n.k)} L=n1k=1∑nngcd(n.k)
稍微数学推导即可。由于接下来的过程与本主题无关故略去。
UVA10601 Cubes
https://www.luogu.com.cn/problem/UVA10601
正方体的旋转群。我们仍然对每种置换求出它的循环置换(注意,这里不仅关心数量还要关心大小,因为我们要对其染色),然后用组合数计算。
正方体有如下 24 种置换:
- 恒等置换,1 个。每个分解为 12 个大小为 1 的循环置换。
- 以对角线为旋转轴的置换,有 4 条对角线,每条对角线有 2 π / 3 2\pi / 3 2π/3 和 4 π / 3 4\pi /3 4π/3 两种旋转,故有 8 个。每个分解为 4 个大小为 3 的循环置换。
- 以对立面的中心连线为旋转轴的置换,有
3
3
3 个旋转轴,每个旋转轴有
π
/
2
,
π
,
3
π
/
2
\pi/2,\pi,3\pi/2
π/2,π,3π/2 三种置换,故有 9 种。
- 其中 π / 2 , 3 π / 2 \pi/2,3\pi/2 π/2,3π/2 的有 6 种,每个置换会分解为 3 个大小为 4 的循环置换。
- π \pi π 的有 3 种,每个会分解为 6 个大小为 2 的循环置换。
- 以对棱的中点连线为旋转轴。有 6 条旋转轴,每个只能进行 π \pi π 的旋转,故有 6 个置换。每个置换可以分解为 2 个大小为 1 的循环置换 及 5 个大小为 2 的循环置换。