1. 程式人生 > >二次剩余&&Cipolla

二次剩余&&Cipolla

直接 意義 tail mbo 二項式定理 article itl 目錄 求100

目錄

  • 二次剩余
  • 勒讓德符號(legendre symbol)
  • Cipolla‘s Algorithm.
  • 代碼
  • end

二次剩余

給定y和奇質數p,求x,使得\(x^2≡y(mod p)\)

勒讓德符號(legendre symbol)

以前看視頻的截圖
求解\(x^2\equiv a(mod\ p)\)時,我們可用勒讓德符號來判定他是否有解
(前提,p必須為奇素數)
\(\begin{pmatrix} \frac{a}{p} \end{pmatrix}=\begin{cases}0 (a\equiv 0(mod\ p))\\1(a\%p意義下是二次剩余)\\-1(a\%p意義下是二次非剩余)\end{cases}\)


有時為了印刷上的方便,會寫成\((a|p)\)
0認為是特殊情況,這裏不過分討論
技術分享圖片
這裏只說明第ii條,因為其他的都很顯然(或者看完ii條之後),iii說明只他是個完全積性函數

公式\((a|p)=a^{\frac{p-1}{2}}(mod\ p)\)

也許還可以叫歐拉判別法
首先證明\(a^{\frac{p-1}{2}}(mod\ p)=1或-1\)
\(a^{p-1}-1=(a^{\frac{p-1}{2}}+1)(a^{\frac{p-1}{2}}-1)\equiv 0 (mod\ p)\)
顯然,\(a^{\frac{p-1}{2}}(mod\ p)只有=1或-1\)時,才可能成立

a為%p意義下的二次剩余時\(a^{\frac{p-1}{2}}\equiv 1(mod\ p)\)


\(x^{2}\equiv a(mod\ p)\)也可以說為\(x\equiv a^{\frac{1}{2}}\equiv x^{p-1}(mod\ p)\)
而費馬小定理又可以得到\(x^{p-1}\equiv 1(mod\ p)\)
存在x

a為%p意義下的二次非剩余時\(a^{\frac{p-1}{2}}\equiv -1(mod\ p)\)
也就是\(x^{p-1}\equiv -1(mod\ p)\)
而費馬小定理又可以得到\(x^{p-1}\equiv 1(mod\ p)\)
所以不存在x

結論1

1到\(p-1\)中有\(\frac{p-1}{2}\)個勒讓德符號為1,\(\frac{p-1}{2}\)

個勒讓德符號為-1
在%p意義下,a,P?a平方的結果是一樣的,1 到 P?1的平方就會有\(\frac{p-1}{2}\)個互不相同的數,剩下的就不是二次剩余

結論 2

\((a+b)^p≡a^p+b^p (Mod p)\)
證明:直接展開二項式定理,因為p是質數,除了i=0和p項,其他項分子的p分母都消不掉,會被模成0,剩下\(a^p+b^p\)

Cipolla‘s Algorithm.

求解\(x^2≡y(mod p)\)
不斷隨機a,使得\(\begin{pmatrix} \frac{a^2-y}{p} \end{pmatrix}=-1\)
結論1可以知道,隨機一兩次就能找到
\(w=\sqrt{a^2-y},x=(a+w)^{\frac{p+1}{2}}\)

結論3 \(w^p\equiv -w\)

證明:\(w^p\equiv w^{p-1}*w\equiv (a^2-y)^{\frac{p-1}{2}}*w\equiv -w\)
\(x^2\equiv (a+w)^{p+1}\)
\(\ \ \ \ \equiv (a+w)^{p}(a+w)\)
結論2可知
\(\ \ \ \ \equiv (a^p+w^p)(a+w)\)
結論3又知
\(\ \ \ \ \equiv(a^{p-1}*a+w^{p-1}*w)(a+w)\)
\(\ \ \ \ \equiv(a-w)(a+w)\)
\(\ \ \ \ \equiv a^2-w^2\)
\(\ \ \ \ \equiv y\)
可w這個虛部咋計算,根據拉格朗日定理,虛部系數為0

代碼

咕咕

end

太多摘抄qwq
主要參考https://blog.csdn.net/L_0_Forever_LF/article/details/79052135
wiki的圖片很棒
附帶一個題,不過沒大有聯系
求1000位數是否是完全平方數,yes or no
用幾個模數多試幾次,再勒讓德符號判定一下是否有解

二次剩余&&Cipolla