OI群论入门

废话

群论好强啊……

但其实并不是个太难理解的东西呢qwq。

为了方便理解,不会有出现大量数学符号堆在一起的地方。

下面进入正题

定义

群其实就是一个集合加上了若干个限制。

一般将群记作 ( G , ∗ ) (G,*) (G,) G G G 是一个集合, ∗ * 是集合 G G G 内的二元运算。( ∗ * 可以是 +   −   ×   ÷ +~-~\times~\div +  × ÷ 甚至是 ∪   ∩ \cup~\cap  ,这取决于集合 G G G 内的元素是什么,以及你想怎么用这个群)

对于一个群 ( G , ∗ ) (G,*) (G,),需要满足:

  • 封闭性: 对于任意 a , b ∈ G a,b\in G a,bG,一定满足 ( a ∗ b ) ∈ G (a*b)\in G (ab)G
  • 结合律: 对于任意 a , b , c ∈ G a,b,c\in G a,b,cG,一定满足 a ∗ ( b ∗ c ) = ( a ∗ b ) ∗ c a*(b*c)=(a*b)*c a(bc)=(ab)c
  • 有单位元: 集合 G G G 中一定包含一个元素 e e e,满足对于任意 a ∈ G a\in G aG,都有 a ∗ e = a a*e=a ae=a,我们将这个 e e e 记为单位元,一个群内的单位元是唯一的
  • 存在逆元: 对于任意 a ∈ G a\in G aG,都存在 b ∈ G b\in G bG 满足 a ∗ b = e a*b=e ab=e,即 b = a − 1 b=a^{-1} b=a1

打个比方, ( Z , + ) (Z,+) (Z,+) 就是一个群,对于任意整数 a , b a,b a,b a + b a+b a+b 也一定是整数,故 a + b a+b a+b 也在 Z Z Z 中(封闭性),加法显然满足结合律 0 0 0 就是单位元,对于任意整数 a a a,它的逆元就是 − a -a a,也在 Z Z Z 中。

相关概念

阶: G G G 集合的大小称为群 ( G , ∗ ) (G,*) (G,) 的阶,记为 ∣ G ∣ |G| G

有限群&无限群: 如果 ∣ G ∣ |G| G 无限大,则称这个群为无限群,否则是有限群。

打个比方,上面的 ( Z , + ) (Z,+) (Z,+) 这个群就是无限群,有限群的例子下面有。

置换

定义

我们一般描述成这样:
( 1 2 3 . . . n − 1 n a 1 a 2 a 3 . . . a n − 1 a n ) \left( \begin{matrix} 1 & 2 & 3 & ... & n-1 & n\\ a_1 & a_2 & a_3 & ... & a_{n-1} & a_n \end{matrix} \right) (1a12a23a3......n1an1nan)

其中 a a a 1 1 1 ~ n n n 的一个排列,这个置换表示将位置 1 1 1 上的元素放到位置 a 1 a_1 a1,位置 2 2 2 上的元素放到 a 2 a_2 a2……

由于其中涉及到 n n n 个元素,所以称其为 n n n 元置换。

举个例子,假设有一个置换 T T T
( 1 2 3 4 4 3 1 2 ) \left( \begin{matrix} 1 & 2 & 3 & 4\\ 4 & 3 & 1 & 2 \end{matrix} \right) (14233142)

对于序列 A = ( 4 , 3 , 2 , 1 ) A=(4,3,2,1) A=(4,3,2,1),将 T T T 作用在 A A A 上,得到 A ′ = ( 2 , 1 , 3 , 4 ) A'=(2,1,3,4) A=(2,1,3,4)

可以发现,将列进行调换不影响答案,比如说可以将上面的置换 T T T 改成:
( 2 4 3 1 3 2 1 4 ) \left( \begin{matrix} 2 & 4 & 3 & 1\\ 3 & 2 & 1 & 4 \end{matrix} \right) (23423114)

将这个形式的 T T T 作用在 A A A 上依然能得到 A ′ A' A,原因显然。

连接

这是关于置换的运算,对于置换 A , B A,B A,B A B AB AB 即表示 A A A B B B 的连接运算。

