威尔逊定理证明——杨子曰数学
超链接:数学合集
这是一个很没有用的定理(没有任何实际应用价值,(´ー∀ー`)):
(
p
−
1
)
!
≡
p
−
1
(
m
o
d
p
)
(
p
为
质
数
)
(p-1)!\equiv p-1 (mod \ p) \ \ \ \ \ (p为质数)
(p−1)!≡p−1(mod p) (p为质数)
证明走起
设两个整数集合: M = [ 2 , p − 2 ] , N = [ 1 , p − 1 ] M=[2,p-2],N=[1,p-1] M=[2,p−2],N=[1,p−1]
设 a ∈ M , x ∈ N a\in M,x\in N a∈M,x∈N
我们来证明第一件事情:a*x在x变化的时候模p下互不同余,即 a ∗ x m o d p a*x \ mod\ p a∗x mod p与x一一对应(一个显然的事实—— a ∗ x m o d p ∈ N ) a*x \ mod\ p\in N) a∗x mod p∈N)
我们使用反证法:
假设存在一对 x 1 > x 2 x_1 > x_2 x1>x2,有 a ∗ x 1 ≡ a ∗ x 2 ( m o d p ) a*x_1\equiv a*x_2\ (mod\ p) a∗x1≡a∗x2 (mod p)
然后就得到了:
a
∗
(
x
1
−
x
2
)
≡
0
(
m
o
d
p
)
a*(x_1-x_2)\equiv \ 0(mod\ p)
a∗(x1−x2)≡ 0(mod p)
观察一下这个式子:你会发现a和p互质, ( x 1 − x 2 ) (x_1-x_2) (x1−x2)和p互质,So,这个式子不可能成立,So,假设不成立,得证!
如果这样的话, a ∗ x m o d p a*x\ mod\ p a∗x mod p可以一一表示出集合N中的每一个元素
这就说明:对于任意一个a( a ∈ M a \in M a∈M),都存在至少一个x( x ∈ N x \in N x∈N),使得 a ∗ x ≡ 1 ( m o d p ) a*x\equiv1(mod\ p) a∗x≡1(mod p)下成立
好的,我们开始证明第二件事情:上面那个结论中的x一定取不到1,p-1,a
我依然使用反证法
一个一个来:
令x=1,得到 a ≡ 1 ( m o d p ) a\equiv1(mod\ p) a≡1(mod p), a ∈ M a\in M a∈M取不到1,假设不成立;
令x=p-1,得到
(
p
−
1
)
a
≡
1
(
m
o
d
p
)
(p-1)a\equiv1(mod\ p)
(p−1)a≡1(mod p)
p
∗
a
−
a
≡
1
(
m
o
d
p
)
p*a-a\equiv1(mod\ p)
p∗a−a≡1(mod p)
由于在模p下,So:
p
−
a
≡
1
(
m
o
d
p
)
p-a\equiv1(mod\ p)
p−a≡1(mod p)
a
≡
p
−
1
(
m
o
d
p
)
a\equiv p-1(mod\ p)
a≡p−1(mod p)
a ∈ M a\in M a∈M取不到p-1,假设不成立;
令x=a,得到
a
2
≡
1
(
m
o
d
p
)
a^2\equiv1(mod\ p)
a2≡1(mod p)
a
2
−
1
≡
0
(
m
o
d
p
)
a^2-1\equiv0(mod\ p)
a2−1≡0(mod p)
(
a
−
1
)
∗
(
a
+
1
)
≡
0
(
m
o
d
p
)
(a-1)*(a+1)\equiv0(mod\ p)
(a−1)∗(a+1)≡0(mod p)
a ∈ M a\in M a∈M取不到1,也取不到p-1,假设不成立;
综上所述,对于任意一个a( a ∈ M a \in M a∈M),都存在一个x( x ∈ N x \in N x∈N),使得 a ∗ x ≡ 1 ( m o d p ) a*x\equiv1(mod\ p) a∗x≡1(mod p)下成立 x ≠ 1 , p − 1 , a x\neq1,p-1,a x=1,p−1,a
既然这样那么x一定属于集合M
即:对于任意一个a( a ∈ M a \in M a∈M),都存在至少一个x( x ∈ M x \in M x∈M且 x ≠ a x\neq a x=a),使得 a ∗ x ≡ 1 ( m o d p ) a*x\equiv1(mod\ p) a∗x≡1(mod p)下成立
好的,我们来证明第三件事情:上面那个结论中a和x( x ∈ M x \in M x∈M)是一一对应的关系
这个相当好证
我们还是使用反证法:
假设存在一对 a 1 > a 2 a_1 > a_2 a1>a2,有 a 1 ∗ x ≡ a 2 ∗ x ( m o d p ) a_1*x\equiv a_2*x\ (mod\ p) a1∗x≡a2∗x (mod p)
也就是 ( a 1 − a 2 ) ∗ x ≡ 0 ( m o d p ) (a_1-a_2)*x\equiv0(mod\ p) (a1−a2)∗x≡0(mod p)
因为 a 1 − a 2 a_1-a_2 a1−a2与p互质,x与p互质
So,假设不成立,得证,一个x只能对应一个a
然后继续使用反证法:
假设存在一对 x 1 > x 2 x_1> x_2 x1>x2,有 a ∗ x 1 ≡ a ∗ x 2 ( m o d p ) a*x_1\equiv a*x_2\ (mod\ p) a∗x1≡a∗x2 (mod p)
也就是 a ∗ ( x 1 − x 2 ) ≡ 0 ( m o d p ) a*(x_1-x_2)\equiv0(mod\ p) a∗(x1−x2)≡0(mod p)
因为a 与 p互质, x 1 − x 2 x_1-x_2 x1−x2与p互质
So,假设不成立,得证,一个a只能对应一个x
综上所述,a和x一一对应
即:对于任意一个a( a ∈ M a \in M a∈M),都有且仅有一个x( x ∈ M x \in M x∈M且 x ≠ a x\neq a x=a),使得 a ∗ x ≡ 1 ( m o d p ) a*x\equiv1(mod\ p) a∗x≡1(mod p)下成立
所以我们得到的是:在集合M里是一对一对的数,每一对中的两个数在模p下互为逆元( x 1 ∗ x 2 ≡ 1 ( m o d p ) x_1*x_2\equiv1(mod\ p) x1∗x2≡1(mod p),逆元??)
终于来到了最最激动人心的时刻,我们终于要开始证明最终的结论了: ( p − 1 ) ! ≡ p − 1 ( m o d p ) ( p 为 质 数 ) (p-1)!\equiv p-1 (mod \ p) \ \ \ \ \ (p为质数) (p−1)!≡p−1(mod p) (p为质数)
首先, p = 2 , p = 3 p=2,p=3 p=2,p=3的情况经过一番手算,发现满足结论
那我们就只要关心
p
≥
5
p\geq5
p≥5的情况:
(
p
−
1
)
!
=
1
∗
2
∗
⋯
∗
(
p
−
1
)
(p-1)!=1*2*\dots*(p-1)
(p−1)!=1∗2∗⋯∗(p−1)
(
p
−
1
)
!
=
(
2
∗
3
∗
⋯
∗
(
p
−
2
)
)
∗
(
p
−
1
)
(p-1)!=(2*3*\dots*(p-2))*(p-1)
(p−1)!=(2∗3∗⋯∗(p−2))∗(p−1)
现在我们看第一个括号里的东西,当
p
≥
5
p\geq5
p≥5的时候第一个括号里必定是偶数项,而且都属于M,这样一来我们把这些数搞成一对一对,使得每一对在模p下互为逆元,这样乘起来就变成1了
哦!!!!!!!!!!
第一个括号乘起来模p就是1!!!
( p − 1 ) ! ≡ p − 1 ( m o d p ) ( p 为 质 数 ) (p-1)!\equiv p-1 (mod \ p) \ \ \ \ \ (p为质数) (p−1)!≡p−1(mod p) (p为质数)得证!
OK,完事
感谢可耐滴小慕容(而又是hgoicjl讲懂了可耐滴小慕容)的讲解
参考:https://www.jianshu.com/p/ad5bb5b8fa7d
于HG机房