同余

稱為模數的元素倍數的不同兩個元素之間的關係

同余(英语:Congruence modulo[1]符号:≡)在数学中是指数论中的一种等价关系[2]。当两个整数以同一个正整数,若得相同余数,则二整数同余。同余是抽象代数中的同余关系的原型[3]。最先引用同余的概念与“≡”符号者为德国数学家高斯

各种各样的
基本

延伸
其他

圆周率
自然对数的底
虚数单位
无限大

定义

对某两个整数  ,若它们以正整数 所得的余数相等,则称  对于模 同余,也就是严格来说,存在整数 使得

 

则称 对于除数 同余的。一般记做

 

比如

 

故可以记为

 

但另一方面,从  ,故 等价于

 

同余符号“”其UTF-8码为U+2261

同余类

可以证明所有对于模 同余的整数对构成一个(整数 上的)等价关系,换句话说,对于任意两个整数  

(1)  
(2)  
(3)  

故以下的集合

 
 

可称为 对于模 同余类congruence classresidue class),也可标记为 ;模 在上下文很清楚时,也可简记为  会被称为该同余类的代表数representative[4]

剩余系

剩余系[5][6](英语:residue system)亦即模 同余类的代表数的集合,通常使用的代表数是最小非负整数,因为它是除法中的应当余数。要注意的是,对于同一个模数 ,不同的同余类不等价,亦即,属于不同同余类的整数不同余于模数 ,或者说,模 剩余系中的任二元素不同余于模 ;而且,整数域中的每个整数只属于模数 的一个同余类,因为模 将整数域划分为互斥区块,每个区块是一个同余类。

一个完全剩余系(英语:complete residue system)指的是模 的全部同余类的代表数的集合;因为剩余系中的任二元素不同余于模 ,所以它也称为非同余余数的完整系统(英语:complete system of incongruent residues)。例如,模 有三个同余类 ,其完全剩余系可以是 。如果该集合是由每个同余类的最小非负整数所组成,亦即 ,则称该集合为模 最小剩余系(英语:least residue system)。

 完全剩余系中,与模 互素的代表数所构成的集合,称为模 简约剩余系(英语:reduced residue system),其元素个数记为 ,亦即欧拉函数。例如,模 的简约剩余系为  。如果模 素数,那么它的最小简约剩余系是 ,只比最小剩余系少一个 

性质

整除性

  (即是说 a 和 b 之差是 m 的倍数)
换句话说, [注 1]

同余可以用来检验一个数是否可以整除另外一个数,见整除规则

传递性

 

保持基本运算

 
 时,则为等量加法、减法: 
这性质更可进一步引申成为这样:
 [注 2]
其中 为任意整系数多项式函数。

放大缩小底数

k为整数,n为正整数, 

放大缩小模数

 为正整数, 当且仅当 

除法原理一

  互素,则 

除法原理二

每个正整数都可以分解为数个约数的乘积,称为整数分解。例如  ,约数    都可以整除  ,记为   。如果   可以整除某正整数  ,亦即  ,那么   就是   的约数: ,其中   为另一约数。 ,因此,  的约数也可以整除   

  等价于  ,也就是  。亦即,如果  ,那么它可以写成  ,因此有以下除法原理:

  的约数也可以整除  。亦即,  倍数  。因为  ,所以  
 
 [注 1]
现假设   可以整除   的倍数  。如果    互素(记为  ),那么   必定可以整除   
 [注 3]
如果   而且  ,那么   最小公倍数必定可以整除  ,记为  。这可以推广成以下性质:
 [注 4]
上面的最后一个性质可以使用算术基本定理集合来解释。一个大于1的正整数   可以分解为一串素数幂的乘积:   两两相异,且 ),令   为所有能整除   的素数幂的集合,即  。设   为正整数,则   整除  ,当且仅当   子集。令   ,则  并集必定也是   的子集。取这个并集中幂次最高的各个元素,它们的乘积就是   最小公倍数 。事实上,有  ,所以   也能够整除  

同余关系式

