发现没学相关知识所以学学
笔者写这篇文章时没应用过 所以全是理论知识
\(1.\) 基础知识
\(\textbf{定义 1.1 }\text{(置换)}\)
一个 \(S\) 上的置换 \(f:S\to S\) 是一个有限集合 \(S\) 到自身的双射。若记 \(S = \{a_1, a_2, \dots, a_n\}\),则我们可以将置换 \(f\) 记作
\[f = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ a_{p_1} & a_{p_2} & \cdots & a_{p_n} \end{pmatrix} \]其中 \(\{p_1, p_2, \dots, p_n\}\) 是一个 \(1\sim n\) 的排列。
可以发现 \(f:S\to S\) 和 \(1\sim \left\lvert S\right\rvert\) 的排列一一对应,因此 \(S\) 上不同的置换共有 \(\left\lvert S\right\rvert!\) 个。
下面我们也会将置换 \(f\) 看作序列 \(\langle f_i \rangle\),序列由 \(f = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ a_{f_1} & a_{f_2} & \cdots & a_{f_n} \end{pmatrix}\) 隐式定义。
\(\textbf{定义 1.2 }\text{(置换的复合)}\)
对于两个置换
\[f = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ a_{p_1} & a_{p_2} & \cdots & a_{p_n} \end{pmatrix}\qquad g = \begin{pmatrix} a_{p_1} & a_{p_2} & \cdots & a_{p_n}\\ a_{q_1} & a_{q_2} & \cdots & a_{q_n} \end{pmatrix} \]他们的复合 \(h\) 记作 \(h = f\circ g\),定义为
\[h = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ a_{q_1} & a_{q_2} & \cdots & a_{q_n} \end{pmatrix} \]
简单来说,就是先做 \(f\) 置换,再做 \(g\) 置换。
\(\textbf{定义 1.3 }\text{(置换群)}\)
对于一个有限集合 \(S\),记 \(S\) 上的置换的全体组成集合 \(G\)。不难发现,\((G, \circ)\) 构成了一个群。这个群的任意一个子群被称为一个置换群。
\((G, \circ)\) 是群的证明很简单。事实上,置换群是最基础的群。
\(\textbf{定义 1.4 }\text{(循环置换)}\)
循环置换是一类特殊的置换。可以记作
\[\begin{pmatrix} a_1 & a_2 & \cdots & a_n \end{pmatrix} = \begin{pmatrix} a_1 & a_2 & \cdots & a_{n - 1} & a_n \\ a_2 & a_3 & \cdots & a_{n} & a_1 \end{pmatrix} \]
若一个循环置换定义在 \(S\) 上,且一部分元素按如上关系置换,另一部分元素的像是自身,则一般不记后一部分元素,在计算复合时自然加入即可。
如果两个循环置换不含有相同的元素,则称这两个循环置换是不交的。容易证明任意置换都能被分解为不交的数个循环置换的复合。例如
\[\begin{pmatrix} a_1 & a_2 & a_3 & a_4 & a_5 \\ a_2 & a_1 & a_5 & a_3 & a_4 \end{pmatrix} = \begin{pmatrix} a_1 & a_2 \end{pmatrix} \circ \begin{pmatrix} a_3 & a_5 & a_4 \end{pmatrix} \]这里的定义是怎么舒服怎么来的。
\(\textbf{定义 1.4 }\text{(对映射作置换)}\)
对于两个集合 \(A = \{a_1, a_2, \dots, a_n\}\) 和 \(B = \{ b_1, b_2, \dots, b_m \}\),考虑一个 \(A\to B\) 的映射 \(f: A\to B\),保证每个 \(a\in A\) 都可以在 \(B\) 中找到一个像 \(b_{f_i}\),我们记它为
\[f = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ b_{f_1} & b_{f_2} & \cdots & b_{f_n} \end{pmatrix} \]这里的 \(\langle f_i \rangle\) 是一个值域为 \([1, m]\) 内整数的序列,其不一定是排列。
这样的映射可以和 \(A\) 上的一个置换 \(g\) 复合,我们可以看作是对映射 \(f\) 作了置换 \(g\)。具体的,如果记
\[g = \begin{pmatrix} a_1 & a_2 & \cdots & a_n \\ a_{g_1} & a_{g_2} & \cdots & a_{g_n} \end{pmatrix} \]则对 \(f\) 作置换 \(g\) 得到置换 \(g(f)\),满足
\[g(f) = \begin{pmatrix} a_{g_1} & a_{g_2} & \cdots & a_{g_n} \\ b_{f_1} & b_{f_2} & \cdots & b_{f_n} \end{pmatrix} \]
\(2.\) \(\text{Burnside}\) 引理
设 \(A, B\) 为两个有限集合,\(X\) 为一系列 \(A\to B\) 的映射组成的集合。大多数例子中常有 \(B\) 是颜色组成的组合类,因此 \(A\to B\) 的映射也可以看作是一种染色方案。
设 \(G\) 是 \(A\) 上的一个置换群,且 \(X\) 在 \(G\) 中置换作用下封闭。我们称经过 \(G\) 内的置换可以互相转化的 \(X\) 内映射组成一个等价类,这里需要满足等价类极大。换句话说,若 \(X\) 中一个映射作一系列 \(G\) 中的置换后与另一个映射相同,则这两个映射在同一个等价类中。
等价类的全体组成了集合 \(X / G\)。
记 \(g(X) = \{x \in X \mid g(x) = x \}\)。
\(\textbf{定理 2.1 }\text{(Burnside 引理)}\)
\(\text{Burnside}\) 引理声称
\[\left\lvert X / G\right\rvert = \frac{1}{\left\lvert G \right\rvert} \sum_{g\in G} \left\lvert g(X) \right\rvert \]
为证明这个定理,我们首先需要引入轨道-稳定子定理。
\(\textbf{引理 2.1 }\text{(轨道-稳定子定理)}\)
对于 \(x\in X\),定义 \(G(x) = \{ g(x) \mid g \in G\}, G^x = \{ g\in G \mid g(x) = x\}\),我们称 \(G(x)\) 是 \(x\) 的轨道,\(G^x\) 是 \(x\) 的稳定子。轨道-稳定子定理声称
\[\left\lvert G\right\rvert = \left\lvert G(x)\right\rvert \times \left\lvert G^x\right\rvert \]
容易证明 \(G^x\) 是 \(G\) 的子群。则我们可以得到
\[\left\lvert G\right\rvert = [G : G^x] \times \left\lvert G^x\right\rvert \]其中 \([G : G^x]\) 计数不同的 \(G^x\) 的左陪集。随后只需要证明 \(\left\lvert G(x)\right\rvert = [G : G^x]\),这点我们可以通过构造合法 \(g(x)\) 和不同陪集 \(gG^x\) 间的双射证明。
设 \(\phi(g(x)) = gG^x\),我们需要证明 \(\phi\) 是一个双射。
取两个置换 \(f, g\) 满足 \(f(x) = g(x)\)。左复合 \(f^{-1}\) 得到 \(f^{-1}\circ g(x) = x\),也就是 \(f^{-1}\circ g \in G^x\)。我们可以知道 \((f^{-1}\circ g )G^x = G^x\),即 \(fG^x = gG^x\)。这点逆推也成立。
因此对同一个 \(g(x)\) 只有一个 \(gG^x\),并且这个关系可逆,也就是说这是一个双射。
因此得证。
我们可以证明 \(\text{Burnside}\) 引理了:
\[\begin{aligned} &\sum_{g\in G} \left\lvert g(X) \right\rvert \\ = \ & \sum_{g\in G} \left\lvert \{x \in X \mid g(x) = x \} \right\rvert \\ = \ & \sum_{x\in X} \left\lvert \{g \in G \mid g(x) = x \} \right\rvert\quad &(改枚举对象) \\ = \ & \sum_{x\in X} \left\lvert G^x \right\rvert \quad &(定义) \\ = \ & \sum_{x\in X} \frac{ \left\lvert G \right\rvert }{ \left\lvert G(x) \right\rvert }\quad &(轨道-稳定子定理) \\ = \ & \left\lvert G \right\rvert \sum_{x\in X} \frac{ 1 }{ \left\lvert G(x) \right\rvert } \\ = \ & \left\lvert G \right\rvert \sum_{Y \in X / G} \sum_{x \in Y} \frac{ 1 }{ \left\lvert G(x) \right\rvert } \\ = \ & \left\lvert G \right\rvert \sum_{Y \in X / G} \sum_{x \in Y} \frac{ 1 }{ \left\lvert Y \right\rvert }\quad &(彼此不同的像,每个等价类出一个) \\ = \ & \left\lvert G \right\rvert \sum_{Y \in X / G} 1 \\ = \ & \left\lvert G \right\rvert \times \left\lvert X / G \right\rvert \end{aligned}\]因此得证。
\(3.\) \(\text{Pólya}\) 定理
设 \(M\) 是一个大小为 \(m\) 的集合,取一个 \(M\) 上的置换群 \(G\)。
取一个组合类 \(B\),\(B\) 中对象常是颜色。考虑 \(M\to B\) 的映射的全体组成的集合 \(B^M\),我们称其中的一个元素为染色。
两个染色 \(\phi_1, \phi_2\) 彼此相同,当且仅当 \(\exists g \in G, g(\phi_1) = \phi_2\)。我们将彼此相同的染色放在一个等价类中,它们的全体组成了集合 \(B^M / G\)。
\(B\) 中的一种颜色 \(\beta\) 现在可以带权 \(w(\beta)\)。一个染色 \(\phi\) 的权记作 \(w(\phi) = \prod_{v \in M} w(\phi(v))\)。一个等价类的权是其中任意染色的权,容易发现一个等价类中的染色的权彼此相同。这里的权不一定是一个数字。
\(\textbf{定理 3.1 }\text{(Pólya 定理)}\)
\(\text{Pólya}\) 定理声称
\[\sum_{\phi \in B^M / G} w(\phi) = Z\left( G; \sum_{\beta \in B} w(\beta), \sum_{\beta \in B} w^2(\beta), \dots \sum_{\beta \in B} w^m(\beta) \right) \]其中
\[Z(G; x_1, x_2, \dots, x_m) = \frac{1}{\left\lvert G\right\rvert} \sum_{g\in G} \prod_{i = 1}^m x_i^{j_i(g)} \]其中 \(j_i(g)\) 表示 \(g\) 中大小为 \(i\) 的循环置换的数量。
当 \(\forall k, w(k) = 1\) 时就得到了 OI-Wiki 上的形式
\[\left\lvert B^M / G\right\rvert = \frac{1}{\left\lvert G\right\rvert} \sum_{g\in G} \left\lvert B\right\rvert ^{c(g)} \qquad c(g) = \sum_{i\ge 1} j_i(g) \]这个形式是好证的,当 \(X = B^M\) 时容易得到 \(\left\lvert B\right\rvert ^{c(g)} = \left\lvert g(X)\right\rvert\)。
例题:
【模板】Pólya 定理 ;
Necklace of Beads ;
Let it Bead ;
Color ;
模型染色 ;
烷烃计数 ;
烷基计数 ;
烯烃计数 ;
有色图.