笔记:线性同余方程和剩余定理

线性同余方程和剩余定理笔记

动机

碰到这类题每次求通解都要查公式,有时候抄错一个地方也看不出来(乐),那就手动推一下加强印象。

注:本文不讲解扩展欧几里得。

线性同余方程

形如:

\[ax\equiv b \bmod n \]

的方程就是线性同余方程,我们要解出 \(x\) 的特解和通解。

转化

容易转化成:

\[ax+yn = b \]

其中:

\[ax+yn=\gcd(a,b) \]

是标准的扩展欧几里得求解,计解出的特解为 \(x_0,y_0\)\(\gcd(a,n)=d\) ,那么通解可以表示为:\(x_0+\frac{n}{d}t\)\(y_0-\frac{a}{d}t\) ,可以发现最后加和的那一项被消除了。

那为什么加减项不使用别的数而就要用这个呢(比如直接用 \(n,a\) )?实时上该通解构成了该方程的所有整数解,这个倍数构成最小周期(这并不是周期的概念,只是加强理解)。

求解 \(x\)\(y\) 的最小正整数解,只需要把特解定在加减项的剩余系中就可以了。

原问题求解

原问题同余项是 \(b\) 不是 \(\gcd(a,n)\) ,我们对原始子同时乘一个常数 \(k\) 就能得到 \(ax+yn=k\cdot \gcd(a,n)\) 的一组解,那么根据裴蜀定理,若 \(b \nmid \gcd(a,n)\) ,该方程无整数解。

否则 \(k=\frac{b}{\gcd(a,n)}\) 即可,此时的通解形式为:(设 \(x_0,y_0\) 是对 \(\gcd(a,b)\) 的特解)

\[x=kx_0+\frac{n}{d}t,y=ky_0-\frac{a}{d}t \]

注意后一项不用对 \(k\) 乘积。

剩余定理

这里直接求解扩展剩余定理:

\[\left\{ \begin{aligned} x &\equiv a_1 \bmod n_1\\ x &\equiv a_2 \bmod n_2\\ &\cdots\\ x &\equiv a_m \bmod n_m \end{aligned} \right. \]

这里 \(n_1,n_2,\cdots,n_m\) 不一定互质。

解法

考虑将两个方程合并成一个。

转化成:\(x=n_1p+a_1=n_2q+a_2\) ,就有 \(n_1p-n_2q=a_2-a_1\) ,可以用扩展欧几里得解出其特解 \((p,q)\)\(x_0\) ,此时 \(\operatorname{lcm(n_1,n_2)}\) 构成最小正周期,通解为:

\[x_0+t\operatorname{lcm(n_1,n_2)} \]

这里取 \(x\) 的任意一个等式作为合并方程:

\[x\equiv (n_1p+a_1) \bmod \operatorname{lcm(n_1,n_2)} \]

最终合并成一个方程即可。

扩展

合并方程组的本质是对每个式子求了 \(x\) 的通解 ,只是在 \(x\) 前系数为 \(1\) 的情况下,该通解表示比较简便,对于 \(a_ix\equiv b_i \bmod n_i\) 的一般式,就需要用扩展欧几里得解出 \(x\) 的通解 \(x=kx_0+b\) ,那两个方程的合并结果为 \(x=k_1x_1+b_1=k_2x_2+b_2\) ,其中解关于 \((k1,k2)\) 的方程,做方程合并。

当然上式也能写作:\(x \equiv -b \bmod x_0\) 转成标准形式。

一些应用

题目不一一列举了,这类问题的题目很多,会在题解中一点点更新!

剩余定理可以处理模数非质数的情况,对于一个非质数模数 \(n\) ,将 \(n\) 质因数分解 \(n=p_1^{c_1}p_2^{c_2}\cdots p_m^{c_m}\) ,此时求出质数 \(p_1,p_2,\cdots p_m\) 的所有特解,通过剩余定理拼出最终的解。

posted @ 2025-04-27 18:50  蒻蒻虫  阅读(57)  评论(0)    收藏  举报