思路来源:欧拉定理及扩展(附超易懂证明) - 樱花赞 - 博客园 (cnblogs.com) 自己证明一遍巩固一下
Theorem
\[a^b\equiv\begin{cases} a^{b\mod\varphi(m)},&(a,m)=1\\ a^b,&(a,m)\neq 1 \ and\ b<\varphi(m)\\ a^{b\mod\varphi(m)+\varphi(m)},&(a,m)\neq 1\ and\ b\geq \varphi(m) \end{cases} \pmod m \]
Proof
我们可以轻松地干掉第一部分,我们知道欧拉定理: \(a^{\varphi(m)}\equiv 1\pmod m\) ,设 \(b=k\varphi(m)+r,0\leq r<\varphi(m)\)
\[a^b\equiv (a^{\varphi(m)})^{k}\times a^r\equiv 1^k\times a^r\equiv a^{b\mod\varphi(m)}\pmod m\]
第二部分:听君一席话,如听一席话。目的在于形式上的完整
第三部分:
考虑先对 \(a\) 进行一手唯一分解定理:\(a=\prod p_i^{c_i}\)
容易想到,假如我们证明了 \(\forall i,p_i^{c_i\mod\varphi(m)+\varphi(m)}\) ,其中 \(c_i\geq \varphi(m)\)
那么由于同余性质 \(a\equiv b\pmod m ,c\equiv d\pmod m\Rightarrow ab\equiv cd\pmod m\) ,我们可以合并得到
以下,我使用 \(p\) 代指任意一个 \(p_i\) ,显然,如果 \(p,m\) 互质,那么直接就是第一部分,所以下面的讨论有前提 \(p,m\) 不互质
设 \(m=p^r\times s,(p,s)=1\) ,\(s\) 即是从 \(m\) 中抽去 \(p\) 因子的数
Lemma1 \(p^r\equiv p^{r+\varphi(m)}\pmod m\)
考虑证明它:由欧拉定理:\(p^{\varphi(s)}\equiv 1\pmod s\)
又欧拉函数是积性函数,即 \(\varphi(m)=\varphi(p^r)\times\varphi(s)\)
所以 \(p^{\varphi(m)}\equiv 1\pmod s\)
同余式乘上 \(p^r\) ,\(p^{r+\varphi(m)}\equiv p^r\pmod m\)
同余式可以同乘的原因:
假设 \(a\equiv b\pmod p\) ,等价于 \(p| (a-b)\)
那么显然有 \(cp | (ca-cb)\) (\(c\) 不要为 \(0\) 哈)
也就是 \(ac\equiv bc \pmod p\)
Lemma2 \(\varphi(m)\geq r\)
有 \(\varphi(m)=\varphi(s)\times \varphi(p^r)\geq \varphi(p^r)\) ,在 \(s=1,2\) 时取等
这里想要直接证明 \(\varphi(p^r)\geq r\) 仍然不好证
反正本蒟蒻证不动,还需要进一步地放缩
有 \(\varphi(p^r)=p^{r-1}\times (p-1)\geq p^{r-1}\) ,先按计算式展开,知道 \(p\geq 2\) ,在 \(r=2\) 时取等
考虑数学归纳法证明 \(p^{r-1}\geq r\) ,在 \(r=1\) 时显然成立,假设在 \(r=i\) 时成立,那么有 \(p^{i-1}\geq i\)
那么 \(p^{i}=p\times p^{i-1}\geq p^{i-1}+p^{i-1}\geq i+1\)
所以 \(\varphi(m)\geq \varphi(p^r)\geq p^{r-1}\geq r\)
来,重头戏,回顾我们的目标,证明 \(\forall i,p_i^{c_i\mod\varphi(m)+\varphi(m)}\) ,其中 \(c_i\geq \varphi(m)\)
设 \(f(x)=p^x\bmod m\) 是定义在 \((\varphi(m),\infty)\) 上面的函数
由 lemma1 , \(f(r)=f(r+\varphi(m))\) ,令 \(r^{\prime}=r+\varphi(m)\) ,\(f(r^{\prime})=f(r^{\prime}-\varphi(m))\) ,注意定义域,\(r^{\prime}\geq 2\varphi(m)\)
由 lemma2 ,又 \(c\geq \varphi(m)\) (题设),有 \(c\geq r\) ,所以 \(f(c)=f(r)\times f(c-r)=f(r+\varphi(m))\times f(c-r)=f(c+\varphi(m))\) ,所以 \(c\) 同样满足 lemma1
在求解 \(f(c)\) 的过程中,我们一直递归 \(f(c-\varphi(m))\) 就可以了
所以 \(f(c)=f(c\bmod \varphi(m))\) 也就是 \(p^c\equiv p^{c\mod \varphi(m)}\pmod m\)
但是,不对呀,与我们上面的形式不符,而且容易举出反例
(这时候脑海里突然浮现出数学老师 tyy 的笑容,函数题,一定要检查 \(\dots\)!)
定义域!!! (这个问题困扰了蒟蒻很久)
注意到上面所说 \(r^{\prime}\geq 2\varphi(m)\) ,所以这里也要加上 \(\varphi(m)\) 保命
即 \(f(c)=f((c \bmod\varphi(m))+\varphi(m))\),也就是 \(p^c\equiv p^{c\mod \varphi(m)+\varphi(m)}\pmod m\) !!!
我们得到了 \(\forall i,p_i^{c_i\mod\varphi(m)+\varphi(m)}\) ,其中 \(c_i\geq \varphi(m)\) !!!
我们证明了 \(a^{b\mod\varphi(m)+\varphi(m)},(a,m)\neq 1\ and\ b\geq \varphi(m)\) !!!
我们证明了:
\[a^b\equiv\begin{cases} a^{b\mod\varphi(m)},&(a,m)=1\\ a^b,&(a,m)\neq 1 \ and\ b<\varphi(m)\\ a^{b\mod\varphi(m)+\varphi(m)},&(a,m)\neq 1\ and\ b\geq \varphi(m) \end{cases} \pmod m \]