1. 一般形式
先拿一段古文作为引入:
今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?
这是一个同余方程组,让我们把它翻译一下:
{x≡2(mod3)x≡3(mod5)x≡2(mod7)\begin{cases}x\equiv2\pmod{3}\\x\equiv3\pmod{5}\\x\equiv2\pmod{7}\end{cases}⎩⎨⎧x≡2(mod3)x≡3(mod5)x≡2(mod7)
而中国剩余定理就可以解决部分类似的同余方程组,具体来说:
{x≡a1(modb1)x≡a2(modb2)⋯x≡an(modbn)\begin{cases}x\equiv a_1\pmod{b_1}\\x\equiv a_2\pmod{b_2}\\\cdots\\x\equiv a_n\pmod{b_n}\end{cases}⎩⎨⎧x≡a1(modb1)x≡a2(modb2)⋯x≡an(modbn)
其中 b1,b2,⋯ ,bnb_1,b_2,\cdots,b_nb1,b2,⋯,bn 均两两互质
2. 使用方法
我们设:M=∏i=1nbi,Mi=Mbi,MiMi−1≡1(modbi)M=\prod\limits_{i=1}^nb_i,M_i=\dfrac{M}{b_i},M_iM_i^{-1}\equiv1\pmod{b_i}M=i=1∏nbi,Mi=biM,MiMi−1≡1(modbi)
则原方程最小整数解为 x=(∑i=1nai×Mi×Mi−1) mod Mx=(\sum\limits_{i=1}^na_i\times M_i\times M_i^{-1})\bmod Mx=(i=1∑nai×Mi×Mi−1)modM
3. 证明
首先,假设 xxx 是原方程的解,那么,对于方程组中的第 iii 个方程而言,都可进行如下分解:
x≡ai(modbi)∑j=1naj×Mj×Mj−1≡ai(modbi)ai×Mi×Mi−1+∑j=1,j≠inaj×Mj×Mj−1≡ai(modbi)\begin{aligned}x&\equiv a_i\pmod{b_i}\\ \sum\limits_{j=1}^na_j\times M_j\times M_j^{-1}&\equiv a_i\pmod{b_i}\\ a_i\times M_i\times M_i^{-1}+\sum\limits_{j=1,j\ne i}^na_j\times M_j\times M_j^{-1}&\equiv a_i\pmod{b_i}\end{aligned}xj=1∑naj×Mj×Mj−1ai×Mi×Mi−1+j=1,j=i∑naj×Mj×Mj−1≡ai(modbi)≡ai(modbi)≡ai(modbi)
我们先来看最复杂的一团东西:∑j=1,j≠inaj×Mj×Mj−1\sum\limits_{j=1,j\ne i}^na_j\times M_j\times M_j^{-1}j=1,j=i∑naj×Mj×Mj−1
考虑如何化简
首先,对于任意 i,j(i≠j)i,j(i\ne j)i,j(i=j) 来说,都有 bi∣Mjb_i\mid M_jbi∣Mj
显然,因为 Mj=∏i=1nbibjM_j=\dfrac{\prod\limits_{i=1}^nb_i}{b_j}Mj=bji=1∏nbi,而 i≠ji\ne ji=j,所以 bi∣Mjb_i\mid M_jbi∣Mj 成立
由此可得:
Mj≡0(modbi)aj×Mj×Mj−1≡0(modbi)∑j=1,j≠inaj×Mj×Mj−1≡0(modbi)\begin{aligned}M_j&\equiv0\pmod{b_i}\\a_j\times M_j\times M_j^{-1}&\equiv0\pmod{b_i}\\\sum\limits_{j=1,j\ne i}^na_j\times M_j\times M_j^{-1}&\equiv 0\pmod{b_i}\end{aligned}Mjaj×Mj×Mj−1j=1,j=i∑naj×Mj×Mj−1≡0(modbi)≡0(modbi)≡0(modbi)
因此,上面的式子可化简为:
ai×Mi×Mi−1≡ai(modbi)a_i\times M_i\times M_i^{-1}\equiv a_i\pmod{b_i}ai×Mi×Mi−1≡ai(modbi)
又由 Mi−1M_i^{-1}Mi−1 的定义可得:MiMi−1≡1(modbi)M_iM_i^{-1}\equiv1\pmod{b_i}MiMi−1≡1(modbi),所以该式子还可进一步化简:
ai≡ai(modbi)a_i\equiv a_i\pmod{b_i}ai≡ai(modbi)
式子恒成立,所以 xxx 就是原方程的解
我们回头来看看这个方程:
{x≡2(mod3)x≡3(mod5)x≡2(mod7)\begin{cases}x\equiv2\pmod{3}\\x\equiv3\pmod{5}\\x\equiv2\pmod{7}\end{cases}⎩⎨⎧x≡2(mod3)x≡3(mod5)x≡2(mod7)
显然,有 M=105,M1=35,M1−1=2,M2=21,M2−1=1,M3=15,M3−1=1M=105,M_1=35,M_1^{-1}=2,M_2=21,M_2^{-1}=1,M_3=15,M_3^{-1}=1M=105,M1=35,M1−1=2,M2=21,M2−1=1,M3=15,M3−1=1
所以 x=(2×35×2+3×21×1+2×15×1) mod 105=23x=(2\times 35\times 2+3\times 21\times 1+2\times 15\times 1)\bmod 105=23x=(2×35×2+3×21×1+2×15×1)mod105=23