近世代数--置换群--置换permutation分解成什么?置换的级如何计算?
- 置换的分解
- 置换的级计算
博主是初学近世代数(群环域),本意是想整理一些较难理解的定理、算法,加深记忆也方便日后查找;如果有错,欢迎指正。
我整理成一个系列:近世代数,方便检索。
有一些概念。
-
置换permutation:设集合 S S S是一个有限非空集合, G G G是 S S S到它自身上的所有元素一一映射,即 π : S → S \pi:S\rightarrow S π:S→S。
-
对称群symmetric group:当 S S S为具有 n n n个元素的有限集合 时,它的全部置换(所有一一映射,每个一一映射是所有元素的一一映射)所组成的群 G G G也称为 n n n次对称群,记为 S n S_n Sn。
例子: S = { 1 , 2 , 3 } S=\{1,2,3\} S={1,2,3}
S n = S_n= Sn= { { 1 , 2 , 3 } { 1 , 2 , 3 } } , { { 1 , 2 , 3 } { 1 , 3 , 2 } } , { { 1 , 2 , 3 } { 2 , 1 , 3 } } , { { 1 , 2 , 3 } { 2 , 3 , 1 } } , { { 1 , 2 , 3 } { 3 , 1 , 2 } } , { { 1 , 2 , 3 } { 3 , 2 , 1 } } \left\{ \begin{aligned} \{1,2,3\}\\ \{1,2,3\} \end{aligned} \right\}, \left\{ \begin{aligned} \{1,2,3\}\\ \{1,3,2\} \end{aligned} \right\}, \left\{ \begin{aligned} \{1,2,3\}\\ \{2,1,3\} \end{aligned} \right\}, \left\{ \begin{aligned} \{1,2,3\}\\ \{2,3,1\} \end{aligned} \right\}, \left\{ \begin{aligned} \{1,2,3\}\\ \{3,1,2\} \end{aligned} \right\}, \left\{ \begin{aligned} \{1,2,3\}\\ \{3,2,1\} \end{aligned} \right\} {{1,2,3}{1,2,3}},{{1,2,3}{1,3,2}},{{1,2,3}{2,1,3}},{{1,2,3}{2,3,1}},{{1,2,3}{3,1,2}},{{1,2,3}{3,2,1}}
简写: S n = { ( 1 ) , ( 2 , 3 ) , ( 1 , 2 ) , ( 1 , 2 , 3 ) , ( 1 , 3 , 2 ) , ( 1 , 3 ) } S_n=\{(1),(2,3),(1,2),(1,2,3),(1,3,2),(1,3)\} Sn={(1),(2,3),(1,2),(1,2,3),(1,3,2),(1,3)}
- 置换群permutation group:置换群是对称群的子群。
- 轮换cycle: S S S是有限非空集合,如果我们从 S S S中任意元素 x x x开始重复置换,得到 π ( x ) , π ( π ( x ) ) , … … \pi(x),\pi(\pi(x)),…… π(x),π(π(x)),……直到某个置换返回 x x x,那么我们称这些置换为一个轮换。
- 对换transposition:只有两个元素的轮换。
- 不相交的轮换disjoint cycle:两个轮换 σ = { i 1 , i 2 … … i r } , τ = { j 1 , j 2 … … j s } , \sigma=\{i_1,i_2……i_r\},\tau=\{j_1,j_2……j_s\}, σ={i1,i2……ir},τ={j1,j2……js},如果有 i k ≠ j l , k = 1 , 2 , … … r , l = 1 , 2 … … s i_k\neq j_l,k=1,2,……r,l=1,2……s ik=jl,k=1,2,……r,l=1,2……s,那么我们称这两个轮换 σ , τ \sigma,\tau σ,τ不相交。两个不相交轮换的乘积是可交换的commutative: σ ⋅ τ = τ ⋅ σ \sigma·\tau=\tau·\sigma σ⋅τ=τ⋅σ。
例子: ( 1 , 3 , 4 ) , ( 2 , 5 ) (1,3,4),(2,5) (1,3,4),(2,5)。可交换的: ( 1 , 3 , 4 ) ⋅ ( 2 , 5 ) = ( 2 , 5 ) ⋅ ( 1 , 3 , 4 ) (1,3,4)·(2,5)=(2,5)·(1,3,4) (1,3,4)⋅(2,5)=(2,5)⋅(1,3,4)
置换的分解
任何置换都可以分解成不相交的轮换的乘积,而且分解成的轮换是唯一的。
证明:数学归纳法
假设集合 ∣ S ∣ = n |S|=n ∣S∣=n,
- 当 n = 1 n=1 n=1,则 τ = ( 1 ) \tau=(1) τ=(1);
- 假设 n − 1 n-1 n−1时结论成立;即 α n − 1 \alpha^{n-1} αn−1可以写成 α 1 ⋅ α 2 … … ⋅ α r \alpha_1·\alpha_2……·\alpha_r α1⋅α2……⋅αr的形式,其中 α i , ( i = 1 … … r ) \alpha_i,(i=1……r) αi,(i=1……r)是一个轮换, α i 、 α j ( i ≠ j ) \alpha_i、\alpha_j(i\neq j) αi、αj(i=j)不相交
- 现在证明 S = { 1 , 2 , 3 … … , n } S=\{1,2,3……,n\} S={1,2,3……,n}
取一个置换: α n = \alpha^{n}= αn= { 1 i 1 } , { 2 i 2 } , … … , { n − 1 i n − 1 } , { n i n } \left\{ \begin{aligned} 1\\i_1 \end{aligned} \right\}, \left\{ \begin{aligned} 2\\i_2 \end{aligned} \right\}, ……, \left\{ \begin{aligned} n-1\\i_{n-1} \end{aligned} \right\}, \left\{ \begin{aligned} n\\i_n \end{aligned} \right\} {1i1},{2i2},……,{n−1in−1},{nin}
有两种情况:- i n = n i_n=n in=n,这种情况直接得出 α n = α n − 1 ⋅ ( n ) = α 1 ⋅ α 2 … … ⋅ α r ⋅ ( n ) \alpha^{n}=\alpha^{n-1}·(n)=\alpha_1·\alpha_2……·\alpha_r·(n) αn=αn−1⋅(n)=α1⋅α2……⋅αr⋅(n),是不相交的轮换的乘积形式;
- i n ≠ n i_n\neq n in=n,则有 ∃ k ∈ { 1 , 2 … … n − 1 } , i k = n , α n = {\exists} k\in \{1,2……n-1\},i_k=n,\alpha^{n}= ∃k∈{1,2……n−1},ik=n,αn= { 1 i 1 } , { 2 i 2 } , … … , { k − 1 i k − 1 } , { k i k } , { k + 1 i k + 1 } , … … { n − 1 i n − 1 } , { n i n } \left\{ \begin{aligned} 1\\i_1 \end{aligned} \right\}, \left\{ \begin{aligned} 2\\i_2 \end{aligned} \right\}, ……, \left\{ \begin{aligned} k-1\\i_{k-1} \end{aligned} \right\}, \left\{ \begin{aligned} k\\i_{k} \end{aligned} \right\}, \left\{ \begin{aligned} k+1\\i_{k+1} \end{aligned} \right\}, …… \left\{ \begin{aligned} n-1\\i_{n-1} \end{aligned} \right\}, \left\{ \begin{aligned} n\\i_n \end{aligned} \right\} {1i1},{2i2},……,{k−1ik−1},{kik},{k+1ik+1},……{n−1in−1},{nin}
- 这样 i k = n , i n ∈ { 1 , 2 … … n − 1 } , i_k=n,i_n\in \{1,2……n-1\}, ik=n,in∈{1,2……n−1},有 α n = ( i k , i n ) α n − 1 ⋅ ( n ) \alpha^n=(i_k,i_n)\alpha^{n-1}·(n) αn=(ik,in)αn−1⋅(n),即**先把 i n i_n in换到前 n − 1 n-1 n−1个对应关系中,然后就跟前一种可能是一样的。**展开来, α n = ( i k , i n ) ⋅ α 1 ⋅ α 2 … … ⋅ α r \alpha^n=(i_k,i_n)·\alpha_1·\alpha_2……·\alpha_r αn=(ik,in)⋅α1⋅α2……⋅αr。
- 在 α 1 , α 2 … … , α r \alpha_1,\alpha_2……,\alpha_r α1,α2……,αr中必定存在一个,且只存在一个(因为 α i , ( i = 1 … … r ) \alpha_i,(i=1……r) αi,(i=1……r)彼此不相交) α i \alpha_i αi包含 i n i_n in,即 a i a_i ai与 ( i k , i n ) (i_k,i_n) (ik,in)相交。
- 假设是 α 1 \alpha_1 α1,可以写成 α 1 = ( i n , a , … … b ) \alpha_1=(i_n,a,……b) α1=(in,a,……b),那么 ( i k , i n ) ⋅ α 1 = ( i k , i n , a , … … b ) , α n = ( i k , i n ) ⋅ α 1 ⋅ α 2 … … ⋅ α r = ( i k , i n , a , … … b ) ⋅ α 2 … … ⋅ α r (i_k,i_n)·\alpha_1=(i_k,i_n,a,……b), \alpha^n=(i_k,i_n)·\alpha_1·\alpha_2……·\alpha_r=(i_k,i_n,a,……b)·\alpha_2……·\alpha_r (ik,in)⋅α1=(ik,in,a,……b),αn=(ik,in)⋅α1⋅α2……⋅αr=(ik,in,a,……b)⋅α2……⋅αr,是互不相交的轮换,证毕。
置换的级计算
置换 σ \sigma σ:
- 本身是 r r r长轮换的话,那 o r d ( σ ) = r ord(\sigma)=r ord(σ)=r
- 如果不是轮换,则置换可以分解为轮换, σ = σ 1 ⋅ σ 2 ⋅ … … ⋅ σ t \sigma=\sigma_1·\sigma_2·……·\sigma_t σ=σ1⋅σ2⋅……⋅σt,其中 σ i \sigma_i σi为轮换;那么 o r d ( σ ) = l . c . m ( o r d ( σ 1 ) , o r d ( σ 2 ) , … … o r d ( σ t ) ) ord(\sigma)=l.c.m(ord(\sigma_1),ord(\sigma_2),……ord(\sigma_t)) ord(σ)=l.c.m(ord(σ1),ord(σ2),……ord(σt)), l . c . m ( ) l.c.m() l.c.m()是求最小公倍数。
理解,为什么置换的级是分解轮换级的最小公倍数:
- 轮换的级: o r d ( σ i ) ord(\sigma_i) ord(σi)的意思是最少“转多少次”才能使数字不变;例子: ( 1 , 3 , 4 ) = (1,3,4)= (1,3,4)= { 1 3 } , { 3 4 } , { 4 1 } \left\{ \begin{aligned} 1\\3 \end{aligned} \right\}, \left\{ \begin{aligned} 3\\4 \end{aligned} \right\}, \left\{ \begin{aligned} 4\\1 \end{aligned} \right\} {13},{34},{41}
“转1次”: ( 3 , 4 , 1 ) (3,4,1) (3,4,1)
“转2次”: ( 4 , 1 , 3 ) (4,1,3) (4,1,3)
“转3次”: ( 1 , 3 , 4 ) (1,3,4) (1,3,4)
所以 o r d ( ( 1 , 3 , 4 ) ) = 3 ord((1,3,4))=3 ord((1,3,4))=3
任意轮换的级就是这个轮换的元素个数 - 置换的级:置换分解成了多个轮换,那么我们需要将这个置换转每个轮换级的最小公倍数次,才能使所有元素都不变。例子: ( 1 , 3 , 4 , 2 , 5 ) = ( 1 , 3 , 4 ) ( 2 , 5 ) , ( 1 , 3 , 4 ) (1,3,4,2,5)=(1,3,4)(2,5),(1,3,4) (1,3,4,2,5)=(1,3,4)(2,5),(1,3,4)需要转3次, ( 2 , 5 ) (2,5) (2,5)需要转2次,那么 ( 1 , 3 , 4 , 2 , 5 ) (1,3,4,2,5) (1,3,4,2,5)需要转6次。