同余式
在同余的基础上,引入同余式的概念,这里将要介绍如何求解一次同余式,以及如何求解同余式方程组。
求解同余式
一次同余式的求解思路:
(a,m)=1,ax≡1modm⇓(a,m)=1,ax≡bmodm⇓ax≡bmodm
Thm.1:设m是一个正整数,整数a满足m∤a,则同余式ax≡1modm有解的充要条件是(a,m)=1,并且解唯一。
证明.
由贝祖等式可知,存在唯一的整数s,t满足sa+tm=(a,m)=1,而贝祖等式中的整数s,t可以通过广义欧几里得除法算出。
Remark: 最效率的求逆元的方法是通过广义欧几里得除法。
如果有逆元,即a⋅a′≡1modm,那么求解ax≡bmodm也很简单了,即x≡a′bmodm,其中a′为a的逆元。
Thm.2:设m是一个正整数,整数a满足m∤a,则同余式ax≡bmodm有解的充要条件是(a,m)|b,并且其解为:
x≡b(a,m)⋅((a(a,m))−1(modm(a,m)))+t⋅m(a,m)modm
Proof:
必要性.
当ax≡bmodm有解x0时,意味着∃y0∈Z,满足ax0−y0m=b
同时,(a,m)∣a,(a,m)∣m
∵∀a,若满足a∣b,a∣c,则a∣sa+tb,∀s,t∈Z
∴(a,m)∣ax0−y0m=b
充分性.
若(a,m)∣b,则b(a,m)∈Z
考虑如下同余式:
a(a,m)x≡1modm(a,m)
由算术基本定理可得,(a(a,m),m(a,m))=1
根据Thm.1,则能得到上述同余式的解x0
则同余式:
a(a,m)x≡b(a,m)modm(a,m)
的解为x1=x0⋅b(a,m)modm(a,m),即:
a(a,m)⋅x1=b(a,m)+t⋅m(a,m),t∈Z
那么显然有:ax1≡bmodm
Remark: 同余式 ax≡bmodm,相当于是(a,m)=1,ax≡bmodm同余式的基础上,k∈Z,(ax)⋅k≡b⋅kmod(m⋅k)
所以,可以将ax≡bmodm的求解问题归约到求解同余式(a,m)=1,ax≡1modm问题上。
中国剩余定理
ChineseRemainderTheorem:设m1,m2,…,mk是k个两两互素的正整数,则对任意的整数b1,b2,…,bk同余式组:
⎧⎪⎨⎪⎩x≡b1modm1⋮x≡bkmodmk
一定有解,且解唯一,令:m=m1⋅m2⋯mk
Mi=mmi
M′i⋅Mi≡1modmi
则上述同余式组的解可以表示为:
x≡b1⋅M1⋅M′1+b2⋅M2⋅M′2+⋯+bk⋅Mk⋅M′kmodm
也就是说,上述同余式有解的充要条件是m1,m2,…,mk两两互素。
Proof:
已知(mi,mj)=1,i≠j,且m=m1⋅m2⋯mk,而
Mi=mmi=m1⋅m2⋯mi−1⋅mi+1⋯mk
所以有(mi,Mi)=1,即一组与mi互素的数的乘积仍然与mi互素
对于满足M′i⋅Mi≡1modmi的整数M′i,可进行如下构造:
x≡b1⋅M′1⋅M1+b2⋅M′2⋅M2+⋯bk⋅Mk⋅M′kmodm
将其代入到上述同余式中的任意式子:
b1⋅M′1⋅M1+b2⋅M′2⋅M2+⋯bk⋅Mk⋅M′k≡bimodmi
因为mi|Mj,i≠j,因此上述同余式转换为:
0+0+⋯+bi⋅Mi⋅M′i+0+⋯+0≡bimodmi
而Mi⋅M′i≡1modmi
所以上述构造显然是成立的,并且唯一性显然成立。
Example: 取自《孙子算经》:“有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”
⎧⎨⎩x≡2mod3x≡3mod5x≡2mod7
则m=3⋅5⋅7=105
M1=35,M2=21,M3=15,算出对应的逆元M′1=2,M′2=1,M′3=1,构造同余式解:
x=2⋅70+3⋅21+2⋅15=233≡23mod105
环上中国剩余定理
也就是中国剩余定理在环论中的延伸。
在环论中,环R与其理想I构成的商集R/I也能构成一个环,这个环称为商环。
理想I满足,∀a∈R,aI∈I,Ia∈I
构造理想的方式通常是取n∈R,I=nR={na|∀a∈R}
环上中国剩余定理,对于环R,其中理想I满足I=I1⋅I2⋯Ik,并且Ii两两互素,则根据中国剩余定理能够如下的映射:
s:R/I→R/I1×R/I2×⋯×R/Ik
s(a):a↦amodI1,amodI2,…,amodIk
该映射是同构映射:同态,s(ab)=s(a)s(b);满射,s−1(b1,b2,…,bk)=b∈R/I。而构造该映射的逆映射s−1实际上就是同余方程组的求解过程。
将中国剩余定理应用到多项式环上,就可以得到多项式的数论变换,也就是将两个多项式的乘法转换成两个向量的乘法。
反之,也可以用环Zm理解中国剩余定理:
m=m1⋅m2⋯mk,其中(mi,mj)=1,i≠j,则可构造同构映射:
s:Zm→Zm1×Zm2×⋯×Zmk
s(a):a↦(amodm1,amodm2,…,amodmk)
同构映射的逆映射s−1的构造,实际就是中国剩余定理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)