群论学习笔记

1.什么是群(群的四要素)

1.1群的组成

集合 \(G\not=\varnothing\)​ 和​​ \(G\)​ 上的运算 \(\cdot\)​ 构成的代数结构 \((G, \cdot)\)​​

人话:集合+运算=群,记作\((集合,运算)\)​。

1.2群的定义

1.2.1封闭性

\(\forall a,b\in G,a\cdot b\in G\)

人话:任意两个集合内的元素进行运算后,不会得到集合以外的元素。

1.2.2结合律

\(\forall a, b,c\in G,(a\cdot b)\cdot c=a\cdot(b\cdot c)\)

人话:类似于加法/乘法的结合律,只要相对位置不改变,运算的顺序对运算结果无影响。

1.2.3单位元

\(\exists e\in G,\forall a\in G,e\cdot a=a\cdot e=a\)

人话:类似于加法/乘法中的0/1,与集合内任何元素运算后结果都是那个元素。

1.2.4逆元

\(\forall a\in G,\exists b\in G,a\cdot b=b\cdot a =e\),称 \(b\)\(a\) 的逆元,记作 \(a^{-1}\)

人话:相当于加法/乘法的相反数/倒数。

1.3群的性质

1.3.1定理:单位元唯一

证明:

假设有两个不同的单位元 \(e_1,e_2\)​,根据性质​1.2.3,有 \(e_1=e_1e_2=e_2\),与假设矛盾,故假设不成立。

\(\Box\)

1.3.2定理:每个元素的逆元唯一

证明:

假设 \(a\in G\) 有两个不同的逆元 \(b,c\in G\),根据性质1.2.4,有 \(a\cdot b=a\cdot c\)

所以 \(a^{-1}(a\cdot b)=a^{-1}(a\cdot c)\)

根据性质1.2.2,有 \((a^{-1}\cdot a)\cdot b=(a^{-1}\cdot a)\cdot b\Rightarrow e\cdot b=b=e\cdot c=c\)

假设不成立。左部同理。

\(\Box\)

1.3.3定理:元素的阶

对于任意的有限群 \((G,\cdot)\)​, \(\forall a\in G,\exists k,a^k=e\)​​,此时,称 \(k\)\(a\) 的阶,且有 \(a^{-1}=a^{k-1}\)

证明:

根据性质1.1.1,\(\forall a\in G,\{a,a^2,a^3,...,a^{|G|},a^{|G|+1}\}\subseteq G\)​​,​​

因为 \(G\)​ 内没有相同的两个元素,因此 \(\{a,a^2,a^3,...,a^{|G|+1}\}\) 至少有两个相同的元素,假设 \(a^x=a^y,x<y\)​​​

\(a^{y-x}\cdot a^x=a^{y-x}\cdot a^y\),即 \(a^y=a^{y-x}\cdot a^y=e\cdot a^y\),所以 \(a^{y-x}=e,k=y-x\)

\(\Box\)

1.4子群

1.4.1子群定义

\((G,\cdot)\)​​,\(H\subseteq G且H\not=\varnothing\)​,且 \((H,\cdot)\)​ 也是群,则 \((H,\cdot)\)​ 是 \((G,\cdot)\)​ 的子群, 记为 \(H\leq G\)

1.4.2陪集及其性质

\(H\leq G\),且 \(g\in G\),则

  1. \(gH=\{g\cdot t|h\in H\}\), 称 \(gH\)\(H\)\(G\) 内的左陪集
  2. \(Hg=\{h\cdot s|h\in H\}\)​, 称 \(Hg\)​ 为 \(H\)​ 在 \(G\)​ 内的右陪集

常见表述:

  1. \(H\leq G\), 则 \(G/H\) 表示 \(G\)\(H\) 的全体左陪集, 即 \(\{gH|g\in G\}\)
  2. \(H\leq G\), 则 \([G:H]\) 表示 \(G\)\(H\) 的不同陪集的数量

