注: ( m o d p ) \pmod p (modp),表示 恒等式两边同时对 p p p取模,即恒等式两边同余
一、威尔逊定理
-
若 p p p为质数,则有: ( p − 1 ) ! ≡ − 1 ( m o d p ) (p-1)!\equiv -1\pmod p (p−1)!≡−1(modp)
或写成: ( p − 1 ) ! ≡ p − 1 ( m o d p ) (p-1)!\equiv p-1\pmod p (p−1)!≡p−1(modp) -
同时这是 p p p为质数的充分必要条件。
应用:
由于阶乘一般很大,以此判断 p p p是否为质数并不现实(还不如常规的 O ( N ) O(\sqrt N) O(N)判断方法),但是可以用于解决一些直接要求 求解 m o d    p mod\;p modp下的阶乘的问题。
二、欧拉定理
- 若 a a a与 n n n互质(即 gcd ( a , n ) = 1 \gcd(a,n)=1 gcd(a,n)=1),则有: a φ ( n ) ≡ 1 ( m o d n ) a^{\varphi(n)}\equiv1\pmod n aφ(n)≡1(modn)
- 其中 欧拉函数 φ ( n )    ( n ∈ N ∗ ) \varphi(n)\;(n\isin N^*) φ(n)(n∈N∗):小于等于 n n n的正整数中与 n n n互质的数的个数。(规定 φ ( 1 ) = 1 \varphi(1)=1 φ(1)=1)
欧拉函数:https://blog.csdn.net/Ratina/article/details/98461732
欧拉降幂:https://blog.csdn.net/Ratina/article/details/98469932
三、费马小定理
- 若 p p p为质数,且 a a a与 p p p互质(即 gcd ( a , p ) = 1 \gcd(a,p)=1 gcd(a,p)=1),则有: a p − 1 ≡ 1    ( m o d p ) a^{p-1}\equiv1\;\pmod p ap−1≡1(modp)
- 推论①: a N ≡ a N m o d    ( p − 1 ) ( m o d p ) a^N\equiv a^{N\mod(p-1)}\pmod p aN≡aNmod(p−1)(modp),其中 N N N为正整数, p p p为质数, a a a与 p p p互质
- 推论②: a × a p − 2 ≡ 1    ( m o d p ) ⇒ a\times a^{p-2}\equiv1\;\pmod p\rArr a×ap−2≡1(modp)⇒ a a a在 ( m o d p ) \pmod p (modp)下的逆元是 a p − 2 a^{p-2} ap−2,其中 p p p为质数, a a a与 p p p互质
※ 其实当 p p p为质数时,只要 a ≠ p a\neq p a̸=p, a a a和 p p p是一定互质的,所以条件可以改为:若 p p p为质数,且 a ≠ p a\neq p a̸=p;
其实费马小定理就是欧拉定理的一个特例,因为 当p为质数时,显然
φ
(
p
)
=
p
−
1
\varphi(p)=p-1
φ(p)=p−1,代入欧拉定理就得到了费马小定理。
应用:
利用推论①,可以进行 降幂(当
p
p
p为质数) 操作,
例如:
2
1000
≡
2
1000
m
o
d
  
(
7
−
1
)
≡
2
4
(
m
o
d
7
)
2^{1000}\equiv2^{1000\mod(7-1)}\equiv2^4\pmod 7
21000≡21000mod(7−1)≡24(mod7)
利用推论②,结合快速幂可以很快求得单个逆元,具体可以看这篇blog:https://www.cnblogs.com/812-xiao-wen/p/10500580.html