威尔逊定理

 

费马小定理

 

欧拉定理

 

卡迈克尔函数

 

阶乘幂

 

卢卡斯定理

 

组合数最小周期

 

 ,则 ,其中 [7]

相关概念

模逆元

 

可用辗转相除法欧拉定理卡迈克尔函数求解。

原根

存在最小的正整数d使得 成立,且 

同余方程

线性同余方程

 

考虑最大公约数,有解时用辗转相除法等方法求解。

线性同余方程组

 

先求解每一个线性同余方程,再用中国剩余定理解方程组。

二次剩余

 

勒让德符号雅可比符号克罗内克符号二次互反律用于判别d是否为模n的二次剩余。

高次剩余

 

例子

  • 自然数a的个位数字,就是求a与哪一个数对于模10同余。
  •  

应用

模数算术在数论群论环论纽结理论抽象代数计算机代数密码学计算机科学化学视觉音乐等学科中皆有应用。

它是数论的立基点之一,与其各个面向都相关。

模数算术经常被用于计算标识符中所使用的校验和,比如国际银行账户号码(IBANs)就用到了模97的算术,来捕获用户在输入银行账户号码时的错误。

于密码学中,模数算术是RSA迪菲-赫尔曼密钥交换公钥系统的基础,它同时也提供有限域,应用于 椭圆加密,且用于许多对称密钥加密中,包括高级加密标准国际资料加密算法等。

于计算机科学, 同余被应用于位元运算或其他与固定宽度之循环数据结构相关的操作。

于化学中, CAS号(一个对各种化合物皆异之的识别码)的最后一码为校验码,将CAS号首二部分最后的数字乘上一,下一码乘上二,下一码乘上三以此类推,将所有积加起来再取模10。

在音乐领域,模12用于十二平均律系统。

星期的计算中取模7算术极重要。

更广泛而言,同余在法律经济(见赛局理论)或其他社会科学领域中也有应用。

范例

以下为快速展示小于63位元无号整数之模数乘法的C程式,且变换过程中不发生溢位。计算 a * b (mod m)之算法:

uint64_t mul_mod(uint64_t a, uint64_t b, uint64_t m)
{
   uint64_t d = 0, mp2 = m >> 1;
   int i;
   if (a >= m) a %= m;
   if (b >= m) b %= m;
   for (i = 0; i < 64; ++i)
   {
       d = (d > mp2) ? (d << 1) - m : d << 1;
       if (a & 0x8000000000000000ULL)
           d += b;
       if (d > m) d -= m;
       a <<= 1;
   }
   return d%m;
}


注释

  1. ^ 1.0 1.1   表示 m 能整除 x,或者说 x 能被 m 整除。
  2. ^ 但是, 不能推论 .
  3. ^  表示 最大公约数
  4. ^  表示 最小公倍数

参考文献

  1. ^ Khan Academy > Congruence Modulo. [2014-10-21]. (原始内容存档于2020-11-04). 
  2. ^ Abstract algebra, I. H. Sheth, p.57. [2014-10-21]. (原始内容存档于2014-10-21). 
  3. ^ e-Study Guide for: Handbook of Mathematics: Mathematics, Mathematics, p.174. [2014-10-21]. (原始内容存档于2014-10-21). 
  4. ^ A Computational Introduction to Number Theory and Algebra, Victor Shoup, p.25. [2014-11-05]. (原始内容存档于2014-11-05). 
  5. ^ 国家教育研究院. 完全剩餘系 complete system of residues. 双语词汇、学术名词暨辞书信息网. [2022-05-21]. (原始内容存档于2022-05-21). 
  6. ^ 张鸿林; 葛显良 (编). 英汉数学词汇. 清华大学出版社. 2005: 119, 617. 
  7. ^ Chi-Jen Lu; Shi-Chun Tsaiy. The Periodic Property of Binomial Coefficients Modulo m and Its Applications. 10th SIAM Conference on Discrete Mathematics. 2000 [2018-09-13]. (原始内容存档于2018-09-14). 

参见