1.4.2.1性质1:\(\forall g\in G,|H|=|Hg|\)

证明:

假设存在 \(g\in G\) , 满足 \(|H|\not =|Hg|\)

所以, 根据陪集的定义, \(\exists h_1,h_2\in H,h_1\cdot g=h_2\cdot g且h_1\not =h_2\)​​

与集合的性质矛盾, 故假设不成立

\(\Box\)

1.4.2.2性质2:\(\forall g\in G,g\in Hg\)

证明:

根据定义1.2.3, \(e\in H\)

因为 \(e\cdot g=g\)​​​​, ​所以 \(g \in Hg\)​​​

\(\Box\)

1.4.2.3性质3:\(Hg=H\iff g\in H\)

充分性证明:

假设存在 \(g\)​​ , 使得 \(Hg=H且g\notin H\)​​​, 则 \(g\not\in Hg\)​​​

与性质1.4.2.2矛盾

\(\Box\)

必要性证明:

假设存在 \(g\)​, 使得 \(g\in H且Hg\not=H\)​, 则 \(\exists h\in H,h\cdot g\notin H\)

与性质1.2.1矛盾

\(\Box\)

1.4.2.4性质4:\(Ha=Hb\iff a\cdot b^{-1}\in H\)

充分性证明:

易知 \(a\in Hb\), 因此 \(\exists h\in H,h\cdot b=a\)

即, \(h=a\cdot b^{-1}\)

\(\Box\)

必要性证明:

根据性质1.4.2.4, \(Hab^{-1}=H\)

因为 \(Hab^{-1}b=\{h\cdot a\cdot b^{-1}\cdot b|h\in H\}=\{h\cdot a|h\in H\}=Ha\)

又因为 \(Hab^{-1}b=Hb\), 所以\(Ha = Hb\)

\(\Box\)

1.4.2.5性质5:\(Ha\cap Hb\not=\varnothing\iff Ha=Hb\)

充分性证明:

假设 \(x\in Ha\cap Hb\)​​​​, 则 \(\exists h_1,h_2\in H,h_1\cdot a=h_2\cdot b=x\)​​​, 因此 \(ab^{-1}=h_1^{-1}h_2\)​​

根据性质1.2.1和性质​​1.2.4, \(h_1^{-1}h_2\in H\)​, 所以\(ab^{-1}\in H\)

根据性质1.4.2.4, \(Ha=Hb\)

\(\Box\)

必要性证明:略

1.4.2.6性质6:\(H\)的全体右陪集的并等于G

证明:

根据性质1.4.2.2, \(\forall g\in G, g\in Hg\)

\(\Box\)

1.4.3Lagrange定理

\[|H|[G:H]=|G| \]

证明:

根据性质1.4.2.5和性质1.4.2.6, 得到 \(|H|[G:H]=|G|\)

\(\Box\)

2.置换群

2.1置换操作

2.1.1置换操作的表示

有限集合到自身的双射(即一一对应)称为置换。集合 \(G=\{a_1,a_2, ...,a_n\}\)​ 上的置换可以表示为

\[f=\begin{pmatrix}a_1 &a_2&...&a_n \\ p_1&p_2&...&p_n \end{pmatrix} \]

人话:将某个有序的有限集合重新排列,“重新排列”这个操作就叫集合的置换。例如,将 1 替换为 \(a_1\)​ ,\(n\)​ 替换为 \(a_n\)​。

2.1.2循环表示

假设有一个置换 \(f=\begin{pmatrix}a_1&a_2&a_3&a_4&a_5\\a_3&a_1&a_2&a_5&a_4\end{pmatrix}\)​​​,如果我们将每个元素看成一个节点,将 \(i\)​​ 向 \(a_i\)​​​ 连边,那么每个节点恰好有一条出边和一条入边,得到的图就是若干个不相交的简单环。因此,我们可以用更简单的循环表示法表示这样的置换。

循环置换可以表示为

