



同余是数论中的一个重要概念:设m为正整数,若整数a、b除以m所得余数相等,则称a与b对模m同余,记作a≡b(mod m)。由多个形如x≡ai(mod mi)(i=1,2,…,n,mi为正整数、ai为正整数)的一次同余式联立构成的方程组,称作一次同余方程组。中国古代创立的一次同余方程组解法,是世界数学史上的杰出成就,专门解决“一个数同时满足多个同余条件”的问题,算法特征鲜明、实用性极强。
约成书于公元400年前后的《孙子算经》首次提到了同余方程组问题,其卷下第26题为“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何”?即有一个整数除以3余2,除以5余3,除以7余2,求这个最小的正整数。《孙子算经》给出了具体解法,因此在中文数学文献中也会将中国剩余定理称为孙子定理。
南宋数学家秦九韶在《数书九章》中提出“大衍求一术”,系统完善了一次同余式组的求解步骤,将其推向成熟。其核心思想是先求各模数的“最小公倍数”,再为每个模数找到“乘率”(满足特定同余条件的数),最终通过“累加调整”得到最小正解,本质是“化整为零、分而治之”,步骤可直接落地计算,无需抽象证明。
明代数学家程大位将解法编成口诀:“三人同行七十稀,五树梅花廿一枝,七子团圆正半月,除百零五便得知。”
其步骤有三,一求基础数:对于除以3余2:即5×7=35,找35的倍数中除以3余1的数→70(70÷3=23余1),基础数为70×2=140;对于除以5余3:即3×7=21,找21的倍数中除以5余1的数→21(21÷5=4余1),基础数为21×3=63;对于除以7余2:即3×5=15,找15的倍数中除以7余1的数→15(15÷7=2余1),基础数为15×2=30。二求和:140+63+30=233。三求最小解:233除以3、5、7的最小公倍数105得2余23,23即是解。
与西方同一算法相比较,中国古代解法侧重算法步骤的可操作性,如秦九韶的“大衍求一术”可直接套用于计算,服务于历法推算、工程计数等实际场景;西方直到18世纪,欧拉、高斯才独立提出类似的“剩余定理”,更侧重理论逻辑的严谨证明。二者体现了中西方数学“算法实用”与“理论抽象”的经典差异。
一次同余方程组应用于现代密码学(RSA加密的核心原理之一)、计算机科学(分布式系统同步)、数论研究中,仍在沿用其“多条件约束下找唯一解”的核心逻辑。
(作者系国家教育咨询委员会委员、中国科技馆原馆长)