同余:\(a\equiv b(\bmod m)\)
一、同余的定义
设\(m\)是一个正整数,若整数\(a\)和\(b\)除以\(m\)的余数相同,则称\(a\)和\(b\)对模\(m\)同余,记作\(a\equiv b(\bmod m)\)。
例如,\(10\div3 = 3\cdots\cdots1\),\(13\div3 = 4\cdots\cdots1\),所以\(10\equiv13(\bmod 3)\)。
从数学表达式来说,\(a\equiv b(\bmod m)\)等价于\(m\mid(a - b)\),即\(a - b\)能被\(m\)整除。
例如,因为\(15-3 = 12\),\(4\mid12\),所以\(15\equiv3(\bmod 4)\)。
二、同余的性质
1、反身性:\(a\equiv a(\bmod m)\)。
因为\(a - a = 0\),\(m\mid0\),所以任何整数与自身对模\(m\)同余。
2、对称性:若\(a\equiv b(\bmod m)\),则\(b\equiv a(\bmod m)\)。
因为\(a\equiv b(\bmod m)\)意味着\(m\mid(a - b)\),那么\(m\mid(b - a)\),所以\(b\equiv a(\bmod m)\)。
3、传递性:若\(a\equiv b(\bmod m)\)且\(b\equiv c(\bmod m)\),则\(a\equiv c(\bmod m)\)。
由于\(m\mid(a - b)\)且\(m\mid(b - c)\),所以\(a - b = km\),\(b - c = lm\)(\(k\)、\(l\)为整数),
那么\(a - c=(a - b)+(b - c)=(k + l)m\),即\(m\mid(a - c)\),所以\(a\equiv c(\bmod m)\)。
4、可加性:若\(a\equiv b(\bmod m)\),\(c\equiv d(\bmod m)\),则\(a + c\equiv b + d(\bmod m)\)。
因为\(a - b = k_{1}m\),\(c - d = k_{2}m\)(\(k_{1}\)、\(k_{2}\)为整数),
那么\((a + c)-(b + d)=(a - b)+(c - d)=(k_{1}+k_{2})m\),所以\(a + c\equiv b + d(\bmod m)\)。
5、可减性:若\(a\equiv b(\bmod m)\),\(c\equiv d(\bmod m)\),则\(a - c\equiv b - d(\bmod m)\)。
证明过程与加法类似,\((a - c)-(b - d)=(a - b)-(c - d)=(k_{1}-k_{2})m\)(\(k_{1}\)、\(k_{2}\)为整数),
所以\(a - c\equiv b - d(\bmod m)\)。
6、可积性:若\(a\equiv b(\bmod m)\),\(c\equiv d(\bmod m)\),则\(ac\equiv bd(\bmod m)\)。
因为\(a = b + k_{1}m\),\(c = d + k_{2}m\)(\(k_{1}\)、\(k_{2}\)为整数),
\(ac=(b + k_{1}m)(d + k_{2}m)=bd + bk_{2}m + dk_{1}m + k_{1}k_{2}m^{2}=bd+(bk_{2}+dk_{1}+k_{1}k_{2}m)m\),所以
\(ac\equiv bd(\bmod m)\)。
三、同余的乘法性质
1. 同余乘法性质
若\(a\equiv b(\bmod m)\),\(c\equiv d(\bmod m)\),那么\(ac\equiv bd(\bmod m)\)。
例如,已知\(3\equiv8(\bmod 5)\),\(4\equiv9(\bmod 5)\),则\(3\times4\equiv8\times9(\bmod 5)\),即\(12\equiv72(\bmod 5)\),进一步计算可得\(12\div5 = 2\cdots\cdots2\),\(72\div5 = 14\cdots\cdots2\),余数相同,验证了该性质。
2. 证明过程
因为\(a\equiv b(\bmod m)\),根据同余的定义,可得\(a = b + km\)(\(k\)为整数)。
同理,因为\(c\equiv d(\bmod m)\),所以\(c = d + lm\)(\(l\)为整数)。
那么\(ac=(b + km)(d + lm)=bd + blm + dkm+klm^{2}\)。
整理可得\(ac - bd=(bl + dk + klm)m\),这表明\(m\mid(ac - bd)\)。
根据同余的定义,所以\(ac\equiv bd(\bmod m)\)。
3. 同余乘法性质的推广
若\(a\equiv b(\bmod m)\),则\(a^{n}\equiv b^{n}(\bmod m)\)(\(n\)为正整数)。
证明可以使用数学归纳法。当\(n = 1\)时,显然成立。假设当\(n = k\)(\(k\geqslant1\))时,\(a^{k}\equiv b^{k}(\bmod m)\)成立。
当\(n = k + 1\)时,因为\(a\equiv b(\bmod m)\),\(a^{k}\equiv b^{k}(\bmod m)\),根据同余乘法性质,可得\(a^{k + 1}\equiv b^{k + 1}(\bmod m)\)。
例如,已知\(2\equiv7(\bmod 5)\),则\(2^{3}\equiv7^{3}(\bmod 5)\),即\(8\equiv343(\bmod 5)\),计算可得\(8\div5 = 1\cdots\cdots3\),\(343\div5 = 68\cdots\cdots3\),余数相同,验证了该推广性质。
4. 同余乘法性质的应用场景
简化计算余数:例如,计算\(37^{100}\)除以\(10\)的余数。因为\(37\equiv7(\bmod 10)\),所以\(37^{100}\equiv7^{100}(\bmod 10)\)。通过观察\(7\)的幂次除以\(10\)的余数规律(\(7^{1}\equiv7(\bmod 10)\),\(7^{2}\equiv9(\bmod 10)\),\(7^{3}\equiv3(\bmod 10)\),\(7^{4}\equiv1(\bmod 10)\)),可以发现周期为\(4\),\(100\div4 = 25\),所以\(7^{100}\equiv1(\bmod 10)\),即\(37^{100}\)除以\(10\)的余数为\(1\)。
密码学中的应用:在一些密码算法(如RSA算法)的计算过程中,同余乘法性质被用于加密和解密操作中的模幂运算,以保证信息的安全性和准确性。
四、同余的除法性质
1. 同余除法性质
若\(ac\equiv bc(\bmod m)\),且\((c,m)=d\)(\((c,m)\)表示\(c\)和\(m\)的最大公因数),那么\(a\equiv b(\bmod\frac{m}{d})\)。
例如,若\(6x\equiv9x(\bmod15)\),因为\((3,15) = 3\),所以可以得出\(2\equiv3(\bmod5)\)。
2. 证明过程
已知\(ac\equiv bc(\bmod m)\),根据同余的定义,这意味着\(m\mid(ac - bc)\),即\(m\mid c(a - b)\)。
设\(c = k_1d\),\(m = k_2d\)(其中\((c,m)=d\),所以\(k_1\)和\(k_2\)互质)。
因为\(m\mid c(a - b)\),所以\(k_2d\mid k_1d(a - b)\),两边同时除以\(d\),得到\(k_2\mid k_1(a - b)\)。
由于\(k_1\)和\(k_2\)互质,根据整除的性质,可得\(k_2\mid(a - b)\),也就是\(\frac{m}{d}\mid(a - b)\)。
根据同余的定义,这就证明了\(a\equiv b(\bmod\frac{m}{d})\)。
3. 特殊情况:当\((c,m)=1\)时
若\(ac\equiv bc(\bmod m)\)且\((c,m)=1\),那么\(a\equiv b(\bmod m)\)。
例如,\(3x\equiv6x(\bmod7)\),因为\((3,7)=1\),所以可以直接得出\(x\equiv2x(\bmod7)\),进而可以通过其他运算求出\(x\)的同余类。
4. 应用示例
求解同余方程\(12x\equiv24(\bmod30)\)。
首先,\((12,30)=6\),两边同时除以\(6\),得到\(2x\equiv4(\bmod5)\)。
因为\((2,5)=1\),所以\(x\equiv2(\bmod5)\),这意味着\(x = 5k + 2\)(\(k\)为整数)是原同余方程\(12x\equiv24(\bmod30)\)的解。
五、剩余系和完全剩余系
设\(m\)是一个正整数,对于任意整数\(a\),\(a\)除以\(m\)的余数\(r\)满足\(0\leq r\lt m\),所有余数构成的集合\(\{0,1,\cdots,m - 1\}\)称为模\(m\)的一个完全剩余系。例如,模\(3\)的完全剩余系是\(\{0,1,2\}\)。
从模\(m\)的完全剩余系中各取一个数组成的集合称为模\(m\)的一个剩余系。例如,\(\{3,4,5\}\)是模\(3\)的一个剩余系,因为\(3\div3\)的余数是\(0\),\(4\div3\)的余数是\(1\),\(5\div3\)的余数是\(2\)。
六、同余方程
1. 同余方程定义
同余方程是指形如\(ax\equiv b(\bmod m)\)的方程,其中\(a\)、\(b\)、\(m\)是给定的整数,\(m>0\),\(x\)是未知数。
例如,\(3x\equiv2(\bmod5)\)就是一个同余方程,它表示\(3x\)和\(2\)在模\(5\)的意义下同余,即\(3x\)和\(2\)除以\(5\)的余数相同。
2. 同余方程解的存在性及个数
存在性判断:同余方程\(ax\equiv b(\bmod m)\)有解的充分必要条件是\((a,m)\mid b\),其中\((a,m)\)表示\(a\)和\(m\)的最大公因数。
例如,对于方程\(4x\equiv2(\bmod6)\),因为\((4,6)=2\),且\(2\mid2\),所以该方程有解。
解的个数:若同余方程\(ax\equiv b(\bmod m)\)有解,且\((a,m)=d\),那么它在模\(m\)下有\(d\)个不同的解。
例如,对于方程\(6x\equiv3(\bmod9)\),\((6,9)=3\),该方程有\(3\)个不同的解(在模\(9\)下)。
3. 同余方程求解方法
方法一:穷举法(适用于\(m\)较小的情况)
例如,对于同余方程\(3x\equiv1(\bmod5)\),因为\(x\)是模\(5\)的同余类,所以\(x\)可能的值为\(0,1,2,3,4\)。分别代入验证:
当\(x = 0\)时,\(3\times0 = 0\),\(0\div5\)的余数为\(0\),不符合。
当\(x = 1\)时,\(3\times1 = 3\),\(3\div5\)的余数为\(3\),不符合。
当\(x = 2\)时,\(3\times2 = 6\),\(6\div5\)的余数为\(1\),符合,所以\(x = 2\)是一个解。
方法二:利用同余的性质(当\((a,m)=1\)时)
对于方程\(3x\equiv1(\bmod5)\),因为\((3,5)=1\),根据同余乘法性质,找到\(3\)关于模\(5\)的逆元。因为\(3\times2 = 6\equiv1(\bmod5)\),所以\(2\)是\(3\)关于模\(5\)的逆元。两边同时乘以\(2\),得到\(x\equiv2\times1\equiv2(\bmod5)\),所以\(x = 5k + 2\)(\(k\)为整数)是方程的解。
方法三:先化简再求解(当\((a,m)>1\)时)
对于方程\(6x\equiv3(\bmod9)\),因为\((6,9)=3\),且\(3\mid3\),方程有解。两边同时除以\(3\),得到\(2x\equiv1(\bmod3)\)。因为\((2,3)=1\),且\(2\times2 = 4\equiv1(\bmod3)\),所以\(x\equiv2(\bmod3)\)。原方程是模\(9\)的同余方程,在模\(9\)下的解为\(x = 3k + 2\)(\(k = 0,1,2\)),即\(x = 2,5,8\)。
4. 线性同余方程组(中国剩余定理)
定义:由多个同余方程组成的方程组,如\(\begin{cases}x\equiv a_1(\bmod m_1)\\x\equiv a_2(\bmod m_2)\end{cases}\)(\(m_1\)与\(m_2\)互质)。例如\(\begin{cases}x\equiv2(\bmod3)\\x\equiv3(\bmod5)\end{cases}\)。
求解方法(中国剩余定理):设\(M = m_1\times m_2\),\(M_1=\frac{M}{m_1}\),\(M_2=\frac{M}{m_2}\),分别求出\(M_1\)关于模\(m_1\)的逆元\(y_1\)和\(M_2\)关于模\(m_2\)的逆元\(y_2\)。则方程组的解为\(x\equiv a_1M_1y_1 + a_2M_2y_2(\bmod M)\)。对于上述例子,\(M = 3\times5 = 15\),\(M_1 = 5\),\(M_2 = 3\)。\(5\)关于模\(3\)的逆元\(y_1 = 2\),\(3\)关于模\(5\)的逆元\(y_2 = 2\)。则\(x\equiv2\times5\times2+3\times3\times2\equiv20 + 18\equiv8(\bmod15)\)。
5. 同余方程应用场景
密码学:同余方程在密码学中的RSA算法等中有重要应用。例如,在RSA算法的加密和解密过程中,涉及到求解同余方程来确定加密密钥和解密密钥。
数论问题:用于解决如求整数的幂次在模某个数下的余数等问题。例如,计算\(2^{100}\)除以\(7\)的余数,可以通过将指数\(100\)进行适当分解,转化为同余方程来求解。
计算机科学中的哈希函数:某些哈希函数的设计会用到同余方程,用于将数据均匀地分布在一个固定大小的哈希表中,提高数据存储和查找的效率。
七、同余的应用
1. 判断整除性
例题1:判断\(2345\)能否被\(7\)整除。
解答:因为\(2345 = 2100+245\),\(2100\div7 = 300\),\(245 = 210 + 35\),\(210\div7 = 30\),\(35\div7 = 5\)。所以\(2345\equiv0(\bmod7)\),能被\(7\)整除。
例题2:判断\(123456\)能否被\(11\)整除。
解答:根据能被\(11\)整除的数的特征(奇数位数字之和与偶数位数字之和的差能被\(11\)整除),\((1 + 3 + 5)-(2 + 4 + 6)= -3\),\(-3\equiv8(\bmod11)\),所以\(123456\)不能被\(11\)整除。
2. 求余数
例题3:求\(3456\)除以\(9\)的余数。
解答:因为一个数除以\(9\)的余数等于它各位数字之和除以\(9\)的余数,\(3 + 4+5 + 6 = 18\),\(18\div9 = 2\cdots\cdots0\),所以\(3456\equiv0(\bmod9)\),余数为\(0\)。
例题4:求\(7^{100}\)除以\(13\)的余数。
解答:因为\(7^{2}=49\equiv10(\bmod13)\),\(7^{4}=(7^{2})^{2}\equiv10^{2}=100\equiv9(\bmod13)\),\(7^{8}=(7^{4})^{2}\equiv9^{2}=81\equiv3(\bmod13)\),\(7^{16}=(7^{8})^{2}\equiv3^{2}=9(\bmod13)\),\(7^{32}=(7^{16})^{2}\equiv9^{2}=81\equiv3(\bmod13)\),\(7^{64}=(7^{32})^{2}\equiv3^{2}=9(\bmod13)\),\(7^{100}=7^{64}\times7^{32}\times7^{4}\),根据同余乘法性质,\(7^{100}\equiv9\times3\times9 = 243\equiv1(\bmod13)\),余数为\(1\)。
3. 日历问题
例题5:如果今天是星期一,问从今天起再过\(100\)天是星期几?
解答:因为一周有\(7\)天,设星期几为模\(7\)的同余类,星期一为\(1\),再过\(100\)天,\(1 + 100\equiv1 + 2 = 3(\bmod7)\),所以是星期三。
例题6:已知某一年的国庆节是星期二,问这一年的元旦是星期几?
解答:从元旦到国庆,1月有\(31\)天,2月(非闰年\(28\)天,闰年\(29\)天),3月\(31\)天,4月\(31\)天,5月\(31\)天,6月\(30\)天,7月\(31\)天,8月\(31\)天,9月\(30\)天。总天数非闰年为\(31 + 28+31 + 30+31 + 30+31 + 31+30 = 274\)天,\(274\div7 = 39\cdots\cdots1\),设元旦为\(x\),\(x + 1\equiv2(\bmod7)\),得\(x\equiv1(\bmod7)\),是星期一;闰年总天数为\(275\)天,\(275\div7 = 39\cdots\cdots2\),\(x + 2\equiv2(\bmod7)\),得\(x\equiv0(\bmod7)\),是星期日。
4. 数字规律问题
例题7:有一列数\(1,3,4,7,11,18,\cdots\),规律是从第三项起每一项是前两项之和,问这列数中的第\(2024\)项除以\(5\)的余数是多少?
解答:先写出这列数除以\(5\)的余数数列:\(1,3,4,2,1,3,4,2,\cdots\),发现周期为\(4\),\(2024\div4 = 506\),所以第\(2024\)项除以\(5\)的余数是\(2\)。
例题8:求\(1\times2\times3\times\cdots\times100\)除以\(11\)的余数。
解答:因为\(11\)是质数,根据威尔逊定理,\((p - 1)!\equiv - 1(\bmod p)\)(\(p\)为质数),这里\(p = 11\),所以\(10!\equiv - 1(\bmod11)\),\(1\times2\times3\times\cdots\times100=(1\times2\times\cdots\times10)^{10}\),\((1\times2\times\cdots\times10)\equiv10!\equiv - 1(\bmod11)\),\(( - 1)^{10}\equiv1(\bmod11)\),余数为\(1\)。
5. 同余方程应用
例题9:求解同余方程\(3x\equiv9(\bmod12)\)。
解答:因为\((3,12)=3\),两边同时除以\(3\),得到\(x\equiv3(\bmod4)\),所以\(x = 4k + 3\)(\(k\)为整数)是方程的解。
例题10:求解同余方程\(5x\equiv10(\bmod15)\)。
解答:\((5,15)=5\),两边同时除以\(5\)得\(x\equiv2(\bmod3)\),所以\(x = 3k + 2\)(\(k\)为整数)是方程的解。
6. 棋子摆放问题
例题11:在一个圆形棋盘上摆放棋子,按顺时针方向每隔\(3\)个位置放一个黑棋子,每隔\(4\)个位置放一个白棋子。如果棋盘上共有\(100\)个位置,问哪些位置会同时摆放黑棋子和白棋子?
解答:设位置编号为\(n\),\(0\leq n\leq99\)。黑棋子位置满足\(n\equiv0(\bmod3)\),白棋子位置满足\(n\equiv0(\bmod4)\),同时满足的位置就是\(3\)和\(4\)的最小公倍数对应的同余类,\([3,4]=12\),所以\(n\equiv0(\bmod12)\),即位置为\(0,12,24,\cdots,84,96\)。
例题12:有一个长方形棋盘,横向有\(m\)个格子,纵向有\(n\)个格子(\(m,n\)为正整数)。从左上角开始,按对角线方向每隔\(a\)个格子放一个棋子,问最后一个棋子放在什么位置?
解答:设棋子的位置坐标为\((x,y)\),先考虑模\(m\)和模\(n\)的同余关系,根据棋子的放置规律建立同余方程,然后通过求解同余方程来确定\((x,y)\)的位置,具体答案取决于\(m,n,a\)的具体数值。
7. 密码学简单应用(加密原理示意)
例题13:假设一种简单加密方法,将明文数字\(x\)加密为\(y\equiv3x + 5(\bmod26)\)(\(x,y\)表示字母在字母表中的位置,\(A = 0,B = 1,\cdots,Z = 25\)),加密后的数字\(y\)为密文。若明文是“HELLO”,求密文。
解答:\(H\)对应\(7\),\(y\equiv3\times7 + 5 = 26\equiv0(\bmod26)\);\(E\)对应\(4\),\(y\equiv3\times4 + 5 = 17\);\(L\)对应\(11\),\(y\equiv3\times11+5 = 38\equiv12(\bmod26)\);\(L\)对应\(11\),\(y\equiv3\times11 + 5 = 38\equiv12(\bmod26)\);\(O\)对应\(14\),\(y\equiv3\times14+5 = 47\equiv21(\bmod26)\),密文是“AFMMLV”。
例题14:对于上述加密方法,若收到密文“QJKX”,求明文。
解答:设明文对应的数字为\(x\),对于\(Q\)(对应\(16\)),则\(16\equiv3x + 5(\bmod26)\),移项得\(3x\equiv11(\bmod26)\),通过求解同余方程得\(x\equiv7(\bmod26)\),对应字母\(H\);同理对\(J\)(对应\(9\)),\(9\equiv3x + 5(\bmod26)\),解得\(x\equiv8(\bmod26)\),对应字母\(I\);对\(K\)(对应\(10\)),\(10\equiv3x + 5(\bmod26)\),解得\(x\equiv17(\bmod26)\),对应字母\(R\);对\(X\)(对应\(23\)),\(23\equiv3x + 5(\bmod26)\),解得\(x\equiv6(\bmod26)\),对应字母\(G\),明文是“HIRG”。
8. 商品分配问题
例题15:有\(n\)个苹果要平均分给\(m\)个小朋友,最后剩下\(r\)个苹果,已知\(n\equiv r(\bmod m)\),如果\(m = 7\),\(r = 3\),问\(n\)可能是多少?
解答:\(n\equiv3(\bmod7)\),所以\(n = 7k + 3\)(\(k\)为整数),\(n\)可能是\(3,10,17,\cdots\)。
例题16:有一批货物,每\(8\)件装一箱余\(5\)件,每\(10\)件装一箱余\(7\)件,问这批货物最少有多少件?
解答:设货物有\(x\)件,根据题意\(x\equiv5(\bmod8)\),\(x\equiv7(\bmod10)\)。对于\(x\equiv5(\bmod8)\),\(x = 8a + 5\),代入\(x\equiv7(\bmod10)\)得\(8a + 5\equiv7(\bmod10)\),\(8a\equiv2(\bmod10)\),\(4a\equiv1(\bmod5)\),解得\(a\equiv4(\bmod5)\),\(a = 5b + 4\),所以\(x = 8(5b + 4)+5 = 40b + 37\),当\(b = 0\)时,\(x\)最小为\(37\)件。
9. 数字组合问题
例题17:从\(1\)到\(100\)中选取数字,使得选取的数字之和除以\(9\)的余数为\(5\),问最少选取几个数字?
解答:考虑数字除以\(9\)的余数,\(1\equiv1(\bmod9)\),\(2\equiv2(\bmod9)\),\(\cdots\),\(9\equiv0(\bmod9)\)。要使余数为\(5\),最少选取\(5\)个数字,如\(1,2,3,4,5\),它们的和为\(15\),\(15\equiv6(\bmod9)\);选取\(1,2,3,4,9\),它们的和为\(19\),\(19\equiv1(\bmod9)\);选取\(1,2,3,8,9\),它们的和为\(23\),\(23\equiv5(\bmod9)\),最少选取\(5\)个数字。
例题18:用\(0\)到\(9\)这十个数字组成一个五位数\(abcde\),要求\(abcde\equiv7(\bmod11)\),问这样的五位数有多少个?
解答:根据能被\(11\)整除的数的特征(奇数位数字之和与偶数位数字之和的差能被\(11\)整除),设\(S_1=a + c + e\),\(S_2 = b + d\),\(S_1 - S_2\equiv7(\bmod11)\)或\(S_2 - S_1\equiv7(\bmod11)\)。然后分情况讨论,通过排列组合计算每种情况下满足条件的五位数的个数,最后相加得到总数。
10. 数列周期问题(基于同余判断周期)
例题19:数列\(\{a_n\}\)满足\(a_{n + 1}\equiv3a_n + 1(\bmod7)\),\(a_1 = 1\),问该数列的周期是多少?
解答:计算\(a_1 = 1\),\(a_2\equiv3\times1 + 1 = 4(\bmod7)\),\(a_3\equiv3\times4 + 1 = 13\equiv6(\bmod7)\),\(a_4\equiv3\times6 + 1 = 19\equiv5(\bmod7)\),\(a_5\equiv3\times5 + 1 = 16\equiv2(\bmod7)\),\(a_6\equiv3\times2 + 1 = 7\equiv0(\bmod7)\),\(a_7\equiv3\times0 + 1 = 1(\bmod7)\),所以周期为\(6\)。
例题20:有一个数列\(\{b_n\}\),\(b_n\)是\(n\)除以\(4\)的余数,问数列\(\{b_n\}\)的周期是多少?
解答:\(n = 1\)时,\(b_1 = 1\div4\)的余数为\(1\);\(n = 2\)时,\(b_2 = 2\div4\)的余数为\(2\);\(n = 3\)时,\(b_3 = 3\div4\)的余数为\(3\);\(n = 4\)时,\(b_4 = 4\div4\)的余数为\(0\);\(n = 5\)时,\(b_5 = 5\div4\)的余数为\(1\),所以周期为\(4\)。