\[(a_1,a_2,...,a_n)=\begin{pmatrix}a_1&a_2&...&a_{n-1}&a_n\\a_2&a_3&...&a_n&a_1\end{pmatrix} \]

以开始提到的置换为例,该置换可以表示为 \((1,3,2)\cdot (4,5)\),置换的乘法后文会提到。

2.1.3置换乘法

对于两个置换 \(f=\begin{pmatrix}a_1&a_2&...&a_n\\a_{p_1}&a_{p_2}&...&a_{p_n}\end{pmatrix}\)​ 和 \(g=\begin{pmatrix}a_{p_1}&a_{p_2}&...&a_{p_n}\\a_{q_1}&a_{q_2}&...&a_{q_n}\end{pmatrix}\)​ ,\(f\)​ 和 \(g\)​ ​​的乘积记为 \(f\cdot g\)​ ,其值为 \(f\cdot g =\begin{pmatrix}a_1&a_2&...&a_n\\a_{q_1}&a_{q_2}&...&a_{q_n}\end{pmatrix}\)

人话:将原序列先经过操作 \(f\)​​ ,再经过操作 \(g\)​​​​ 后的等价置换(一步到位)。注意,置换乘法不一定满足交换律。

2.2置换群

2.2.1置换群的验证

上文已经定义了置换以及置换乘法, 本节验证是否满足群的定义。

封闭性: 显然满足。

结合律: 显然满足。

单位元: 存在, \(e=(1, 2, ...,n)\)

逆元: 显然存在。

因此, 本文的主角: 置换群登场。

2.2.2群作用

置换群是一个由置换操作组成的群,而非传统意义上的元素。

因此,置换群必然是依托某个作用对象而存在的。而作用对象, 就是集合。

对于一个集合 \(M\)​ 和群 \((G,\cdot )\)​, 若给定了一个二元函数 \(\phi(v,k)\)​,其中 \(v\in G\)\(k\in M\)​,且有:

\[\phi(e,k)=k\\\phi(g,\phi(s,k))=\phi(g\cdot s,k) \]

则称群 \((G,\cdot )\)​ 作用于 集合 \(M\)

2.3相关定理

\((G,\cdot )\)​ 是一个置换群, 作用于集合 \(X\)

方便起见,下文中 \(\phi (g,x)\)​ 记为 \(g(x)\)

2.3.1轨道-稳定子定理

2.3.1.1概念

  • 不动点 :对于 \(g\in G\)​​​​​​​​,若 \(\exists x\in X,g(x)=x\)​​​​​​​,则称 \(x\)​​​​​​​ 是 \(g\)​​​​​​​​ 下的不动点,\(x\in X^g\)
  • \(x\)​​​​​​​​ 不动置换类(稳定子):对于 \(g\in G\)​​​​​​​,若 \(x\)​​​​​​​ 是 \(g\)​​​​​​​ 下的不动点,则 \(g\)​​​​​​​ 属于 \(x\)​​​​​​​​ 不动置换类,记为 \(g\in G^x\)​。
  • 等价类(轨道):\(G(x)=\{g(x)|g\in G\}\), 即 \(x\) 能够通过 \(G\) 内的置换操作所能够到达的所有元素。

2.3.1.2定理:\(|G^x||G(x)|=|G|\)

证明:

首先证明 \((G^x,\cdot)\)\((G,\cdot)\) 的一个子群。

封闭性:\(\forall g_1,g_2\in G^x,(g_1\cdot g_2)(x)=x\),因此 \((g_1\cdot g_2)(x)\in G^x\),封闭性得证。

结合律:显然。

单位元:因为 \(e(x)=x\),所以 \(e\in G^x\)\(G^x\) 存在单位元。

逆元:\(\forall g\in G^x,(g\cdot g^{-1})(x)=e(x)=x\),又因为 \(g(x)=x\),所以 \(g^{-1}(x)=x\),所以 \(g^{-1}\in G^x\),逆元存在。

根据Lagrange定理,有 \(|G^x||G:G^x|=|G|\)