连接运算的规则是这样的:
( a 1 a 2 a 3 . . . a n b 1 b 2 b 3 . . . b n ) ( b 1 b 2 b 3 . . . b n c 1 c 2 c 3 . . . c n ) = ( a 1 a 2 a 3 . . . a n c 1 c 2 c 3 . . . c n ) \left( \begin{matrix} a_1 & a_2 & a_3 & ... & a_n\\ b_1 & b_2 & b_3 & ... & b_n \end{matrix} \right) \left( \begin{matrix} b_1 & b_2 & b_3 & ... & b_n\\ c_1 & c_2 & c_3 & ... & c_n \end{matrix} \right)= \left( \begin{matrix} a_1 & a_2 & a_3 & ... & a_n\\ c_1 & c_2 & c_3 & ... & c_n \end{matrix} \right) (a1b1a2b2a3b3......anbn)(b1c1b2c2b3c3......bncn)=(a1c1a2c2a3c3......ancn)

循环

对于一个 n n n 阶循环 ( a 1 a 2 a 3 . . . a n − 1 a n ) (a_1a_2a_3...a_{n-1}a_n) (a1a2a3...an1an),它表示这样一个置换:
( a 1 a 2 a 3 . . . a n − 1 a n a 2 a 3 a 4 . . . a n a 1 ) \left( \begin{matrix} a_1 & a_2 & a_3 & ... & a_{n-1} & a_n\\ a_2 & a_3 & a_4 & ... & a_n & a_1\\ \end{matrix} \right) (a1a2a2a3a3a4......an1anana1)

对于一个置换,我们可以将其表示为若干个不相交循环的乘积(并不是乘法的乘积,感性理解一下就好)。

比如说,对于这个置换:
( 1 2 3 4 3 2 1 4 ) \left( \begin{matrix} 1 & 2 & 3 & 4\\ 3 & 2 & 1 & 4 \end{matrix} \right) (13223144)

就可以表示成 ( 1   3 ) ( 2 ) ( 4 ) (1~3)(2)(4) (1 3)(2)(4)

