引言

再看扩展欧几里得的时候,我一直有一个疑问,即:

为什么扩欧一定有解?

我们可以通过说明欧几里得算法一定有解,来论证扩展欧几里得也一定有解。这显然是正确的,但是这个结论总感觉有点微妙。

我们不妨来考虑下面这个问题:对于方程

$$
ax+by=m, a,b,m\in\mathbb Z
$$

有整数解 $(a,b)$ 的充要条件是什么?

在这里,我们引入裴蜀定理。

裴蜀定理

对于任意两个整数 $a,b$,设 $d = \gcd(a,b)$。那么关于未知数 $x,y$ 的线性方程(裴蜀等式):

$$
ax+by=m
$$

有整数解 $(x,y)$ 当且仅当 $m$ 为 $d$ 的整数倍。

裴蜀等式有解时必然有无穷多个解。

证明

讨论:

(1) 若 $a,b$ 中有一个为 $0$,不失一般性,设 $a=0$,那么他们的最大公约数 $d=b$,裴蜀等式也变为:

$$
by=m
$$

当且仅当 $m$ 为 $b$ (即 $d$) 的倍数时,方程有解。由于 $x$ 可以为任意整数,所以有解时裴蜀等式必然有无穷多组解。证毕。

(2) 若 $ab \neq 0$

考察集合

$$
A=\{xa+yb|(x,y)\in\mathbb Z^2\}
$$

下面证明 $A$ 中的最小正元素等于 $\gcd(a,b)$。

首先,$A\cap \mathbb N^*$ 不是空集,因为至少有 $|a|,|b|\in A$。根据最小数存在定理,$A$ 中必然存在最小正元素,我们记作 $d_0 = x_0 a + y_0 b$。考虑 $A$ 中的任意一个元素 $p = x_1 a + y_1 b$ 对于 $d_0$ 的带余除法:设

$$
p = qd_0 + r, 0 \leq r < d_0
$$

由于

$$
r = p - qd_0 = (x_1 - qx_0) a + (y_1 - qy_0) b \in A
$$

因为 $0 \leq r < d_0$ 且 $d_0$ 为 $A$ 的最小正元素,我们可以得到 $r = 0$,即 $d_0 \mid p$。即,$A$ 中的任意元素 $p$ 都是 $d_0$ 的倍数。

特别地,我们取:

$$
\begin{cases}
x = \operatorname{sgn}(a) \\
y = 0
\end{cases}, \begin{cases}
x = 0 \\
y = \operatorname{sgn}(b)
\end{cases}
$$

可以得到:

$$
d_0 \mid a, d_0 \mid b
$$

故 $d_0$ 为 $a,b$ 的公约数。

接下来,我们证明 $d_0$ 为 $a,b$ 的最大公约数。

对于 $a,b$ 的任意正公约数 $d$,设 $a = kd, b=ld$,则

$$
d_0 = x_0 a + y_0 b = (x_0 k + y_0 l) d
$$

故 $d \mid d_0$,且必然有 $d_0\geq d$,故我们可以得出

$$
d_0 = \max d = \gcd(a,b)
$$

也就是说,我们证明了:$A$ 中的任意元素 $p$ 都是 $\gcd(a,b)$ 的倍数。即,方程 $ax+by=m$ 有整数解时,$m$ 必然为 $\gcd(a,b)$ 的倍数时。由此,我们证明了定理的充分性。

必要性证明:

我们已经证明了

$$
ax+by=\gcd(a,b)=d_0
$$

时方程有解,解记作 $(x_0,y_0)$。对于 $d_0$ 的任意倍数 $t$,此裴蜀等式的解即为 $(tx_0,ty_0)$。必然有解。

此外,我们再给出裴蜀等式无穷多组解的解集:

对于裴蜀等式:

$$
ax+by=m_0d_0, d_0=\gcd(a,b)
$$

$$
(x,y)\in\Big\{\Big(mx_0 + \frac {kb} d,my_0 - \frac {ka} d\Big)\Big|k\in\mathbb Z\Big\}
$$

特例

注意:裴蜀定理有非常有用的特例:

方程 $ax+by=1$ 有整数解 $(x,y)$ 当且仅当 $a,b$ 互素,即 $\gcd(a,b)=1, a\perp b$。

Reference

最后修改:2022 年 03 月 06 日 11 : 01 PM
真的不买杯奶茶嘛....qwq