Skip to content

第 1 章:同余、消去与模逆元 ​

返回目录

1.1 同余是在比较什么 ​

固定一个正整数n作为模数。写a\equiv b\pmod n,意思是n整除a-b:两个整数相差n的整数倍,因此除以n的余数相同。例如17\equiv2\pmod5,因为17-2=3\cdot5。

同余不要求两个整数本身相等。它只保留“除以n后属于哪一种余数”的信息。以后说“模n的一个数”,指的是一个剩余类;计算时可以用0,1,\ldots,n-1中的代表表示它。

为什么可以先取余再计算?若a=b+un、c=d+vn,其中u,v为整数,那么

a+c=(b+d)+(u+v)n,
\qquad
ac=bd+n(ud+vb+uvn).

这两个差都含有因子n,所以加法和乘法保留同余。重复使用乘法,就得到a^k\equiv b^k\pmod n,这里k是非负整数。这是以后所有模幂运算的依据。

1.2 为什么约分需要互质 ​

在整数等式中,非零因子可以消去;在同余中,需要额外条件。若

ac\equiv bc\pmod n,

我们知道的是n\mid c(a-b)。要推出n\mid(a-b),必须保证c不会替a-b承担模数中的质因子。条件\gcd(c,n)=1恰好保证这一点。这里\gcd表示最大公约数,最大公约数为1就是互质。

严格地说,裴蜀等式告诉我们:若\gcd(c,n)=1,存在整数u,v使uc+vn=1。两边乘a-b,得到

a-b=u\,c(a-b)+v\,n(a-b).

右边两项都被n整除,所以左边也被n整除。于是

\gcd(c,n)=1,\quad ac\equiv bc\pmod n
\quad\Longrightarrow\quad a\equiv b\pmod n.

不互质时结论确实会失败:2\cdot1\equiv2\cdot4\pmod6,但1\not\equiv4\pmod6。这个例子用于提醒我们检查条件;一般证明仍是上面的裴蜀等式推导。裴蜀等式自身的证明在第14章。

1.3 模逆元怎样代替除法 ​

若ab\equiv1\pmod n,就称b为a的模n逆元。它的作用是:乘a之后再乘b,会恢复原来的剩余类。因此解ax\equiv c\pmod n时,可以两边乘b,得到x\equiv bc\pmod n。

逆元存在的充要条件是\gcd(a,n)=1。充分性来自裴蜀等式:au+nv=1模n后给出au\equiv1。必要性也直接:若a和n有大于1的公因子,这个公因子会整除ab和n,不可能让ab与1只相差n的倍数。

所以后面证明中出现“消去一个因子”“取逆元”时,互质条件不是形式上的附加语,而是让这一步成立的原因。

保留每一次追问,认真走完每一步证明。