同余
基本定义 \(a\ \%\ m=b\ \%\ m\),同余式为 \(a\equiv{b}\pmod{m}\)
基本定理
- \(a\equiv{b}\pmod{m}\),当且仅当 \(m\ |\ (a-b)\)
- \(a\equiv{b}\pmod{m}\),当且仅当存在整数 \(k\),使得 \(a=b+k\cdot{m}\)
-
同余关系是等价关系
自反:\(a\equiv{a}\pmod{m}\)
对称性:\(a\equiv{b}\pmod{m}\),则 \(b\equiv{a}\pmod{m}\)
传递性:\(a\equiv{b}\pmod{m},b\equiv{c}\pmod{m}\),则 \(a\equiv{c}\pmod{m}\)
-
若 \(a\equiv{b}\pmod{m},c\equiv{d}\pmod{m}\),则
\(a*x+c*y\equiv b*x+d*y\pmod m\)
\(a*c\equiv b*d\pmod m\)
\(a^n\equiv b^n\pmod m\)
\(f(a)\equiv f(b)\pmod m\)
结论
(1)对任意整数 \(n\) , \(n^2\) 模 \(3\) 或 \(4\) 的结果只能是 \(0\) 或 \(1\)
(2)对任意整数 \(n\) , \(n^2\) 模 \(8\) 的结果只能是\(0\)、\(1\) 或 \(4\)
(3)对任意整数 \(n\) , \(n\) 与 \(n\) 各数位上的数字之和模 \(9\) 同余
扩展欧几里得算法
模版
线性同余方程
\(a*x\equiv b\pmod n\)
\[ \begin{gather} a\cdot{x}\equiv{b}\pmod{n}\\ x\equiv{b}\cdot{a}^{-1}\pmod{n} \nonumber \end{gather} \]
当 \(a\) 在模 \(n\) 下有逆元时, 有解。
当 \(\gcd(a,n)=1\) 时,一定存在逆元。否则令 \(g=\gcd(a,n)\)
当 \(g\ |\ b\) 时,方程可以化简为
\[ \begin{gather} \dfrac{a}{g}*x_0\equiv\dfrac{b}{g}\pmod{\dfrac{n}{g}}\\ x_0=\dfrac{b}{g}*{(\dfrac{a}{g})}^{-1}\pmod{\dfrac{n}{g}}\\ x_1=(x_0+k*\dfrac{n}{g})\pmod n \nonumber \end{gather} \]
\[ \begin{gather} a\cdot{x}\equiv{b}\pmod{n}\\ a\cdot{x}+n\cdot{y}=b\pmod{n} \nonumber \end{gather} \]
使用扩展欧几里得算法可以解出 \(x_0,y_0\)
\[ \begin{gather} a\cdot{x}_0+n\cdot{y}_0=\gcd(a,n)\\ a\cdot\dfrac{x_0}{\gcd(a,n)}+n\cdot\dfrac{y_0}{\gcd(a,n)}=1\\ a\cdot\dfrac{x_0\cdot{b}}{\gcd(a,n)}+n\cdot\dfrac{y_0\cdot{b}}{\gcd(a,n)}=b\\ x_1=\frac{x_0\cdot{b}}{\gcd(a,n)}\\ y_1=\frac{y_0\cdot{b}}{\gcd(a,n)}\\ x=x_1+k\cdot\frac{n}{\gcd(a,n)}\\ y=y_1-k\cdot\frac{a}{\gcd(a,n)} \end{gather} \]