Lagrange’s Theorem (Number Theory)

nnn 次非零多项式在模素数意义下至多有 nnn 个不同的解。


Catalan’s Conjecture

xp−yq=1(p>1,q>1)x^p-y^q=1(p>1,q>1)xp−yq=1(p>1,q>1) 的所有正整数解只有 (x,y,p,q)=(3,2,2,3)(x,y,p,q)=(3,2,2,3)(x,y,p,q)=(3,2,2,3)
就是说,只有 888 和 999 两个连续正整数同时是其他正整数的幂。


Quadratic Residue

(ps:katex的不等于号和\not好sb。。。

x2≡a(modp),ax^2\equiv a\pmod{p},ax2≡a(modp),a ≠ 0,p>10,p>10,p>1 (或者 p>2p>2p>2 ??

若有 x2=a+kp,k∈Zx^2=a+kp,k\in\Zx2=a+kp,k∈Z 成立,称 aaa 是 ppp 的二次剩余, xxx 是该二次同余方程的解。
若不成立,称 aaa 是 ppp 的二次非剩余。

有性质:两个二次非剩余乘起来、或者二次剩余乘起来,都会得到一个二次剩余;
一个二次剩余和一个二次非剩余乘起来,会得到一个非二次剩余。

一般我们会遇到要求 x(modp)\sqrt{x}\pmod{p}x​(modp) ,这个时候就可以当成二次剩余来解。


Quadratic Reciprocity Law

对两个不同的奇素数 p,qp,qp,q 有 (qp)(pq)=(−1)p−12⋅q−12\left(\frac{q}{p}\right)\left(\frac{p}{q}\right)=(-1)^{\frac{p-1}{2}\cdot\frac{q-1}{2}}(pq​)(qp​)=(−1)2p−1​⋅2q−1​


Legendre Symbol

(ap)=aϕ(p)2\left(\frac{a}{p}\right)=a^{\frac{\phi(p)}{2}}(pa​)=a2ϕ(p)​ ← Jacobi Symbol

但是下面我们使用 (ap)=ap−12\left(\frac{a}{p}\right)=a^{\frac{p-1}{2}}(pa​)=a2p−1​ ← Legendre Symbol
其中 ppp 为奇素数;0≤a&lt;p0\le a&lt;p0≤a<p
为什么不用雅可比符号呢?因为那个东西在这里还用不上,不满足一些性质
所以下面用的都是勒让德。同时不特殊说明只研究 ppp 为奇素数的特殊情况。

(千万不要把勒让德符号那个 p−12\frac{p-1}{2}2p−1​ 跟后面某个指数 p+12\frac{p+1}{2}2p+1​ 混。。


Euler’s Criterion

根据 Fermat’s little theorem 就有 ap−1≡1(modp)a^{p-1}\equiv1\pmod{p}ap−1≡1(modp)
然后我们可以挪一下因式分解得到 (ap−12+1)(ap−12−1)≡0(modp)(a^{\frac{p-1}{2}}+1)(a^{\frac{p-1}{2}}-1)\equiv0\pmod{p}(a2p−1​+1)(a2p−1​−1)≡0(modp)
那么 ap−12≡±1(modp)a^{\frac{p-1}{2}}\equiv\pm1\pmod{p}a2p−1​≡±1(modp)

aaa 是 ppp 的二次剩余 ⇔\Leftrightarrow⇔ (ap)≡1(modp)\left(\frac{a}{p}\right)\equiv1\pmod{p}(pa​)≡1(modp)
充分性:现在假如 a≡x2(modp)a\equiv x^2\pmod{p}a≡x2(modp) ,有 ap−12≡xp−1≡1(modp)a^{\frac{p-1}{2}}\equiv x^{p-1}\equiv1\pmod{p}a2p−1​≡xp−1≡1(modp)
必要性:xp−1≡1(modp)x^{p-1}\equiv1\pmod{p}xp−1≡1(modp) 且 ap−12≡1(modp)a^{\frac{p-1}{2}}\equiv1\pmod{p}a2p−1​≡1(modp) 所以 a≡x2(modp)a\equiv x^2\pmod{p}a≡x2(modp)

所以顺便可以得到非二次剩余 ⇔\Leftrightarrow⇔ (ap)≡−1(modp)\left(\frac{a}{p}\right)\equiv-1\pmod{p}(pa​)≡−1(modp)


p 为奇素数时,求任意一个二次(非)剩余:Randomize ~ O(1)

i≡−ii\equiv-ii≡−i 所以可以把负的一半去掉
把 ±i,1≤i≤p−12\pm i,1\le i\le\frac{p-1}{2}±i,1≤i≤2p−1​ 这个缩系平方一下就得到所有二次剩余
又 1≤i&lt;j≤p−121\le i&lt;j\le\frac{p-1}{2}1≤i<j≤2p−1​ 我们有 i2−j2=(i+j)(i−j)i^2-j^2=(i+j)(i-j)i2−j2=(i+j)(i−j)
其中 3≤(i+j)≤p−23\le(i+j)\le p-23≤(i+j)≤p−2 并且 (i−j)(i-j)(i−j) 也显然不是 ppp 的倍数
所以 i2−j2i^2-j^2i2−j2 的两个因子都不是 ppp 的倍数,它们乘起来也一定不可能得到 ppp
((i−1)2(i-1)^2(i−1)2 往下的除了 ppp 都不是 ppp 的倍数, ppp 的因数也只有 111 和 ppp)

反正记住二次剩余数量等于非二次剩余数量等于 p+12\frac{p+1}{2}2p+1​ 就可以了。
p+1p+1p+1 必定是偶数,因为 ϕ(x)\phi(x)ϕ(x) 当 x&gt;2x&gt;2x>2 的时候恒为偶数

所以随便从 1∼p−11\sim p-11∼p−1 里挑一个数,至少有 12\frac{1}{2}21​ 的概率是非二次剩余
判一下勒让德符号就可以了
(你可以判等于 −1-1−1 ,如果取值范围没有坑你也可以判 ≠ 1 )


p 为奇素数时,已知二次剩余求原数:Cipolla’s Algorithm ~ O(logp)

x2≡a(modp)x^2\equiv a\pmod{p}x2≡a(modp) 已知 a,pa,pa,p 求 xxx 。首先显然可以特判 a=0,p=2a=0,p=2a=0,p=2
我们随机一个 ω\omegaω 使得 ω2−a\omega^2-aω2−a 不是二次剩余
设 i≡ω2−ai\equiv\sqrt{\omega^2-a}i≡ω2−a​ 然后计算 x1≡(ω+i)p+12x_1\equiv\left(\omega+i\right)^{\frac{p+1}{2}}x1​≡(ω+i)2p+1​ ;另外一个解 x2=−x1x_2=-x_1x2​=−x1​

原理:(a+bi)p≡(a−bi)(a+bi)^p\equiv(a-bi)(a+bi)p≡(a−bi)
套二项式定理和费马小定理再利用二次非剩余就可以解出来
然后我们知道 a≡(ω2−i2)≡(ω+i)(w−i)≡(w+i)p+1a\equiv(\omega^2-i^2)\equiv(\omega+i)(w-i)\equiv(w+i)^{p+1}a≡(ω2−i2)≡(ω+i)(w−i)≡(w+i)p+1
也就知道 a\sqrt{a}a​

展开之后显然一定是不带 iii 的(。。。
你想证一下 那也不困难吧 我就不写了 因为我有点懒

复杂度在快速幂上。

真的牛逼
手划一下条件和要求的东西 你会发现真的好难想到。。
就算直接给出结果让你证都不一定会想到这样的思路
可能这就是缘分吧.jpg

玄学顺推:
利用那种随便加个东西套性质的思路,把 aaa 搞成 ω−(ω−a)\omega-(\omega-a)ω−(ω−a)
然后考虑一下把 ω\omegaω 也变成平方说不定能够玄学出来什么
那直接重设成 ω2−(ω2−a)\omega^2-(\omega^2-a)ω2−(ω2−a)
这东西就可以因式分解,那么 a=(ω+ω2−a)(ω−ω2−a)a=(\omega+\sqrt{\omega^2-a})(\omega-\sqrt{\omega^2-a})a=(ω+ω2−a​)(ω−ω2−a​)
根据 bsgs 求解的方法,考虑找出 aaa 是否能够表示为某个指数为偶数的幂
(因为这样 a=TAT2qwqa=TAT^{2qwq}a=TAT2qwq 就可以搞 x=a=TATqwqx=\sqrt{a}=TAT^{qwq}x=a​=TATqwq )
考虑把后面那个化成跟前面那个差不多的话就可以得到偶数指数
化成指数是 222 肯定不可行,化成 p−1p-1p−1 因为前面自带一个感觉也不对
所以考虑化成 p+1p+1p+1
后面那个,看到根号了吧,取二次非剩余就有不错的性质
根据大量的经验一眼秒得到 (ω+ω2−a)p+1(\omega+\sqrt{\omega^2-a})^{p+1}(ω+ω2−a​)p+1
然后发现 ω\omegaω 随机就可以了


p 为奇素数时,已知三次剩余求原数:Peralta Method Extension

<Click Here>
上来先随机一个 ω\omegaω ,使得 ω3−a\omega^3-aω3−a 是三次非剩余
判断方法: (ω3−a)ϕ(p)3(\omega^3-a)^{\frac{\phi(p)}{3}}(ω3−a)3ϕ(p)​ 不同余 1(modp)1\pmod{p}1(modp) 期望次数是 ⑨
设 i=ω3−a3i=\sqrt[3]{\omega^3-a}i=3ω3−a​ 然后求 (ω+i)p2+p+13(\omega+i)^{\frac{p^2+p+1}{3}}(ω+i)3p2+p+1​

更高次依此类推: ωk−a\omega^k-aωk−a ,(ω+ωk−ak)pk−1+pk−2+⋯+p3+p2+p+1k(\omega+\sqrt[k]{\omega^k-a})^{\frac{p^{k-1}+p^{k-2+\cdots+p^3+p^2+p+1}}{k}}(ω+kωk−a​)kpk−1+pk−2+⋯+p3+p2+p+1​
当然次数太高你的期望次数就有点多了


任意模数二次剩余

大力分类讨论 %%%Miskcoo
我在这里奶一口应该用不上吧
奶死了我撒我自己


n 次剩余:(ex)BSGS

xn≡a(modp)x^n\equiv a\pmod{p}xn≡a(modp) 求 xxx ;已知 a,n,pa,n,pa,n,p

ppp 如果有原根,对于 xn≡a(modp)x^n\equiv a\pmod{p}xn≡a(modp) 我们可以求一个原根 ggg 出来

设 r=Ig(a)r=I_g(a)r=Ig​(a) 然后 gr≡a(modp)g^r\equiv a\pmod{p}gr≡a(modp) 可以用 BSGS 解决
(如果不限定奇素数就 exBSGS )

然后再设 e=Ig(x)e=I_g(x)e=Ig​(x) 那么 gne≡a(modp)g^{ne}\equiv a\pmod{p}gne≡a(modp)
变形 ne≡r(modϕ(p))ne\equiv r\pmod{\phi(p)}ne≡r(modϕ(p))
也就是 ne+ϕ(p)f=rne+\phi(p)f=rne+ϕ(p)f=r

用 exgcd 解出 e,fe,fe,f
就不难用 ge≡x(modp)g^e\equiv x\pmod{p}ge≡x(modp) 解出 xxx 了
嫌指数太大可以扩展欧拉定理。

实际上也就是利用原根的幂表达 a,xa,xa,x 从而 a⇒g⇒xa\Rightarrow g\Rightarrow xa⇒g⇒x
或者说 a≡gun,x≡gua\equiv g^{un},x\equiv g^ua≡gun,x≡gu


The Period of the Fibonacci Sequence Modulo P

一个小应用:求斐波那契循环节 <Click Here>

[Note] 高次剩余 [Cipolla][Peralta][BSGS]相关推荐

  1. ECC与数论、数论史、代数,二次剩余符号的程序计算,高次剩余,高斯和 2013-03-23 21:52:49

    CoCoA 2015-10-9 22:49 Computational Commutative Algebra http://vdisk.weibo.com/s/Fst8dC2oag9yO?categ ...

  2. 2017ICPCECIC C.A math problem(高次剩余)

    题目链接:https://oj.neu.edu.cn/contest/70/problem/3 分析: 这题略坑..O(nlogn)过不了,实际上t(1)=(p-1)/gcd(k,p-1),O(log ...

  3. 2018 Arab Collegiate Programming Contest (ACPC 2018) H - Hawawshi Decryption 数学 + BSGS

    H - Hawawshi Decryption 对于一个给定的生成数列 R[ 0 ] 已知, (R[ i - 1 ] * a + b) % p = R[ i ] (p 是 质数), 求最小的 x 使得 ...

  4. gcd,lcm,同余理论、二次剩余、二次非剩余、和n次剩余通俗意义的理解

    a=q * b=r 最大公约数gcd:辗转相除法,又称欧几里得算法,gcd(a,b)= gcd(b,r) = gcb(b,a mod b) 最小公倍数lcm: a * b/gcd(a,b) 判断一个数 ...

  5. @codeforces - 1106F@ Lunar New Year and a Recursive Sequence

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 定义递推数列 f: (1)f[1] = f[2] = ... f ...

  6. 有趣题目和认知合集(持续更新)

    写写对一些算法的理解,挂几个有意思的题,可能也会挂几个板子题 算法理解偏向于能懂即可,没有严格的证明 快乐几何 [1.2]Volatile Kite 点到直线 快乐搜与暴力 [2.4]Short Co ...

  7. 初等数学瞎扯Ⅰ:同余相关

    写在前面: 还在写qwq,NOIP之前应该会写到exCRT及以后,但是省选数论比如 Lucas 扩展 Lucas 还有原根二次剩余这些东西可能要等到NOIP以后了. 关于题目我也没有做过多少,具体可以 ...

  8. NOI WC 2019 小结

    Day 1 评测系统与参赛策略 王逸松 松松松手把手教你如何搭建评测系统(掉线-) 不过有一点实用的 linux 下 time ./a 可以看a的运行时间 顺便以赠送小黄鸭为评测鸭打了一波广告 既然拿 ...

  9. Python密码库Cryptography探究学习

    一.简介 Cryptography的目标是建立一个标准Python加密库,支持 Python 2.6-2.7, Python 3.3+, and PyPy 2.6+.如果对密码学领域感兴趣的话,可以学 ...

最新文章

  1. 邁向IT專家成功之路的三十則鐵律 鐵律六:求全求盈之道-佈施
  2. sql server 的一些记录
  3. Python 可视化近 90 天的百度搜索指数 + 词云图
  4. 数据库学习day_01:SQL的发展和数据库操作相关sql语句
  5. DevExpress打印功能 z
  6. 【图算法】Dijkstra算法及变形
  7. Memcached的配置,SSH项目中的整合(com.whalin),Memcached工具类,Memcached的代码调用
  8. python技术分享_分享几个python的使用技巧
  9. linux文件移动到hdfs,解决从linux本地文件系统上传文件到HDFS时的权限问题
  10. WebRTC之gn与ninja(十三)
  11. python基础(set)补充
  12. carplay是否可以用安卓系统_Microsoft Teams正在支持CarPlay通话,我还是期待微信支持CarPlay...
  13. OpenGL ES glew 下载和使用
  14. soul软件的简单分析
  15. java将输入的阿拉伯数字金额转换为中文大写金额
  16. Windows平台的网速监控悬浮窗软件
  17. OpenWRT - Makefile:31: *** missing separator. Stop.
  18. window驱动签名相关以及WHQL(代码签名证书:赛门铁克和DigiCert证书)
  19. (视频) 《快速创建网站》3.4 网站改版3分钟搞定 - WordPress主题安装和备份
  20. linux下线程池实现

热门文章

  1. python cookbook是什么意思_《Python cookbook》读书笔记三
  2. 分享!微信自定义分享链接的标题(描述和图片)都是怎么实现的?
  3. 全球及中国海水淡化产业应用格局与十四五规模建设报告2022版
  4. 用jupyter notebook打开.ipynb文件
  5. 最短路(dijkstrafloyed)
  6. Li‘s 核磁共振影像数据处理-2-DWI实践:计算ADC (MD) map
  7. 奥沙利文夺世锦赛冠军奖杯
  8. linux删除0kb文件夹,肿么删除.nomedia文件
  9. windows7壁纸黑色
  10. 从区块链到DAG(二)--DAG的基本结构