只需证明:\(|G:G^x|=|G(x)|\)

此时需要构建一个关于 \(g(x)\)​ 与 \(G^x\)​ 的陪集的双射关系。

显然,对于 \(g(x)\) 可以令其对应陪集 \(gG^x\)

\(g_1,g_2\in G^x,g_1(x)=g_2(x)\)​,则 \((g_1\cdot g_2^{-1})(x)=e(x)=x\),所以\(g_1\cdot g_2^{-1}\in G^x\)

根据性质1.4.2.4,\(g_1\cdot g_2^{-1} G^x\iff g_1G^x=g_2G^x\)​​,因此相同的 \(g(x)\)​​​ 在相同的陪集中,相同的陪集中都是相同的 \(g(x)\)

因此 \(|G:G^x|=|G(x)|\) 得证。

\(\Box\)

2.3.2Burnside引理

\(X/G=\{G(x)|x\in X\}\)​,则

\[|X/G|=\frac{1}{|G|}\sum_{g\in G}X^g \]

人话:\(X\) 在群 \((G,\cdot)\) 作用下的等价类总数等于每一个 \(g\) 作用下的不动点总数的平均数。

证明:

每个元素仅属于一个轨道,因此,有:\(|X/G|=\sum\limits_{x\in X}\frac{1}{|G(x)|}\)

根据轨道-稳定子定理,有:\(|X/G|=\sum\limits_{x\in X}\frac{|G^x|}{|G|}\)

因此,\(|X/G|=\frac{1}{|G|}\sum\limits_{x\in X}|G^x|=\frac{1}{|G|}\sum\limits_{g\in G}|X^g|\)

\(\Box\)

2.3.3Pólya定理

设有 \(n\) 个元素,每个元素有 \(m\) 种染色方法,\((G,\cdot)\)\(n\) 个元素的置换群,则染色总方案数为

\[\frac{1}{|G|}\sum_{g\in G}T(g) \]

其中,\(T(g)\)​ 表示在置换 \(g\)​ 下,不变的染色方案数

2.4实战演练

2.4.1【模板】Pólya 定理)

如果不考虑旋转相同,那么本题的答案十分显然,即 \(m^n\)

考虑将旋转表示为一个置换群 \((G,\cdot)\) ,定义旋转为将所有顶点按照相同方向移动若干个位置,旋转1这个操作就可以表示为 \(r=(a_1,a_2,\cdots,a_n)\)​​​

根据置换乘法的定义,旋转 \(m\)​​ 操 作可以表示为 \(r^m=(a_1,a_2,\cdots ,a_n)^m\)​​

容易得到,\(G=\{r^0,r,...,r^{n-1}\}\)\(r^0\)​​ 即为单位元)

根据引理,不同染色的方案数为:

\[\frac{1}{|G|}\sum_{g\in G}T(g) \]

问题变为了如何求 \(T(r)\)

首先对于环上的每个节点标号,分别为 \(0,1,...,n-1\)

容易发现,对于某个操作 \(r^k\)​​​​,如果要使旋转后染色相同,那么必须满足 \({\rm col}(i)={\rm col}((i+k)\%n)\)​​​

不难想象,当循环节长度为 \(\gcd (k,n)\)​​ 时,总是满足旋转后的方案不变,因此,\(T(r^k)=m^{\gcd(k,n)}\)​,特别的,\(T(r^0)=m^n\)

所以:

\[{\rm ANS}=\frac{1}{n}\sum_{k=1}^{n}m^{\gcd(k,n)} \]

接下来就是莫比乌斯反演部分:

\[\begin{eqnarray}{\rm ANS}&=&\frac{1}{n}\sum_{d|n}m^d\sum_{k=1}^{n}[\gcd(k,n)=d] \\ &=&\frac{1}{n}\sum_{d|n}m^d\sum_{k=1}^{\frac{n}{d}}\left[\gcd(k,\frac{n}{d})\right] \\ &=&\frac{1}{n}\sum_{d|n}m^d\varphi(\frac{n}{d}) \end{eqnarray} \]

