群的基本定义#
一个群 (Group) 是由一个非空集合 \(G\) 与其上的二元运算(记为\(\circ\))构成的代数结构,该二元运算满足以下公理:
结合律(Associativity):\(\forall a, b, c \in G\),有 \((a \circ b) \circ c = a \circ (b \circ c).\)
单位元(Identity element):存在一个元素 \(e \in G\),使得对任意 \(a \in G\):\(e \circ a = a \circ e = a.\)
逆元(Inverse element):对任意 \(a \in G\),存在一个元素 \(a^{-1} \in G\),满足 \(a \circ a^{-1} = a^{-1} \circ a = e.\)
按照以上定义,群中的元素在运算 \(\circ\) 下具有封闭性。
需要注意的是,集合以及其上定义的群通常会共用一个符号 \(G\),但它们是两个不同的数学对象。群上定义了超出集合概念的运算结构,更正式的情况下记为 \((G, \circ)\)。我们称该集合为群\(G\)的基础集(underlying set)。
最常见的两种二元运算为加法和乘法,而群上仅定义有一种运算,据此可以分出加法群(additive group)和乘法群(multiplicative group)。加法群的单位元即为0,任一元素 \(x\) 的逆元为 \(-x\);乘法群的单位元为1,任一元素 \(x\) 的逆元为 \(x^{-1}\)。此外,排列复合、矩阵乘法、对称差、异或 XOR、函数复合等运算都能构成群。
群的定义并不要求运算满足交换律,据此可以分出阿贝尔群(Abelian group)和非阿贝尔群(non-Abelian group)。
群的阶(order)定义为群中元素的个数,记为 \(|G|\)。阶为有限的群称为有限群,阶为无穷的群称为无限群。
基本概念#
在研究集合时,我们会用到子集,函数和等价关系商等概念。类似的,在研究群时,我们会用到子群,同态和商群等概念。下面分别做介绍。
子群#
如果 \(H\) 是 \(G\) 的一个非空子集,并且 \(H\) 在 \(G\) 的运算 \(\circ\) 下也构成一个群,那么 \(H\) 称为 \(G\) 的子群(Subgroup)。记作 \(H \leq G\)。
子群的条件可以简化为以下判定法则:
- 封闭性:\(\forall a, b \in H\),有 \(a \circ b \in H\)。
- 单位元:群 \(G\) 的单位元 \(e\) 在 \(H\) 中。
- 逆元:\(\forall a \in H\),其逆元 \(a^{-1} \in H\)。
若 \(H \neq G\) 且 \(H \leq G\),则称 \(H\) 为 \(G\) 的真子群(Proper subgroup),记作 \(H < G\)。
陪集#
设 \(H\) 是群 \(G\) 的一个子群,则可以使用 \(H\) 将 \(G\) 中的元素划分为若干个不相交且彼此具有相同大小的子集,这些子集称为 \(H\) 的陪集(coset)。陪集又可以分出左陪集和右陪集,给定 \(G\) 的一个元素 \(g\),则有:
- 左陪集(Left coset):\(gH = {g \circ h \mid h \in H}\)
- 右陪集(Right coset):\(Hg = {h \circ g \mid h \in H}\)
容易看出,\(H\) 的陪集的阶数与\(H\)的阶数相等,\(H\) 同时是自身的左陪集和右陪集。左陪集和右陪集的数量相等,称为 \(H\) 在 \(G\) 中的指数(index),记作 \([G:H]\)。
一个重要的定理是拉格朗日定理:如果 \(H\) 是 \(G\) 的子群,那么 \(|G|=|H|[G:H]\)。这个定理描述了一个群和它的子群的阶数之间的关系。特别地,如果 \(G\) 是有限群,那么可以得到推论:只有整除 \(|G|\) 的数才可能是子群的阶,因此素数阶群必为循环群; \(G\) 中每个元素的阶都会整除群 \(G\) 的阶。
正规子群#
\(G\)的所有元素\(g\)对应的左陪集和右陪集相等,即\(gH=Hg\)时,\(H\) 是 \(G\) 的正规子群(normal subgroup),记作 \(H \triangleleft G\)。一个等价的定义是,一个正规子群 \(H\) 在其所属群 \(G\) 的元素 \(g\) 的共轭作用下保持不变,即 \(gHg^{-1} = H\)。
商群#
可以在陪集构成的集合上赋予一个满足群公理的运算,使之成为商群(quotient group)。正式地,若 \(H\) 是群 \(G\) 的一个正规子群,则可以在 \(G\) 的所有左陪集(或右陪集)集合上定义运算 \((aH) \circ (bH) = (a \circ b)H\),这样构造出的代数结构称为商群,记作 \(G/H\)。
事实上,能够证明如果这种商群结构能定义成功,则 \(H\) 必定是正规子群。左右陪集不等的情况下无法定义出满足群公理的二元运算,但仍可定义类似的结构,形成一个齐性空间。
之所以称为“商”群,是因为类似于整数除法,8除以2等于4相当于我们把8个对象分组为了各含4个对象的两个子集。而商群类似于我们使用 \(H\) 对 \(G\)进行了划分。
同态与同构#
设 \(G\) 和 \(H\) 是两个群, 如果 \(G\) 到 \(H\) 有一个映射 \(\phi\), 使得 $$ \phi(ab) = \phi(a) \phi(b), \forall a,b \in G $$ 那么称 \(\phi\) 是 \(G\) 到 \(H\) 的一个同态映射,简称为同态。
如果 \(\phi\) 是单射,则 \(\phi\) 称为单同态;
如果 \(\phi\) 是满射,则 \(\phi\) 称为满同态;
如果 \(\phi\) 是双射,则 \(\phi\) 称为同构。此时我们说群 \(G\) 和 \(H\) 是同构的,记作 \(G \cong H\)。
显然同态保持群的运算结构,它具有以下基本性质:
- 单位元映射到单位元:\(\phi(e_G) = e_H\)
- 逆元映射到逆元:\(\phi(a^{-1}) = \phi(a)^{-1}\)
在研究同态时,两个重要概念是:
核:同态 \(\phi: G \rightarrow H\) 的核定义为映射到 \(H\) 单位元的 \(G\) 中所有元素构成的集合: $$ \ker(\phi) = {g \in G \mid \phi(g) = e_H} $$
像:同态 \(\phi\) 的像是 \(G\) 中所有元素通过 \(\phi\) 映射得到的 \(H\) 的子集: $$ \text{im}(\phi) = {\phi(g) \mid g \in G} $$
可以证明,同态的核是原群的正规子群,而同态的像是目标群的子群。
第一同构定理:如果 \(\phi: G \rightarrow H\) 是群同态,则 $$G/\ker(\phi) \cong \text{im}(\phi)$$
这里的概念可能有些复杂,我们举三个例子进行说明:
1. 从整数群 \(\mathbb{Z}\) 到整数模 \(n\) 群 \(\mathbb{Z}_n\) 的映射
我们构造一个映射: $$ \phi: \mathbb{Z} \rightarrow \mathbb{Z}_n, \quad \phi(k) = k \operatorname{mod} n $$
可以快速对该映射的同态性质进行检验,\(\forall a,b \in \mathbb{Z}\), $$ \phi(a+b) = (a+b) \operatorname{mod} n $$ $$ \phi(a) \oplus \phi(b) = [(a \operatorname{mod} n) + (b \operatorname{mod} n)] \operatorname{mod} n = (a+b) \operatorname{mod} n $$ 其中第二个式子利用了模运算的基本性质。可见该映射确实构成了一个群同态。
我们现在将目光转移到该同态的核与像,显然我们有: $$ \ker(\phi) = \{k \in \mathbb{Z} \,|\, \phi(k)=0 \in \mathbb{Z}_n \} = \{k \in \mathbb{Z} \,|\, k \operatorname{mod} n =0 \} = n\mathbb{Z} $$ 核由所有能被 \(n\) 整除的整数构成,这些元素在映射后都变成 \(\mathbb{Z}_n\) 的单位元“0”。也就是说,这些元素在映射后不可区分。而 $$ \operatorname{Im}(\phi) = \{\phi(k): k \in \mathbb{Z}\} = \mathbb{Z}_n $$ 显然这个映射是满射。
由于 \(\phi\) 是满射,但不是单射,因此它不是一个同构。
根据第一同构定理, $$ G / \ker(\phi) \cong \operatorname{Im}(\phi) \Longrightarrow \mathbb{Z} / n \mathbb{Z} \cong \mathbb{Z}_n $$ 也就是说,当我们把 \(\mathbb{Z}\) 按照子群 \(n\mathbb{Z}\) 进行划分后,得到的商群与 \(\mathbb{Z}_n\) 同构。
2. 从正实数乘法群 \(\mathbb{R}^{*}_{+}\) 到实数加法群 \(\mathbb{R}\) 的对数映射
我们定义映射: $$ \phi: \mathbb{R}^{*}_{+} \Longrightarrow \mathbb{R} \quad \phi(x) = \ln(x) $$ 显然我们有: $$ \phi(x \times y) = \ln(xy) = \ln(x) + \ln(y) = \phi(x) + \phi(y) $$
因此该映射是一个同态
$$ \ker(\phi) = \{x \in \mathbb{R}^{*}_{+} | \ln(x) = 0 \} = \{ 1 \} $$
只有 \(\mathbb{R}^{*}_{+}\) 的单位元1被映射到目标群 \(\mathbb{R}\) 的单位元0。因此 \(\phi\) 是一个单射。
$$ \operatorname{Im}(\phi) = \{\ln(x): x > 0\} = \mathbb{R} $$
这也是一个满射。
因此该映射是一个同构,直观理解就是,乘法对应加法是指数与对数的互逆关系。
3. 从可逆矩阵群 \(\mathrm{GL}_n(\mathbb{R})\) 到非零实数乘法群 \(\mathbb{R}^*\) 的行列式映射
这里 \(\mathrm{GL}_n(\mathbb{R})\) 是所有 \(n \times n\) 可逆实矩阵的集合,运算是“矩阵乘法”。
构造映射:
$$ \mathrm{GL}_n(\mathbb{R}) \rightarrow \mathbb{R}^* \quad A \mapsto \det(A) $$
显然对于任意可逆矩阵 \(A, B\),我们有:
$$ \det(A B) = \det(A) \cdot \det(B) $$
因此该映射是一个同态。
对于核与像,我们有:
$$ \ker(\det) = \{A \in \mathrm{GL}_n(\mathbb{R}) \,|\, \det(A)=1 \} $$
核是所有行列式为1的可逆矩阵构成的集合,通常记为 \(\mathrm{SL}_n(\mathbb{R})\)。显然该映射不是单射。
$$ \operatorname{Im}(\det) = \{\det(A): A \in \mathrm{GL}_n(\mathbb{R})\} = \mathbb{R}^* $$
这是因为给定任意 \(r \ne 0\),都能找到一个对角矩阵 \(\operatorname{diag}(r, 1, 1, \ldots, 1)\),使其行列式值为 \(r\)。因此该映射是满射。
因此该同态不是同构,这体现了尽管行列式把矩阵映射的较为简明,但同一个行列式值的不同矩阵在目标群中被压缩为了同一个点。
因此,核可以帮助我们发现“映射过程中被合并了哪些元素(信息)”;像可以帮助我们看出“同态覆盖了目标群的哪些部分”。一旦核只有单位元,就意味着没有任何元素被额外折叠,映射是单射。若此时像又是整个目标群,那么两个群就同构。
示例#
想象一张在平面上的正方形纸,所有能够将这张正方形纸映射到自身的几何变换(例如旋转、翻折)构成了一个群。我们用 \(D_4\) 表示它,常称为“正方形的二面体群”,其基础集中包含八个元素(八种刚体运动),运算则是“连续地做变换”(也就是复合)。为方便描述,我们把顺时针旋转 \(90^\circ\) 记作 \(r\),把绕固定对称轴的一次翻折记作 \(s\)。\(D_4\) 的八个元素可写为: $$ \{\, e,\; r,\; r^2,\; r^3,\; s,\; rs,\; r^2s,\; r^3s \}, $$ 其中 \(e\) 表示“不动”,即恒等变换;\(r^k\) 表示顺时针旋转 \(90^\circ\) 的 \(k\) 次方;\(s\) 表示一次翻折;\(r^k s\) 表示先翻折、再旋转 \(k\) 次(或者先旋转 \(k\) 次,再翻折,视变换顺序约定而定,但概念上就是“旋转+翻折”的组合)。
在 \(D_4\) 里,任何三个变换复合起来都可以通过结合律减少成两个变换的复合,不会有歧义;不动元 \(e\) 对任何元素都满足 \(e \circ g = g \circ e = g\);每个变换都有“逆变换”,例如 \(r\) 的逆元是 \(r^3\),翻折 \(s\) 的逆元就是它本身 \(s\)。所以 \(D_4\) 确实是一个群。
再来看子群。\(D_4\) 里有一个重要子群,即只做旋转的那部分 \(\langle r\rangle = \{e,\, r,\, r^2,\, r^3\}\)。它的元素个数是4,满足前面提到的三条子群判定标准,故 \(\langle r\rangle\) 的确是 \(D_4\) 的子群。作为子群,\(\langle r\rangle\) 在全群中的单位元还是同一个 \(e\),逆元也沿用 \(D_4\) 的“逆变换”概念。\(\langle r\rangle\) 本身又是一个循环群。
如果拿 \(\langle r\rangle\) 去划分陪集,可以将 \(D_4\) 的八个元素划分为两个大小相等的不相交子集:\(\langle r\rangle\) 自身(它既是一个左陪集,也是一个右陪集),以及 \(s\langle r\rangle = \{s,\, rs,\, r^2s,\, r^3s\}\)。我们可以感受一下这一划分:任意元素若属于第一个子集(只做旋转),或第二个子集(带有翻折),彼此就不会有重叠,也恰好把群里的元素“一分为二”。这说明了指数 \([D_4 : \langle r\rangle]\) 是2,从而也能验证拉格朗日定理里的 \(|D_4| = 8\) 与 \(|\langle r\rangle|=4\) 的关系:\(8 = 4 \times 2\)。
继续观察会发现 \(\langle r\rangle\) 还是 \(D_4\) 的一个正规子群,即对每一个 \(g \in D_4\),都有 \(g \langle r\rangle g^{-1} = \langle r\rangle\)。直观来说,对称地“转一圈”再“转回来”,或者“翻折一下”再“翻回来”,都不会跳出那个纯粹旋转的子群。因为 \(\langle r\rangle\) 是正规子群,我们可以在它的陪集上赋予群运算,从而形成商群 \(D_4 / \langle r\rangle\)。这个商群只有两个元素:一个是 \(\langle r\rangle\) 自身,另一个是 \(s \langle r\rangle\)。运算定义如下:\((a\langle r\rangle) \circ (b\langle r\rangle) = (a \circ b)\langle r\rangle\)。读起来可能有点抽象,其实可以把这两个陪集理解成“是否带有翻折”的两种对称类型,整个结构恰好和只有两个元素的群(记为 \(\mathbb{Z}_2\) 或者 \({0,1}\))相似,也就是我们在抽象上把“纯旋转”和“带翻折”当作两个宏观的等价类。
最后定义一个映射 \(\phi: D_4 \to \{1, -1\}\)(其中 \(\{1,-1\}\) 可以理解成一个两元素的乘法群),规定凡是“纯旋转”的元素都映射到 \(1\),凡是“带翻折”的元素都映射到 \(-1\)。这样便保持了群结构:任何两个纯旋转复合仍是纯旋转,对应 \(1 \times 1 = 1\);任何翻折与旋转的组合出来还是翻折,对应 \(1 \times -1 = -1\);两个翻折复合回到纯旋转,对应 \((-1) \times (-1) = 1\)。这映射 \(\phi\) 就是一个群同态。它的核正是 \(\langle r\rangle\),对应映到 \(1\) 的所有元素;它的像是 \(\{1, -1\}\),即整个目标群。按照第一同构定理,我们得到 \(D_4 / \langle r\rangle \cong \{1, -1\}\),呼应了上面关于商群的认识。