Pólya 定理 学习笔记
借鉴博客:
https://www.luogu.com.cn/blog/Soulist/solution-p4980
第二篇长文~
群
定义
定义一个集合 \(\operatorname{G}\) 与作用于该集合 \(\operatorname{G}\) 的二元运算 \(\times\) 为一个群当且仅当其满足如下四个性质,记为 \((\operatorname{G} , \times)\)。
1.封闭性:
\(\forall a,b\in \operatorname{G} , a \times b \in \operatorname{G}\)
2.结合律:
\(\forall a,b,c\in\operatorname{G},(a\times b)\times c = a\times (b\times c)\)
3.单位元:
\(\exists \ e \in \operatorname{G},\forall a\in\operatorname{G},a \times e = e \times a = a\)
\(e\) 被称为单位元。单位元最多只会有一个,如果有多个,那么就会在定义里出现矛盾。
4.逆元:
\(\forall a\in\operatorname{G},\exists \ a' \in \operatorname{G} a \times a' = a' \times a = e\)
不难得出逆元最多只会存在一个(反证法可以得出若存在多个则他们是相同的)。
方便起见,设一个群为 \(\operatorname{S}\) 下文中的 \(x \in \operatorname{S}\) 实际表示 \(x \in \operatorname{G}\)。
子群
若$ \operatorname{H} \subset \operatorname{G}$,且 \((\operatorname{H},\times)\)是一个群,那么称\((\operatorname{H},\times)\)是\((\operatorname{G},\times)\)的一个子群。
陪集
若 \(\operatorname{G}\) 是一个群,\(\operatorname{H}\) 是其一个子群,设 \(g \in \operatorname{G}\)。
定义 \(\operatorname{gH} = g \times h,h \in \operatorname{H}\) ,则称 \(\operatorname{gH}\) 为 \(\operatorname{H}\) 在 \(\operatorname{G}\) 内关于 \(g\) 的左陪集。
定义 \(\operatorname{Hg} = h \times g,h \in \operatorname{H}\) ,则称 \(\operatorname{Hg}\) 为 \(\operatorname{H}\) 在 \(\operatorname{G}\) 内关于 \(g\) 的右陪集。
陪集性质
这里讨论右陪集,左陪集同理。
- $ \forall g \in \operatorname{G} , |\operatorname{Hg}| = |\operatorname{H}|$
证明: 由陪集定义容易转化为证: \(\forall h_1,h_2\in\operatorname{G} , h_1 \times g \not= h_2 \times g\),其中\(h_1 \not= h_2\)。该命题显然成立。
- \(\forall g \in \operatorname{G},g \in \operatorname{Hg}\)
证明: 因为 \(\operatorname{H}\)为群, 则 \(e \in \operatorname{H}\) ,所以 \(e \times g \in \operatorname{Hg}\)。
- \(\operatorname{Hg} = \operatorname{H} \Longleftrightarrow g \in \operatorname{H}\)
证明:
右推左:由群的封闭性显然。
左推右:因为 \(\operatorname{H}\) 为群,所以 \(e \in \operatorname{H}\) , 所以 \(g = e \times g \in \operatorname{Hg} = \operatorname{H}\),所以 \(g \in \operatorname{H}\)。
- \(\operatorname{Ha} = \operatorname{Hb} \Longleftrightarrow a \times b^{-1} \in \operatorname{H}\)
证明:
左推右:
由条件得:
\(\forall h_1\in\operatorname{H}\ \ \exists \ h_2\in\operatorname{H} \ \ \ h_1 \times a = h_2 \times b\)
\(\therefore h_1^{-1} \times h_1 \times a \times b^{-1} = h_1^{-1} \times h_2 \times b \times b^{-1}\)
\(\therefore (h_1^{-1} \times h_1) \times a \times b^{-1} = h_1^{-1} \times h_2 \times (b \times b^{-1})\)
\(\therefore a \times b^{-1} = h_1^{-1} \times h_2\)
由群逆元性质可得 \(h_1^{-1} \in \operatorname{H}\)
由群封闭性质可得:
\(h_1^{-1} \times h_2 \in \operatorname{H}\)
所以 \(a \times b^{-1} \in \operatorname{H}\)
右推左:
由 性质3 可得:
\(\operatorname{H}(a \times b^{-1}) = \operatorname{H}\)
即:
\(\forall h_1\in\operatorname{H} \exists \ h_2\in\operatorname{H} \ \ \ \ h_1 \times a \times b^{-1} = h_2\)
\(\therefore h_1 \times a \times (b^{-1} \times b) = h_2 \times b\)
\(\therefore h_1 \times a = h_2 \times b\)
由定义得:
\(\operatorname{Ha} = \operatorname{Hb}\)
- \(\operatorname{Ha} \cap \operatorname{Hb} \not= \varnothing \iff \operatorname{Ha} = \operatorname{Hb}\)
证明:
设 \(c \in \operatorname{Ha} ,c\in\operatorname{Hb}\),则 \(\exists \ h_1 , h_2 \in \operatorname{H} \ , h_1 \times a = c = h_2 \times b\)
\(\therefore (h_1^{-1} \times h_1) \times a \times b^{-1} = h_1^{-1} \times h_2 \times (b \times b^{-1})\)
\(\therefore a \times b^{-1} = h_1^{-1} \times h_2\)
\(\because h_1,h_2\in\operatorname{H} , \therefore h_1^{-1} \in \operatorname{H}\)
\(\because \operatorname{H}\) 是群 ,\(h_1^{-1},h_2 \in \operatorname{H}\)
由群的封闭性得:
\(\therefore a \times b^{-1} = h_1^{-1} \times h_2 \in \operatorname{H}\)
由陪集性质4得:
\(\operatorname{Ha} = \operatorname{Hb}\)
- \(\operatorname{H}\) 的全体右陪集的并为 \(\operatorname{G}\)
证明:
因为 \(\operatorname{H}\) 为群,所以 \(e \in \operatorname{H}\),且 \(g\) 取遍 \(\operatorname{G}\) 中全部元素,所以 \(\operatorname{G}\) 包含于并集。
因为 \(\operatorname{H}\) 是 \(\operatorname{G}\) 的子群且 \(g \in \operatorname{G}\) ,由群的封闭性得,并集包含于 \(\operatorname{G}\)。
较为常见表述
若 \(\operatorname{H} \subset \operatorname{G}\) ,则 \(\operatorname{G} / \operatorname{H}\) 代表 \(\operatorname{G}\) 中所有的 \(\operatorname{H}\) 的左陪集的集合,即 \(\{\operatorname{gH},g \in \operatorname{G}\}\)。
若 \(\operatorname{H} \subset \operatorname{G}\) ,则 \([\operatorname{G}:\operatorname{H} ]\) 表示 \(\operatorname{G}\) 中\(\operatorname{H}\) 的不同的陪集的数量。
拉格朗日定理
对于有限群 \(\operatorname{H},\operatorname{G}\) ,若 \(\operatorname{H} \subset \operatorname{G}\) ,那么有:
证明:
由陪集性质一可得,每个陪集大小均为 \(|\operatorname{H}|\)。
由陪集性质五六可得,所有陪集不重不漏地覆盖了 \(\operatorname{G}\) 中所有元素。
由以上可发现定理显然成立。
置换
一些约定
双行表示法:
\(\sigma\) 表示将排列按照第一行的数置换成第二行的数的一个置换运算。
比如 \(\sigma ((1,2,3,4,5)) = (3,1,5,2,4)\)。
这种置换运算的合并运算是满足结合律的。
证明:
设一个任意元素为 \(x\)。设\(\sigma_k\) 表示 \(x\) 置换为 \(a_{k,x}\)
则需证:
\((\sigma_{1} \sigma_{2}) \sigma_{3} = \sigma_1 (\sigma_{2}\sigma_{3})\)
发现 \(\sigma_{1}\sigma_{2}\) 表示 \(x\) 置换为 \(a_{2,a_{1,x}}\)。
则\((\sigma_{1} \sigma_{2}) \sigma_{3}\) 表示 \(x\) 置换为 \(a_{3,a_{2,a_{1,x}}}\)
发现 \((\sigma_{2}\sigma_{3})\) 表示 \(x\) 置换为 \(a_{3,a_{2,x}}\)
则\(\sigma_{1} (\sigma_{2} \sigma_{3})\) 表示 \(x\) 置换为 \(a_{3,a_{2,a_{1,x}}}\)
证毕。
在证明过程中,我们很容易发现该运算与顺序有关,所以该运算一般不满足交换律。
置换群
令 \(\operatorname{M}\) 为对长度为\(n\) 的排列进行置换运算的所有运算构成的集合。令群 \(\operatorname{G} = (\operatorname{M} , \times)\) ,其中 \(\times\) 这个运算为上述提到的置换运算的合并运算。
现在我们要证明 \(\operatorname{G}\) 确实是一个群:
-
封闭性: 所有可能的运算都被包含,所以封闭。
-
单位元:
-
结合律: 置换运算的合并具有结合律上文已证。
-
逆元: 将两行表达式第一行和第二行交换即可得其逆元。
群作用
下面描述的是左群作用的定义,为方便,描述为群作用。
定义:
对于一个集合 \(\operatorname{M}\) 和群 \(\operatorname{G} (\operatorname{S},\times)\)。
给定一个二元函数(可以理解为一种特定二元运算),\(\varphi(v,k)\) ,其中 \(v\) 为群中的元素,\(k\) 为 \(\operatorname{M}\) 中的元素。
则称群 \(\operatorname{G}\) 作用于集合 \(\operatorname{M}\)。
对于这个定义的二元函数我们大可不必去理它到底是什么,在具体情况会有具体合适的意义。
比如,对于一个置换群,这个二元函数实际是置换运算对于一个排列的运算(置换运算在对排列运算时显然也可用合并运算结合)。
轨道-稳定子定理
轨道
令一个群 \(\operatorname{G}\) 作用在一个集合 \(\operatorname{X}\) 上。 \(\operatorname{X}\) 中的一个元素 \(x\) 的轨道是与 \(\operatorname{G}\) 中元素通过群作用函数运算后得到的所有元素的集合。记 \(x\) 的轨道为 \(\operatorname{G}(x)\)。
稳定子
稳定子集合定义为: \(\operatorname{G}^x = \{g | g \in \operatorname{G},g(x) = x\}\)。
轨道-稳定子定理
内容:
可以证明 \(\operatorname{G}^x\) 实际上是 \(\operatorname{G}\) 的子群。
根据群作用函数的定义,可以发现 \(e \in \operatorname{G}^x\)。
结合性因为 \(\operatorname{G}\) 是群,所以满足。
封闭性证明:
\(\forall f,g\in\operatorname{G}^x , f \not= g\) 显然有 \(\varphi(f , x) = \varphi(g , x) = x\)
\(\therefore x = \varphi(f , x) = \varphi(f,\varphi(g , x)) = \varphi(f \times g , x)\)
由 \(\operatorname{G}^x\) 的定义得,\(f \times g \in \operatorname{G}^x\)。
证毕。
逆元性证明:
令 \(g \in \operatorname{G}^x\)
\(\because x = \varphi(e , x) = \varphi(g \times g^{-1} , x) = \varphi(g , \varphi(g^{-1} , x))\)
\(\text{又}\because \varphi(g , x) = x\)
\(\therefore \varphi(g^{-1} , x) = x\)
\(\therefore g^{-1} \in \operatorname{G}^x\)
证毕。
所以由拉格朗日定理得:
所以现在仅需证 \([\operatorname{G}:\operatorname{G}^x] = |\operatorname{G}(x)|\)。
即 \(\operatorname{G}^x\) 的陪集数量等于 \(x\) 的轨道大小。
设 \(\operatorname{G}(x) = \{x_1,x_2,x_3,\dots x_n\}\)。
定义集合 \(\operatorname{S}_ i = \{f_j \in \operatorname{G} | \varphi(f_j , x) =x_i\}\) ,即能够得到 \(x\) 的轨道中的第 \(i\) 个元素的 \(\operatorname{G}\) 元素数量。
显然 \(\forall i,j , i \not=j,S_i \cap S_j = \varnothing\)。
且所有 \(\operatorname{S}\) 的并集为 \(\operatorname{G}\)。
那么我们现在只需要证 \(\operatorname{S}_ i\)中的元素对应的关于 \(\operatorname{G}^x\) 的陪集相同,且关于关于 \(\operatorname{G}^x\) 的陪集都能够对应到 \(\operatorname{G}\) 中的元素且这些元素属于同一个 \(S\) 集合。
令 \(f,g \in \operatorname{S}_ i\)
\(\therefore \varphi(f , x) = \varphi(g , x) = x_i\)
\(\therefore \varphi(f^{-1} , x_i) = \varphi(g^{-1} , x_i) = x\)
\(\therefore \varphi(f\times g^{-1} , x) = \varphi(g^{-1} , \varphi(f , x)) = x\)
所以 \(f \times g^{-1} \in \operatorname{G}^x\)。
由陪集性质 \(4\) 可得:
\(f\operatorname{G}^x = g\operatorname{G}^x\)
现在我们完成了第一部分的证明,证明了 \(\operatorname{S}_ i\) 的元素对应的关于 \(\operatorname{G}^x\) 的陪集相同。但不同的 \(\operatorname{S}_ i\) 可能会对应相同的陪集,我们现在要通过证明一个陪集对应的元素都属于同一个 \(\operatorname{S}_ i\)来否定这一点。
设 \(f,g \in \operatorname{G}^x\) 且 \(f\operatorname{G}^x = g\operatorname{G}^x\)。
由陪集性质 4 可得:
\(f \times g^{-1} \in \operatorname{G}^x\)
\(\therefore x = \varphi(f \times g^{-1} , x) = \varphi(g^{-1} , \varphi(f , x))\)
令\(\varphi(f ,x) = x_i\)
\(\therefore \varphi(g^{-1} , x_i) = x\)
\(\therefore \varphi(g , x) = x_i\)
\(\varphi(f,x) = \varphi(g , x)\)
所以一个陪集对应的元素都属于一个 \(\operatorname{S}_ i\)。
现在我们成功将 \(x\) 的轨迹元素与陪集一一对应,所以得证:
\([\operatorname{G}:\operatorname{G}^x] = |\operatorname{G}(x)|\)。
因此得证轨道-稳定子定理。
\(\operatorname{Burnside}\)定理
定义 \(\operatorname{G}\) 是一个置换群,其作用于一个集合 \(\operatorname{X}\)。若对于 \(x,y\in\operatorname{X},\exists\ g\in\operatorname{G} , \varphi(g , x) = y\) ,则 \(x , y\) 属于一个等价类。则 \(\operatorname{X}\) 中不同的等价类数量 \((|\operatorname{X}/\operatorname{G}|)\) 为:
其中,
证明:
根据定义容易发现,对于同一个等价类的元素,他们在 \(\operatorname{G}\) 的作用下属于同一个轨道,任意轨道恰好能对应一种等价类。
因此得到:
因此我们可以统计轨道数:
根据轨道-稳定子定理可以得到:
而后面部分由定义得:
因此证毕。
\(\operatorname{Pólya}\) 定理
该定理其实是对 \(\operatorname{Burnside}\) 定理的优化。
我们发现在 \(\operatorname{Burnside}\) 定理中,我们是从全集中去寻找不动点,在全集巨大的时候这样做效率是极低的。我们试图找到一种普适性的方法使得我们可以快速找到在特定置换运算下的特定不动点数量。
考虑一个置换运算:
由于我们希望求得不动点,那么就是通过 \(\sigma\) 置换后得到结果相同。所以可以推出,\(i\) 号元素必然与 \(a_i\) 号元素等价。因此不妨将 \(i\) 与 \(a_i\) 连边,这必然可以得到若干个简单环,而每个环中元素必然等价。
我们定义一个置换中的环的数量为 \(c(g)\),元素的种类数为 \(m\)。
因为每个环中元素相同,不同环无影响,根据乘法原理可以改写 \(\operatorname{Burnside}\) 定理为:
于是我们就推出了 \(\operatorname{Pólya}\) 定理。