原根存在性定理的群论证明
原根存在性定理的证明
定义模\(m\)意义下满足阶为\(\varphi(m)\)的元素为\(m\)的原根,求证\(m\in\N^+\)的原根存在,当且仅当\(m\in\{2,4,p^a,2p^a|p\in \complement_P\{2\},a\in\Z^+\}\),其中\(P\)为素数集。显然,如果\(m\)的原根存在,那么\(m\)的既约剩余系就是以原根为生成元的\(\varphi(m)\)阶乘法循环群。
若\(m\)的原根存在,则\(m\)有\(\varphi(\varphi(m))\)个原根,\(\varphi\)为[欧拉函数](欧拉函数_百度百科 (baidu.com))。
参考资料:[原根存在性定理的群论证明 - 知乎](原根存在性定理的群论证明 - 知乎 (zhihu.com))
\(m=2,4\)时显然,原根分别为\(1,3\),而且他们也都只有一个原根。
先证明\(p\in\complement_P\{2\}\) 有原根。
记\(S(d)=\{x\in\Z_p^*|\delta_p(x)=d\}\),其中\(\Z_p^*\)是\(p\)的既约剩余系,\(\delta_p(x)\)为模\(p\)意义下\(x\)的阶,即满足\(x^k\equiv 1\pmod p\)的最小正整数\(k\)记为\(\delta_p(x)\)。那么\(S(d)\)就是模\(p\)意义下的既约剩余系中的所有阶为\(d\)的元素。
那么根据定义,\(S(\varphi(p))\)中的所有元素都是\(p\)的原根。
由欧拉定理,模\(p\)意义下所有数的阶必定是\(\varphi(p)\)的因子,所以只有\(d|\varphi(p)=p-1\)的时候\(S(d)\)才不是空集。
欧拉定理的证明本来想直接引用百度百科的,但是看了一眼发现它没有证明引理。。。
引理:若\(\{a_i|1\leq i\leq \varphi(m)\}\)构成\(m\)的既约剩余系,那么\(\{ba_i|1\leq i\leq\varphi(m),b\bot m\}\)也是\(m\)的既约剩余系。
证明:反证法。否则就存在\(ba_i\equiv ba_j\pmod m\quad(i\neq j)\)。然后\(b\bot m\)就保证了模\(m\)意义下\(b\)的乘法逆元存在,也就是说它支持等号两边同时除去一个作为乘数的\(b\),那么就变成了\(a_i\equiv a_j\pmod m\quad(i\neq j)\),这和\(\{a_i\}\)是既约剩余系矛盾。因此同时乘上一个与\(m\)互质的数之后既约剩余系还是既约剩余系。证明欧拉定理:取\(m\)的既约剩余系\(a_1,\dots,a_{\varphi(m)}\),那么在模\(m\)意义下随便取一个和\(m\)互质的正整数\(a\),一定满足\(aa_1,\dots,aa_{\varphi(m)}\)也是既约剩余系。则\(\displaystyle\prod_{i=1}^{\varphi(m)}a_i\equiv\prod_{i=1}^{\varphi(m)}aa_i\equiv a^{\varphi(m)}\prod_{i=1}^{\varphi(m)}a_i\pmod m\)。又因为\(a_i\)构成既约剩余系,所以他们的乘法逆元都存在,左边和右边同时除以他们的累乘,可以得到\(a^{\varphi(m)}\equiv 1\pmod m\)。同时,又因为\(\delta_m(a)\)是满足\(a^k\equiv1\)的最小正整数\(k\),所以必定有\(\delta_m(a)|\varphi(m)\)。这两个公式就被称为欧拉定理。
而且诸多\(S(d)\)也构成了\(\Z_p^*\)的划分,即所有\(S(d)\)并起来就可以得到\(\Z_p^*\)。
所以可以有\(\sum_{d|\varphi(p)}|S(d)|=|\Z_p^*|=\varphi(p)\)
同时我们可以证明\(\displaystyle\sum_{d|\varphi(p)}\varphi(d)=\sum_{\frac{p}{d}|\varphi(p)}\varphi(d)=\sum_{d|\varphi(p)}\varphi(\dfrac{p}{d})\)
明显,\(\forall 1\leq a\leq p\),总共有\(p\)个整数取值。
同样,对于所有的\(a\),它与\(m\)的最大公因数\(\gcd(a,m)\)一定是\(m\)的因数(废话),那么就记这个最大公因数为\(d=\gcd(a,m)\),同时除以这个数,得到\(\gcd(\dfrac ad,\dfrac pd)=1\),那么对于每一个\(d|p\),就会有\(\varphi(\dfrac pd)\)个\(\dfrac ad\)与之互质。所以说,\(\displaystyle\sum_{d|p}\varphi(\dfrac pd)=p\)。
也可以这样理解,一方面来说\(a\)总共有\(p\)个,另一方面来说要满足\(\gcd(\dfrac ad,\dfrac pd)=1\)的\(a\)有\(\varphi(\dfrac pd)\)个,因此\(\displaystyle\sum_{d|p}\varphi(d)=p\)
如果代入\(\varphi(p)\)就可以得到\(\displaystyle\sum_{d|\varphi(p)}\varphi(d)=\varphi(p)\)
那么隔起来,我们可以说,\(\displaystyle \sum_{d|\varphi(p)}\varphi(d)=\varphi(p)=\sum_{d|\varphi(p)}|S(d)|\)
这个时候我们就有个猜想,有没有可能\(\forall d|\varphi(p),|S(d)|=\varphi(d)\)。如果这个成立,那么我们就可以得到\(|S(\varphi(p))|=\varphi(\varphi(p))\)。那么这样\(p\)的原根存在而且有\(\varphi(\varphi(p))\)个。
\(\forall S(d)\neq \emptyset,\exist a\in S(d),s.t.a^d\equiv 1 \pmod p\)
根据阶的定义,应该有\(a^0,a^1,\dots,a^{d-1}\)在模\(p\)意义下互不相同,虽然但是,他们都是\(x^d\equiv 1 \pmod p\) 的解。我们也可以根据数学归纳法证明\(d\)次方程的解最多有\(d\)个。因此上面\(d\)个数就恰好是\(x^d\equiv 1\pmod p\)的所有根。
数学归纳法证明\(d\)次方程最多有\(d\)个根:
首先对于一次方程\(ax+b=0(a\neq 0)\),显然最多有一个解。
如果\(n\)次方程\((n\in \N^+)\)最多只有\(n\)个解成立,那么对于\(n+1\)次方程,如果他能有\(n+2\)或更多个解,那么对于他的一个解\(x_0\),我们可以把这个方程写成\((x-x_0)f^n(x)=0\),这是一个关于\(x\)的方程,\(f^n(x)\)是关于\(x\)的一个\(n\)次多项式。
那么\(x=x_0\)是这个方程的一个解,照这么说\(f^n(x)=0\)应该有\(n+1\)或更多个解。然而我们的前提是\(n\)次方程最多只有\(n\)个解。因此这个结论和前提不符。只要前提成立我们的假设就不可能成立。然而\(n=1\)时前提成立,所以对于所有自然数,我们的假设都不成立,它的否定命题成立,\(n+1\)次方程最多有\(n+1\)个解。
那么我们可以说,\(a^0,a^1,\dots,a^{d-1}\)包含了所有满足\(x^d\equiv 1\pmod p\)的解,也就是包含了\(\Z_p^*\)中所有阶为\(d\)的元。
那么\(a^k(k=0,1,\dots,d-1)\)就是这个乘法循环群中的\(d\)阶生成元。然而\(a\)也是这个乘法循环群的\(d\)阶生成元。
有下面这个式子:如果\(a\)是\(d\)阶生成元,那么\(a^k\)就是\(\dfrac d{\gcd(d,k)}\)阶生成元。简单说明一下,因为\(a^d\equiv 0\pmod p\),所以\(a^{\mathrm{lcm}(d,k)}\equiv 1\pmod p\)。然后\(\mathrm{lcm}(d,k)=\dfrac {dk}{\gcd(d,k)}\),摁提出一个\(k\)之后就是\(a^k\)的阶。
然后所有的\(a^k\)都是\(d\)阶元,这就说明\(\gcd(d,k)=1\),即\(d\bot k\),这样的\(k\)有\(\varphi(d)\)个。
所以,\(\mathrm{card}(\{a^k\})=|S(d)|=\varphi(d)\),我们的猜想是对的!
那么就证明了\(p\)是奇素数的时候原根存在性定理是正确的。
这个时候考虑\(p^a(p\in\complement_P\{2\},a\in\N^+)\)推导到\(p^{a+1}\)。如果这个关系成立,那么数学归纳法就帮我们证明了所有奇素数的正整数次幂情况下原根存在性定理的正确性。
假设\(p^a\)时原根存在性定理成立,它的某个原根记为\(g\),同时记\(r=\delta_{p^{a+1}}(g)\)为\(g\)在\(p^{a+1}\)意义下的阶。
根据欧拉定理,有\(r|\varphi(p^{a+1})\)。同时考虑\(r,\varphi(p^a)\)的关系。现在已经知道原根\(g\)满足\(g^{\varphi(p^a)}\equiv 1\pmod{p^a},g^r\equiv 1 \pmod{p\cdot p^a}\)
既然模\(p^{a+1}\)意义下\(g^r\)都是\(1\)了,那么模数是他的因数\(p^a\)肯定也是\(1\)。
严谨来说,我们把上面第二个同余方程转化为不定方程,就会有\(g^r+kp\cdot p^a=1\quad(k\in\Z)\)
我们也可以写成\(g^r+kp\cdot p^a=1\quad(kp\in\Z)\),那么久可以转化为同余方程\(g^r\equiv 1\pmod {p^a}\)
同时我们也知道\(\delta_{p^a}(g)=\varphi(p^a)\)应该是满足这个数的最小正整数,那么不妨设\(r=k\varphi(p^a)+s\),其中\(k\)为\(r\)除以\(\varphi(p^a)\)的商,\(s\)是余数,因此\(0\leq s<\varphi(p^a)\)。由阶的定义可得,\(\forall 0<s<\delta_{p^a}(g)=\varphi(p^a),g^s\not\equiv 1\pmod {p^a}\),因此要让\(g^r\equiv 1\pmod{p^a}\)就只能\(s=0\),也就是能整除。
那么现在我们就知道了\(\varphi(p^a)|r\),\(r|\varphi(p^{a+1})\)。而\(\varphi(p^a)=p^{a-1}(p-1),\varphi(p^{a+1})=p^a(p-1)\)他们只差一个质因数\(p\),因此\(r\in\{\varphi(p^a),\varphi(p^{a+1})\}\)
那么此时可以考虑两个数\(g,g+p\)在\(p^{a+1}\)下的阶\(u,v\in\{\varphi(p^a),\varphi(p^{a+1})\}\)。如果\(u=v=\varphi(p^a)\),那么就会有\((g+p)^{\varphi(p^a)}\equiv 1\pmod{p^{a+1}}\)
用二项式定理展开一下,可以得到\((g+p)^{\varphi(p^a)}\equiv\sum_{i=0}^{\varphi(p^a)}C_{\varphi(p^a)}^ip^ig^{\varphi(p^a)-i}\pmod {p^{a+1}}\)
代入\(\varphi(p^a)=p^{a-1}(p-1)\)可以得到\(\displaystyle\sum_{i=0}^{\varphi(p^a)}C_{p^{a-1}(p-1)}^ip^ig^{\varphi(p^a)-i}\)
代入组合数计算式得到\(\displaystyle\sum_{i=0}^{\varphi(p^{a-1})}\dfrac{\big[p^a(1-\frac 1p)\big]!}{i!(\varphi(p^a)-i)!}p^ig^{\varphi(p^a)-i}\),这个式子要对\(p^{a+1}\)取模。
然后我们惊喜的发现,在\(i>1\)之后,后面的\(p^i\)和分子里阶乘第一项所包含的\(p^{a-1}\)就能组合成\(p^{a+1}\)的倍数,因此后面的求和项都可以忽略!
那么\(i=0,1\)的时候式子的和就是我们要求的数的值。虽然最后的式子很不好看,但是我们回到刚展开的时候用组合数表示的式子,\(i=0\)的时候式子就是\(g^{\varphi(p^a)}\),根据我们的假设它应该是\(1\)。那么\(i=1\)的时候式子的值为\(\varphi(p^a)pg^{\varphi(p^a)-1}\)。
两个式子加起来得到\(1+\varphi(p^a)pg^{\varphi(p^a)-1}\equiv (g+p)^{\varphi(p^a)}\equiv 1\pmod{p^{a+1}}\)
那么我们可以同时减去\(1\),得到\(\varphi(p^a)pg^{\varphi(p^a)-1}\equiv 0\pmod{p^{a+1}}\)。代入\(\varphi(p^a)=p^a(1-\frac1p)\)
得到\(p^{a+1}g^{\varphi(p^a)-1}-pg^{\varphi(p^a)-1}\equiv 0\pmod {p^{a+1}}\),前面被减数是模数的倍数直接忽略,而后面那个减数也要是零,就说明\(g^{\varphi(p^a)-1}\)应该是\(p^a\)的倍数,也就是我们可以得出\(g^{\varphi(p^a)-1}\equiv 0\pmod {p^a}\),这就与\(g^{\varphi(p^a)}\equiv 1\) 相矛盾。
因此,\(g,g+p\)的阶\(u,v\)不可能同时为\(\varphi(p^a)\),至少有一个为\(\varphi(p^{a+1})\),那么就至少有一个是\(p^{a+1}\)的原根了。
然后,只要它有一个原根,那就说明它的既约剩余系是一个\(\varphi(p^{a+1})\)阶乘法循环群,这个循环群中生成元\(g^k\)的个数就是\(\varphi(|g^k|)=\varphi(\varphi(p^{a+1}))\)
因此对于奇素数的正整数次幂的原根存在性定理得证。
现在考虑奇素数的正整数次幂的两倍
这个很好证这个非常好证这个可好证了哎哟。
首先\(\varphi(p^a)=\varphi(2p^a)\),证明方法就是把他们展开,得到\(p^a(1-\dfrac 1p)=2p^a(1-\dfrac 1p)(1-\dfrac 12)\),然后就证完了。
所以我们可以记\(k=\varphi(p^a)=\varphi(2p^a)\),那么\(g^k\equiv 1\pmod{p^a}\),那么在模\(2p^a\)意义下\(g^k\)就可能是\(1,p^a+1\)中的一个。
考虑在模\(2p^a\)意义下化简\((g+p^a)^k\)
因为\(k=\varphi(p^a)=p^{a-1}(p-1)\),而\(p\)是奇数所以\(k\)是偶数,那么对于所有的\(C_k^1,C_k^2,\dots,C_k^{k-1}\),他们计算式的分子中总有一个\(k\)无法消去,因此他们都会是偶数。然后如果\(i<k\)那么后面怎么说都会有一个\(p^a\)的正整数次幂。两个组合起来就可以说明对于\(0<i<k\),第\(i\)项是\(2p^a\)的倍数,直接忽略就好。
那么剩下第\(0\)和第\(k\)项,他们分别是\(p^{ak}\)和\(g^k\)。
先看\(p^{ak}\)在模\(2p^a\)意义下是什么值。乍一看不好做,但是我们可以提取一个\(p^a\)出来变成\(p^a\cdot p^{a(k-1)}\)
然后不停减去\(2p^a\)。因为\(p^{a(k-1)}\)肯定是个奇数因此最后肯定剩下一个\(p^a\)
那么,对于\(p^a\)的原根\(g\),如果他也是\(2p^a\)的原根,那么\((g+p^a)\)就不是。否则,如果\(g\)不是\(2p^a\)的原根,那么它在模\(2p^a\)意义下就应该是\(p^a+1\),而\((g+p^a)^k\equiv p^{ak}+g^k\equiv p^a+p^a+1\equiv 1\pmod{2p^a}\),说明\(g+p^a\)是一个原根。
于是我们就很愉快证明了\(2p^a\)也有原根了。