2.4.2【HNOI2009】图的同构计数)

如果不考虑同构,显然有 \(2^{\frac{n(n-1)}{2}}\) 种不同的图

分析一下同构定义:将图各个点重新标号后得到的图相同。因此,可以将同构看作是点置换的等价类。

定义群 \((G,\cdot)\) ,其中 \(G\) 是全体置换操作组成的集合,\(|G|=n!\)

由置换乘法可知,可以将一个置换拆分成若干个“环”,两个“环”之间不会发生点的置换。

因此,对于每一个置换操作,可以这样计算其不动点(在本题中是“不动图”)个数,将边分两种情况讨论(每种情况都需要保证图中的边在这个置换下不动):

  1. 边的两个端点在同一个“环”上(假设参与这个置换循环的点数为 \(n\)):

    想象一个圆周上有 \(n\)​ 个点,全部向同一个方向旋转一个位置,得到的图不变即为“不动图”。不难发现,只要所有点连出的所有边的长度一一对应,得到的即为“不动图”。一个点最多连出 \(\left\lfloor\frac{n}{2}\right\rfloor\) 条不同的边,故共有 \(2^{\left\lfloor\frac{n}{2}\right\rfloor}\)​​​​​ 种“不动图”。

  2. 边的两个端点不在同一个“环”上(假设两个环的点数分别为 \(a\)\(b\)):

    考虑一条边做 \({\rm lcm}(a,b)\) 次操作就能回到原本的位置,因此等价类的大小应当是 \({\rm lcm}(a,b)\)。每条边都在同样大小的等价类中,因此不同等价类的个数为 \(\frac{ab}{{\rm lcm}(a,b)}=\gcd (a,b)\),故共有 \(2^{\gcd (a,b)}\) 种“不动图”。

综上,对于一种置换,假设其拆分后的环长度分别为 \(b_1\leq b_2\leq \cdots \leq b_m\)​,那么不动点的个数应当是:

\[2^{\sum\limits_{i=1}^m\left\lfloor\frac{b_i}{2}\right\rfloor+\sum\limits_{i<j} \gcd(b_i,b_j)} \]

根据Burnside引理,有:

\[{\rm ANS}=\frac{1}{n!}\sum 2^{\sum\limits_{i=1}^m\left\lfloor\frac{b_i}{2}\right\rfloor+\sum\limits_{i<j} \gcd(b_i,b_j)} \]

\(n!\) 枚举置换显然不现实。根据式子不难发先,如果两个不同的置换有相同的 \(b\) 序列,那么这两个置换的不动点个数也是相同的。

考虑每种 \(b\) 序列对应多少种不同的置换:

  1. 首先将长度为 \(n\) 分为 \(m\) 段,每段代表一个循环,因此环内第一个数字无论放在哪个位置都是相同的,所以方案数为 \(\frac{n!}{\prod\limits_{i=1}^m b_i}\)
  2. 其次考虑不同环之间的关系,发现两个大小相同的环的相对位置对与方案数没有影响,因此方案数为 \(\frac{n!}{\prod\limits_{i=1}^m b_i\prod\limits_{l} c_l!}\)​​​​​​,\(c_l\)​​​​​ 表示长度等于 \(l\)​​​​​​ 的环​的个数。

可以通过 dfs 进行整数拆分得出 \(b\) 序列。总答案为:

\[{\rm ANS}=\sum \frac{2^{\sum\limits_{i=1}^m\left\lfloor\frac{b_i}{2}\right\rfloor+\sum\limits_{i<j} \gcd(b_i,b_j)}}{\prod\limits_{i=1}^m b_i\prod\limits_{l} c_l!} \]

3.参考文献

置换群-oi-wiki)

群论小记-command_block的博客)

题解 P4980 【【模板】Polya定理】-Soulist 的博客)

posted @ 2021-07-31 22:12  __allenge  阅读(485)  评论(0编辑  收藏  举报