除数不满足两两互素条件的物不知数问题初探 2019年8月25日星期日 本文接前文: 《用现代数学方法解古题物不知数》 《用辗转相除法将两数的最大公因数表成两数的线性组合》 《完整例解增强版物不知数》 先来看我设计的一个例子: 一元一次同余方程组A: x17(mod28)式 x3(mod21)式 x39(mod45)式 x9(mod30)式 还原为古题是: 今有物,不知其数。 二十八、二十八数之,剩十七; 二十一、二十一数之,剩三; 四十五、四十五数之,剩三十九; 三十、三十数之,剩九。 问:物几何? 在这个例子中: m128、m221、m345、m430; b117、b23、b339、b49; (m1,m2)(28,21)7 (m1,m4)(28,30)2 (m2,m3)(21,45)3 (m2,m4)(21,30)3 (m3,m4)(45,30)15 即:除数(或模)不满足两两互素的条件。 疯狂(文中图片均来自网络) 下面将通过该例初步探究除数不满足两两互素条件的物不知数问题的特点和解法。物不知数问题的数学实质是如何解一元一次同余方程组。本文中所有变量均在整数范围内讨论,为了便于理解,倾向于举非负例子。一、任意给定的一元一次同余方程组是否有解(或解集是否为空)的判断 随便给出的一元一次同余方程组不一定有解,比如: 一元一次同余方程组B: x1(mod2)式 x2(mod4)式 由B可得:x2k1,即x为奇数;但由B可得:x4k2,显然x是偶数;二者矛盾,同余方程组B无解。 这是一个极其简单的例子,目的在于说明:对于任给的一元一次同余方程组,第一位的目标并不是解方程,而是判断方程是否有解。 设有一般的一元一次同余方程组如下: xb1(modm1)式 xb2(modm2)式 且(m1,m2)d。 我们给出一些小推理: 令:m1dk1、m2dk2 由于: xb1(modm1)xb1m1q1xm1q1b1 xb2(modm2)xb2m2q2xm2q2b2 (说明:同余两数的差必为模的倍数) 所以: m1q1b1m2q2b2 dk1q1b1dk2q2b2 d(k1q1k2q2)b2b1 d(b2b1) 这个结论用直白的话说就是:只有当两个除数(或模)的最大公因数整除两个余数(或指方程中的常数项)的差时,该一元一次同余方程组才有解。这也是文首方程组A所以说是设计的原因,在方程组A中有: (m1,m2)(b2b1)(28,21)(317)7(14) (m1,m4)(b4b1)(28,30)(917)2(8) (m2,m3)(b3b2)(21,45)(393)336 (m2,m4)(b4b2)(21,30)(93)36 (m3,m4)(b4b3)(45,30)(939)15(30) 所以,一元一次同余方程组A一定有解。 别急二、模不满足两两互素且解集不为空的一元一次同余方程组的求解办法 核心思路是:将模不满足两两互素条件的一元一次同余方程组转化为等价的模满足两两互素条件的方程组。其关键是:实现等价转化。何为等价?具指方程形式变了,但是解集不能变! 举例说明: x1(mod15)的解集是:X1{1,16,31,46,61,76,91} x1(mod3)的解集是:X2{1,4,7,10,13,16,19} x1(mod5)的解集是:X3{1,6,11,16,21,26,31} 观察思考可得:X1X2X3,即:解集X1是解集X2、X3的交集,而模的关系是:1535。 一般地,若: xb(modm),且mm1m2,m1m2 则: 同余方程xb(modm)等价于以下同余方程组: xb(modm1) xb(modm2) 因为: m(xb)、m1m、m2mm1(xb)、m2(xb) 其中,限制条件m1m2极端重要,来看下面的反例: x0(mod8)的解集是:X1{0,8,16,24,32,40,48} x0(mod4)的解集是:X2{0,4,8,12,16,20,24} x0(mod2)的解集是:X3{0,2,4,6,8,10,12} 则:X1X2X3。可见,模是素因子2的3次幂(238)的解集最小,2次幂(224)的解集稍大,1次幂(212)的解集最大。故而,拆解合数模的原则是:以不同的素因子为基本单位,当素因子的幂有大有小时,保留高次幂,舍去低次幂。 (重要程度) 耐心 下面开始等价转化: (1)原方程组A x17(mod28)式 x3(mod21)式 x39(mod45)式 x9(mod30)式 (2)拆解合数模 28227,式等价于: x17(mod4),即:x1(mod4) x17(mod7),即:x3(mod7) (17除以4余1,17模4同余1,x模4同余17,也就是x模4同余1; 17除以7余3,17模7同余3,x模7同余17,也就是x模7同余3) 2137,式等价于: x3(mod3),即:x0(mod3) x3(mod7),即:x3(mod7) 45325,式等价于: x39(mod9),即:x3(mod9) x39(mod5),即:x4(mod5) 30235,式等价于: x9(mod2),即:x1(mod2) x9(mod3),即:x0(mod3) x9(mod5),即:x4(mod5) (3)合并 x1(mod4)式1 x3(mod7)式2 x0(mod3)式3 x3(mod7)式4 x3(mod9)式5 x4(mod5)式6 x1(mod2)式7 x0(mod3)式8 x4(mod5)式9 (4)去重 式2与式4相同,留一;式3与式8相同,留一;式6与式9相同,留一;式1与式7同余,对比保留高次幂模式1,舍去低次幂模式7。 x1(mod4)式1 x3(mod7)式2 x0(mod3)式3 x3(mod9)式5 x4(mod5)式6 式5与式3的模依然不互素,需要再次调整。由于式5拆解后可得式3,说明只要满足式5成立的解,必然满足式3,因此保留解集较小的式5,舍去式3。尽管式3与式5不同余,但依然满足保留高次幂,舍去低次幂的拆解原则。 (5)排序得模满足两两互素条件的同解方程组B x1(mod4)式1 x4(mod5)式6 x3(mod7)式2 x3(mod9)式5 (6)解同解方程组B 详细过程略(有兴趣的读者可自行补充)。 特解: cv1(m2m3m4)b1v2(m1m3m4)b2v3(m1m2m4)b3v4(m1m2m3)b4 13151(2)25243180321403 31520161620840 129 通解: xckm1,m2,m3,m4 129k28,21,45,30 1291260k 注意:通解中的m1、m2、m3、m4是指原方程组A中的模,且要取它们的最小公倍数,而不再是其乘积。 好神奇呀三、留个尾巴,大家练练手 x29(mod36)式 x13(mod20)式 x43(mod70)式 可以在评论区切磋切磋。 请赐教!