原根
階
階的定義:設$m>1$,且$gcd(a,m)=1$,那么使得$a^r\equiv 1\pmod m$成立的最小的正整數$r$稱為$a$對模$m$的階,記為$\delta_m(a)$。
相關定理:
定理一:
若$m>1$並且$gcd(a,m)=1$,又滿足$a^n\equiv 1\pmod m$,那么$\delta_m(a)\mid n$。易證。
定理二:
由定理一可推得:$\delta_m(a)\mid \phi(m)$。
證明:
由歐拉定理$a^{\phi(m)}\equiv 1\pmod m$可知,又$\delta_m(a)\leq\phi(m)$,再由定理一即得證。
原根
原根的定義:設$m$為正整數,$a$為整數,如果滿足$a$對模$m$的階等於$\phi(m)$,那么稱$a$為模$m$的一個原根。
相關定理:
定理一:
一個正整數$m$有原根的充要條件是$m=2,4,p^e,2p^e$,其中,$p$奇素數,$e$為正整數。
定理二:
每一個素數$p$都有$\phi(p-1)$個原根,事實上,每一個正整數$m$都有$\phi(\phi(m))$個原根。
定理三:
若$g$是$m$的一個原根,則
$g,g^2,...,g^{\phi(m)}$
各數對$m$取模的非負最小剩余就是小於$m$且與$m$互質的$\phi(m)$個數的一個排列。
原根的求法
首先求$\phi(m)$的素冪分解式:
$\phi(m)=p_1^{e_1}*p_2^{e_2}*...*p_k^{e_k}$
然后枚舉$g$,若恆滿足
$g^{\frac{\phi(m)}{p_i}}\neq 1\pmod m$,其中$i=1,2,...,k$
則$g$是$m$的一個原根。
這里暫時不放代碼了。
