威爾遜定理小講解

考慮做者太懶了,博客裏面的同餘符號都用等號代替 qwqapp

威爾遜定理

威爾遜定理大概是這麼個東西:優化

\[(p-1)!=-1(mod ~~ p)\]spa

其中 p 固然是質數辣~博客

Proof

而後咱們考慮證實?io

首先:class

\[p-1=-1(mod ~~ p)\]di

那麼咱們只須要證實 \((p-2)!=1 (mod~~ p)\) 就行了...display

也就是說,除去 1 後,若是 \(2,3,...,p-2\) 可以兩兩配對,且每對數乘積 模 p 後爲 1 的話,威爾遜定理就成立了,而後咱們考慮這其實就是對於 \(2,3,...,p-2\) 去找 模 p 意義下的逆元啊...math

而後考慮一下二次剩餘裏面的衍生芝士咱們能夠知道對於 \(x^2=1\) 只有兩個解(1,p-1),而這兩個數已經被咱們安排掉了,也就是說 \(2,3,...,p-2\)不存在某個數的逆元是本身自己...play

而後咱們還知道逆元有惟一性互反性,因而乎這些數天然是一一對應的辣~

證畢!

Application

這個...顯然能夠用在階乘求解上?

可是用途不廣...可能能夠用來優化快速階乘? XD

咱們考慮這個式子已經成立了:

\[(p-1)!=-1(mod ~~ p)\]

那麼咱們如今要求的是:

\[n!~(mod ~~ p)\]

而後咱們考慮威爾遜定理能怎麼用進去...

(如今咱們不考慮 \(n=p-1\)\(p-2\) 的極端狀況,\(n=p-1\) 時答案爲 \(p-1\)\(n=p-2\) 時 答案爲 \(1\) ,可特判)

首先:

\[n! ·\Big( (n+1)(n+2)...(p-1)\Big) =-1(mod~~ p)\]

咱們令 \(p-n =x\)

\[n! ·\Big( (p-x+1)(p-x+2)...(p-1)\Big) =p-1(mod~~ p)\]

那麼:

\[\begin{aligned}( n!)'=&(p-x+1)(p-x+2)...(p-2)\\=&(-1)^{x-2}(x-1)(x-2)...(2)\\=&(-1)^x (x-1)!\\=& (-1)^{p-n}(p-1-n)! \\=& (-1)^{n+1}(p-1-n)! \end{aligned}\]

上面 \(p-x+1\) 變到 \(x-1\) 其實就是把負號提出來了...

而後咱們發現只要求出 \((p-1-n)!\) 而後乘上 \((-1)^n\)

這樣的優化...可能沒什麼用?可是也是優化就是了...

相關文章
相關標籤/搜索