📜  威尔逊定理

📅  最后修改于: 2021-05-05 01:52:18             🧑  作者: Mango

威尔逊定理指出,当且仅当自然数p> 1为素数

(p - 1) ! ≡  -1   mod p 
OR  (p - 1) ! ≡  (p-1) mod p
 

例子:

p  = 5
(p-1)! = 24
24 % 5  = 4

p  = 7
(p-1)! = 6! = 720
720 % 7  = 6

它是如何工作的?
1)我们可以快速检查p = 2或p = 3的结果。

2)对于p> 3:如果p是合成的,则其正除数在整数1,2,3,4,…,p-1之间,并且很显然gcd((p-1)!, p)> 1,所以我们不能拥有(p-1)! = -1(mod p)。

3)现在,让我们看看当p为质数时,它究竟是-1的情况。如果p是质数,则[1,p-1]中的所有数字都相对于p质数。并且对于范围[2,p-2]中的每个数字x,必须存在一个对y,使得(x * y)%p = 1。

[1 * 2 * 3 * ... (p-1)]%p 
 =  [1 * 1 * 1 ... (p-1)] // Group all x and y in [2..p-2] 
                          // such that (x*y)%p = 1
 = (p-1)

它有什么用?
考虑在接近输入数的质数模的模下计算阶乘的问题,即,我们要找到“ n!”的值。 %p”,因此n

有关威尔逊定理的更多应用,请参见此内容。

参考:
https://zh.wikipedia.org/wiki/威尔逊理论
https://primes.utm.edu/notes/proofs/Wilsons.html