MathLabs
定理已证明

中国剩余定理(孙子、秦九韶)

命题陈述

设 m1,m2,…,mkm_1,m_2,\dots,m_k 是两两互素的正整数,a1,…,aka_1,\dots,a_k 是任意整数。那么对每个 ii 都满足 x≡ai(modmi)x\equiv a_i\pmod{m_i} 的同余方程组存在解 xx,且该解在模 M=m1m2⋯mkM=m_1m_2\cdots m_k 意义下唯一。

为什么成立?

此定理最早记录于公元3至5世纪的《孙子算经》(“物不知数”问题),并由秦九韶于1247年给出完整的一般算法(大衍求一术)。它说明两两互素的模携带着独立的信息:知道一个数对模3、模5、模7的余数,就能在模105意义下唯一确定这个数,既不丢失信息也不会矛盾,因为这些模从不“重叠”。

证明思路

存在性,第一步(构造零件):对每个 ii,定义 Mi=M/miM_i=M/m_i(除 mim_i 外所有模的乘积)。由于各 mjm_j 两两互素,mim_i 的任何素因子都不会出现在其他 mjm_j(j≠ij\neq i)中,故 gcd⁡(Mi,mi)=1\gcd(M_i,m_i)=1。由裴蜀等式(扩展欧几里得算法)可知存在整数 yiy_i——即 MiM_i 模 mim_i 的逆元——满足 Miyi≡1(modmi)M_iy_i\equiv1\pmod{m_i}。

存在性,第二步(拼出解):令 x=∑i=1kaiMiyi mod Mx=\sum_{i=1}^{k}a_iM_iy_i\bmod M。固定任意下标 ii,把这个和式模 mim_i 化简。对每个 j≠ij\neq i,因子 Mj=M/mjM_j=M/m_j(由于 i≠ji\neq j)含有 mim_i 作为其因子之一,故 mi∣Mjm_i\mid M_j,从而 ajMjyj≡0(modmi)a_jM_jy_j\equiv0\pmod{m_i}。只剩下第 ii 项:利用 Miyi≡1(modmi)M_iy_i\equiv1\pmod{m_i},得 x≡aiMiyi≡ai⋅1=ai(modmi)x\equiv a_iM_iy_i\equiv a_i\cdot1=a_i\pmod{m_i}。由于 ii 任意,xx 同时满足所有同余式 x≡ai(modmi)x\equiv a_i\pmod{m_i}。

模 MM 的唯一性:设另有整数 x′x' 也满足所有 x≡ai(modmi)x\equiv a_i\pmod{m_i}。则对每个 ii 都有 x−x′≡0(modmi)x-x'\equiv0\pmod{m_i},即每个 mim_i 都整除 x−x′x-x'。由于各 mim_i 两两互素,它们的最小公倍数等于其乘积 MM,因此 M∣(x−x′)M\mid(x-x')——两两互素的数的任何公倍数必定是其乘积的倍数。故 x≡x′(modM)x\equiv x'\pmod M:解在模 MM 意义下唯一,正如所述。

小例验证:取 m1=3,m2=5m_1=3,m_2=5,a1=2,a2=3a_1=2,a_2=3,即方程组 x≡2(mod3), x≡3(mod5)x\equiv2\pmod3,\ x\equiv3\pmod5。此处 M=15M=15;M1=5M_1=5 需要 5y1≡1(mod3)5y_1\equiv1\pmod3,即 2y1≡1(mod3)2y_1\equiv1\pmod3,故 y1=2y_1=2;M2=3M_2=3 需要 3y2≡1(mod5)3y_2\equiv1\pmod5,故 y2=2y_2=2。于是 x=2⋅5⋅2+3⋅3⋅2=20+18=38≡8(mod15)x=2\cdot5\cdot2+3\cdot3\cdot2=20+18=38\equiv8\pmod{15},即 x=8x=8。验证:8=2⋅3+28=2\cdot3+2 模 33 余 22,8=1⋅5+38=1\cdot5+3 模 55 余 33——两个同余式都成立,构造得证。

用到此定理的主题

分步证明

该定理暂无分步证明。

参考文献

  1. Victor J. Katz (2009). A History of Mathematics: An Introduction
  2. Oliver Knill (2012). A Multivariable Chinese Remainder Theorem · arXiv:1206.5114