证明很显然,这里不赘述了。(不懂的话可以去做这题 找不到其他有这题的网站了……

置换群

置换群就是由置换组成的群,运算就是连接。

举个例子,假设有一个正方形,四个顶点染了色,可以旋转或翻折。那么置换就有 8 8 8 种:

  1. 不动,顺时针转 90 ° , 180 ° , 270 ° 90\degree,180\degree,270\degree 90°,180°,270° 4 4 4
  2. 以两条对边的中点为轴翻转 180 ° 180\degree 180°,有 2 2 2 组对边
  3. 以两个对点为轴翻转 180 ° 180\degree 180°,有 2 2 2 组对点

显然,这 8 8 8 个置换可以组成一个置换群,由于这些置换包含了所有的置换方式,所以肯定满足封闭性,连接运算显然满足结合律单位元就是不动逆元就是反着操作。

以及,这是一个有限群。

陪集

H H H G G G 的一个子群(也需要满足上面 4 4 4 点限制), a ∈ G a\in G aG,那么 a H aH aH 称为 H H H 的左陪集, H a Ha Ha 称为 H H H 的右陪集。(注意,陪集不是群,不需要满足 4 4 4 点限制)

其中, a H = { a x ∣ x ∈ H } , H a = { x a ∣ x ∈ H } aH=\{ax|x\in H\},Ha=\{xa|x\in H\} aH={axxH},Ha={xaxH}

下面性质的证明都只考虑左陪集,因为右陪集的证明是基本一样的。

性质1

如果 a ∈ H a\in H aH,那么 a H = H aH=H aH=H

证明很显然,因为 H H H 内已经有 a a a 了,根据封闭性,对于任意 b ∈ H b\in H bH 都存在 ( a ∗ b ) ∈ H (a*b)\in H (ab)H,所以 a H aH aH 不会比 H H H 多出任何元素。

性质2

H H H 的所有陪集的大小都等于 ∣ H ∣ |H| H

对于一个陪集 a H aH aH,假如 a ∈ H a\in H aH,那么根据性质 1 1 1,可以得到 ∣ a H ∣ = ∣ H ∣ |aH|=|H| aH=H

假如 a ∉ H a\not\in H aH,那么 a H ∩ H = ∅ aH \cap H=\empty aHH=,且 a H aH aH 内没有相同的元素,根据陪集的定义,显然有 ∣ a H ∣ = ∣ H ∣ |aH|=|H| aH=H

性质3

如果 b ∈ a H b\in aH baH,那么有 b H = a H bH=aH bH=aH

因为 b ∈ a H b\in aH baH,所以 b b b 可以表示为 a ∗ x a*x ax,所以 b H = a ∗ x H = a H bH=a*xH=aH bH=axH=aH

性质4

根据性质 3 3 3,可以得到这样的推论:如果 a H ∩ b H ≠ ∅ aH\cap bH\ne \empty aHbH=,那么 a H = b H aH=bH aH=bH

证明很显然,设 c ∈ ( a H ∩ b H ) c\in (aH\cap bH) c(aHbH),那么就有 b H = c H = a H bH=cH=aH bH=cH=aH

拉格朗日定理

对于有限群 G G G 的任意子群 H H H,都有 ∣ H ∣ ∣ ∣ G ∣ |H|||G| HG

人话翻译: G G G 的阶是 H H H 的阶的倍数。

不要被拉格朗日吓到了,证明不难。

首先有一个结论: H H H 的所有陪集的并集等于 G G G。证明很显然。

又因为, H H H 的陪集 a H aH aH 要么满足 H = a H H=aH H=aH,要么满足 H ∩ a H = ∅ H\cap aH=\empty HaH=,所以可以将 G G G 划分为若干块,每一块是 H H H 的一个陪集,根据性质2,每一块的大小都是 ∣ H ∣ |H| H,所以 ∣ H ∣ ∣ ∣ G ∣ |H|||G| HG,以及 ∣ G ∣ ∣ H ∣ \frac {|G|} {|H|} HG 就等于块数。

以及,下面都只考虑有限群。

轨道-稳定集定理

这个定理主要用来辅助证明burnside定理。

首先给两个定义:

  1. 对于一个状态 k k k,将置换群 G G G 作用在 k k k 上,所有能够转移到的状态记录在集合 E k E_k Ek 中,我们称 E E E 为等价类, E k E_k Ek k k k 所在的等价类
  2. 对于一个状态 k k k,假如一个置换 T T T 作用在 k k k 上依然得到 k k k,那么将 T T T 记录在 Z k Z_k Zk 中, Z k Z_k Zk 表示作用在 k k k 上依然得到 k k k 的置换的集合。

轨道-稳定集定理:

对于任意状态 k k k,都有 ∣ E k ∣ × ∣ Z k ∣ = ∣ G ∣ |E_k|\times |Z_k|=|G| Ek×Zk=G

先给个例子理解一下,就用百度百科上的正方形顶点二着色问题:
在这里插入图片描述
一共有 4 4 4 种置换:不动,旋转 90 ° , 180 ° , 270 ° 90\degree,180\degree,270\degree 90°,180°,270°,显然他们可以组成一个置换群 ( G , 连 接 ) (G,连接) (G,)

这里没有像上面一样考虑翻折操作,因为这里只需要这四种置换就能组成置换群,换言之,在这题中任意翻折操作等价于某个旋转操作。(你可以试试看,对于任意状态 a a a,假如翻折能得到状态 b b b,那么 a a a 通过旋转也一定能得到状态 b b b

考虑状态 2 2 2,在 G G G 的作用下能得到的状态有 E 2 = { 2 , 3 , 4 , 5 } E_2=\{2,3,4,5\} E2={2,3,4,5},作用在状态 2 2 2 上依然得到状态 2 2 2 的置换只有不动,即 ∣ Z 2 ∣ = 1 |Z_2|=1 Z2=1,又因为 ∣ G ∣ = 4 |G|=4 G=4,所以有 ∣ E 2 ∣ × ∣ Z 2 ∣ = ∣ G ∣ |E_2|\times |Z_2|=|G| E2×Z2=G

再看状态 1 1 1,在 G G G 的作用下能得到的状态有 E 1 = { 1 } E_1=\{1\} E1={1},作用在状态 1 1 1 上依然能得到状态 1 1 1 的置换有 4 4 4 种(显然状态 1 1 1 怎么转都不变),即 ∣ Z 1 ∣ = 4 |Z_1|=4 Z1=4,也满足 ∣ E 1 ∣ × ∣ Z 1 ∣ = ∣ G ∣ |E_1|\times |Z_1|=|G| E1×Z1=G

轨道-稳定集定理 证明:

首先, Z k Z_k Zk 其实是 G G G 的一个子群,因为它包含了所有作用在 k k k 上不变的置换,所以满足封闭性,连接运算满足结合律逆元就是反着操作,由于顺着操作不会变,所以反着操作也不会变,所以反着操作这个置换也一定在 Z k Z_k Zk 中,单位元就是不动,很显然不动这个置换一定在所有 Z Z Z 里面。

再看 E k E_k Ek 中的状态,对于一个状态 p ( p ≠ k ) p(p\ne k) p(p=k),从 k k k 转移到 p p p 一定要用到一个 Z k Z_k Zk 以外的置换 a a a,那么就存在一个 Z k Z_k Zk 的陪集 a Z k aZ_k aZk,且 Z k ∩ a Z k = ∅ Z_k\cap aZ_k=\empty ZkaZk=

结合性质 3 3 3 以及在拉格朗日定理中提到的将 G G G 进行分块,我们知道,对于任意 b ∈ a H b\in aH baH,都有 b H = a H bH=aH bH=aH,也就是说,在 G G G 中有 ∣ H ∣ |H| H 个置换可以将 H H H 变成陪集 a H aH aH,且 a H = H aH=H aH=H,不妨称这些置换为同类置换,显然的,对于子群 H H H 而言,有 ∣ G ∣ ∣ H ∣ \frac {|G|} {|H|} HG 种不同类置换。

可以发现一个性质 P P P:对于状态 k k k,同类的置换 b ∈ a Z k b\in aZ_k baZk 作用在 k k k 上时,得到的新状态 K K K 都是相同的。证明很显然,所有本质相同的 b b b 都可以表示为 a ∗ x a*x ax ∗ * 是连接运算),所以 b b b 作用在 k k k 上 等价于 先让 x x x 作用在 k k k 上,再让 a a a 作用在 k k k 上,由于 x ∈ Z k x\in Z_k xZk,所以 x x x k k k 上作用完后依然得到 k k k,所以所有 b ∈ a H b\in aH baH k k k 上作用都等价于 a a a k k k 上作用。

此时, k k k 一共可以置换到 ∣ E k ∣ |E_k| Ek 种状态,根据性质 P P P,我们可以知道,这说明在所有置换中,有 ∣ E k ∣ |E_k| Ek 种本质不同的置换,于是得到 ∣ E k ∣ = ∣ G ∣ ∣ H ∣ |E_k|=\frac {|G|} {|H|} Ek=HG,移项即得到 ∣ E k ∣ × ∣ H ∣ = ∣ G ∣ |E_k|\times |H|=|G| Ek×H=G,而在这里, H H H 就是 Z k Z_k Zk,于是得证

简单回顾一下,事实上这个证明可以概括为:对 k k k 而言,与不动同类的置换有 Z k Z_k Zk,不同类置换作用在 k k k 上会得到 E k E_k Ek 这些状态,而一组同类置换的数量乘以不同的置换类数等于 ∣ G ∣ |G| G,所以 ∣ Z k ∣ × ∣ E k ∣ = ∣ G ∣ |Z_k|\times |E_k|=|G| Zk×Ek=G

burnside定理

这才是 O I OI OI 中群论的重头戏,基本上题目都是用到这个定理来解决。(顺便提一句, P o ˊ l y a P\acute olya Poˊlya 定理的本质就是burnside定理)

还是要先说一个定义:在上面我们知道,对于一个状态 k k k,存在一些置换 Z k Z_k Zk,满足 Z k Z_k Zk 中的置换作用在 k k k 上时依然得到 k k k,设 T ∈ Z k T\in Z_k TZk,那么我们称 k k k T T T 的不动点。显然,一个置换可以有多个不动点,设 c ( f i ) c(f_i) c(fi) 表示置换 f i f_i fi 的不动点数。

为了方便,设群 ( G , ∗ ) (G,*) (G,) 作用在状态 [ 1 , n ] [1,n] [1,n] 上,满足 G = { f i ∣ i ∈ [ 1 , n ] } G=\{f_i|i\in[1,n]\} G={fii[1,n]},其中 f i f_i fi 是一个置换,以及设 S S S 表示所有状态形成的等价类数量。

burnside定理:

S = 1 ∣ G ∣ ∑ i = 1 ∣ G ∣ c ( f i ) S=\frac 1 {|G|}\sum_{i=1}^{|G|} c(f_i) S=G1i=1Gc(fi)

有了轨道-稳定集定理,这个东西证明起来真的太容易了。

先看后面的 ∑ i = 1 ∣ G ∣ c ( f i ) \sum_{i=1}^{|G|} c(f_i) i=1Gc(fi),即所有置换的不动点数量之和,换一个角度来求这个东西,它等于 所有等价类的 ∣ E ∣ × ∣ Z ∣ |E|\times |Z| E×Z 之和,因为 E E E 中所有状态都是 Z Z Z 中任意置换的不动点。而每个等价类的 ∣ E ∣ × ∣ Z ∣ |E|\times |Z| E×Z 都等于 ∣ G ∣ |G| G。所以所有等价类的 ∣ E ∣ × ∣ Z ∣ |E|\times |Z| E×Z 之和就等于 S × ∣ G ∣ S\times |G| S×G

带入到上面的柿子,很显然等式成立了。

这个东西要应用到题目里的话,一般题目会要求出本质不同的方案数,而本质相同的方案之间一般可以通过旋转或翻折等方式得到,我们将这些操作作为置换,构成置换群,将其作用在所有方案上,可以得到若干个等价类,一个等价类里的方案都是可以通过置换相互得到的,这表明他们都是本质相同的方案,所以本质不同的方案数就是等价类数,用burnside定理求出来即可。

P o ˊ l y a P\acute olya Poˊlya 定理

再次声明,这只是burnside定理的一个具体使用方式,要做更广泛的题还是要用burnside定理。

以及,回顾一个有点久远的知识点:每个置换可以表示成若干个循环的乘积。

P o ˊ l y a P\acute olya Poˊlya 定理:

G = { f 1 , f 2 , . . . , f ∣ G ∣ } G=\{f_1,f_2,...,f_{|G|}\} G={f1,f2,...,fG} 是作用在 [ 1 , n ] [1,n] [1,n] 上的置换群,给 [ 1 , n ] [1,n] [1,n] 进行染色,有 c o l col col 种颜色,则总方案数为 c o l n col^n coln,对于置换 f i f_i fi,设 m ( f i ) m(f_i) m(fi) 表示置换 f i f_i fi 可以拆成多少个循环的乘积,那么在 G G G 的作用下, [ 1 , n ] [1,n] [1,n] 的等价类数量为
1 ∣ G ∣ ∑ i = 1 ∣ G ∣ c o l m ( f i ) \frac 1 {|G|}\sum_{i=1}^{|G|} col^{m(f_i)} G1i=1Gcolm(fi)

其实,里面的 c o l m ( f i ) col^{m(f_i)} colm(fi) 就等价于burnside定理中的 c ( f i ) c(f_i) c(fi),即不动点数量,因为 f i f_i fi 可以拆成 m ( f i ) m(f_i) m(fi) 个循环,而每个循环内要保持不动的话必须要求每个状态的颜色都相同,一共有 m m m 中颜色可以选择,而两两循环间的颜色互不相关,所以总不动点数就是 c o l m ( f i ) col^{m(f_i)} colm(fi)

例题

题表

UVA10601 Cubes   题解
[AHOI2002]黑白瓷砖   题解
SP422 TRANSP2 - Transposing is Even More Fun   题解
[HNOI2009]图的同构记数   题解
P4128 [SHOI2006]有色图   题解

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值