中国剩余定理可用于解一元线性方程组:
⎩⎨⎧x≡a1(modm1)x≡a2(modm2)⋮x≡an(modmn)
模数两两互质的情形
令 M=i=1∏nmi, Mi=miM, ti=Mi−1(模 mi 意义下),则可构造通解:
xS=i=1∑naitiMi+kM, k∈Z
证明
由假设,∀j∈{1,2,…,n}, gcd(mi,Mi)=1,则由 Bezout 定理可推知,∃ti s.t. tiMi≡1(modmi),即 Mi 存在模 mi 意义下的数论倒数 ti。
考虑乘积 aitiMi 可知:aitiMi≡ai(modmi); ajtjMj≡0(modmi), ∀j∈{1,2,…,n},j=i,所以令 x=i=1∑naitiMi,则有 x≡ai(modmi),∀i∈{1,2,…,n}。
假设 x1,x2 为该方程的两个解,由于模数两两互质,有 M∣(x1−x2),即任意两个整数解必然相差 M 的整数倍,故解集为 {i=1∑naitiMi+kM∣k∈Z}。
模数不两两互质的情形
方法一:转化为模数互质
先提出以下引理1:
引理 1 方程组有解的充要条件是 ∀i,j∈{1,2,…,n},i=j, gcd(mi,mj)∣(bi−bj)。
证明
考虑将
{x≡a1(modm1)x≡a2(modm2)
转化为不定方程组:
{x=pm1+a1x=qm2+a2
两式相减得:
pm1−qm2=a1−a2
若方程有解,由 Bezout 定理知,gcd(mi,mj)∣(ai−aj),以此类推可证必要性。充分性同理。
引理 2 设 m 为正整数,对其质因数分解得 m=i=1∏αpiei,则方程 x≡a(modm) 等价于方程组
⎩⎨⎧x≡a(modp1e1)x≡a(modp2e2)⋮x≡a(modpαeα)
结论显然,证明略
引理 3 设 p 为质数,α≥β,则方程组
{x≡a1(modpα)x≡a2(modpβ)
的解就是方程 x≡a1(modpα) 的解,即在有解的条件下二者等价。
证明
若方程组有解,则 ∃k,l 使得:
x=a1+kpα=a1+(kpα−β)pβ=a2+lpβ
即
a1≡a2(modp)
故原方程组可写成:
{x≡a1(modpα)x≡a1(modpβ)
该方程组的解显然是 x≡a1(modpα) 的解,即二者等价。
利用以上三个引理,可以将原方程组转化为模数为素数乘方的方程组,若不存在矛盾的方程,则可用中国剩余定理求解。
方法二:两两合并法
由引理 1 的证明,若方程组有解,对前两个方程,可由扩展 Euclid 算法解得 p,q 使得 pm1−qm2=a1−a2,则两个方程等价于
x≡pm1+a1(modlcm(m1,m2))
或
x≡qm2+a2(modlcm(m1,m2))
以此类推。
参考文献