前言
第一次写CSDN的博客,因为我是学数学的,也学一些代码但是不多,所以文章可能更多的是和数学有关的,也许以后会有一些和算法有关的。这次重读数学分析时,又注意了一遍开头讲述的实数域的东西,因为后面就要涉及到数列,说到数列就要提到整数和数学归纳法,整数论里很基础的东西就是因数倍数的关系,说到这些就不能不提到贝祖定理,虽然说到这里和数学分析的关系疏远了很多,不过这次的主题是贝祖定理。
贝祖定理
为了方便,我们令 a \;a\; a和 b \;b\; b是正整数, a a\; a和 b \;b\; b有公因数 d \ d d,则贝祖定理即是说,存在整数 x x x和 y y y(一般为一个正数一个负数)使得 a x + b y = d \ ax+by=d ax+by=d。当 a \;a\; a或 b \;b\; b是负数的时候很容易用正数的结论证明出来,如果有一个是 0 \;0\; 0则显然成立。
贝祖定理的证明
1.整除方法
我们考虑 a \;a\; a, 2 a \;2a\; 2a, 3 a \;3a\; 3a, … \;\dots\; …, b d a \;\frac{b}{d}a\; dba这一共 b d \;\frac{b}{d}\; db个数除以 b \;b\; b的余数,因为 d \;d\; d为 a \;a\; a和 b \;b\; b的最大公因数,所以任意 a \;a\; a的整数倍除以 b \;b\; b的余数为 d \;d\; d的倍数,所以上面这 b d \;\frac{b}{d}\; db个余数都是 d \;d\; d的倍数,而且没有任何两个是相等的。可以用反证法说明这一点,如果有两个是相等的,设为 i a \;ia\; ia和 j a \;ja\; ja相等,则说明 b \;b\; b整除 ( j − i ) a \;(j-i)a\; (j−i)a,进而说明 b d \;\frac{b}{d}\; db整除 ( j − i ) \;(j-i)\; (j−i)。由于 i \;i\; i和 j \;j\; j都是小于 b d \;\frac{b}{d}\; db的,产生了矛盾,所以不能有两个相等的。又因为任意 a \;a\; a的整数倍除以 b \;b\; b的余数为 d \;d\; d的倍数,小于 b \;b\; b的 d \;d\; d的倍数一共只有 b d \;\frac{b}{d}\; db个,所以上面那 b d \;\frac{b}{d}\; db个余数就是 0 \;0 0, d \;d\; d, 2 d \;2d\; 2d, … \;\dots\; …, b − d \;b-d\; b−d的一个排列。从而存在 i a \;ia\; ia满足它除以 b \;b\; b的余数是 d \;d d,又设此时的商是 y \;y y,则有 i a − y b = d \;ia-yb=d\; ia−yb=d,至此即证。
2.辗转相减法
我们定义以下流程:
第一次迭代:
如果
a
≥
b
\;a\ge b\;
a≥b,则令
a
1
=
a
−
b
\;a_1=a-b\;
a1=a−b,
b
1
=
b
\;b_1=b\;
b1=b;
如果
a
<
b
\;a< b\;
a<b,则令
a
1
=
b
−
a
\;a_1=b-a\;
a1=b−a,
b
1
=
a
\;b_1=a\;
b1=a;
第二次迭代:
如果
a
1
≥
b
1
\;a_1\ge b_1\;
a1≥b1,则令
a
2
=
a
1
−
b
1
\;a_2=a_1-b_1\;
a2=a1−b1,
b
2
=
b
1
\;b_2=b_1\;
b2=b1;
如果
a
1
<
b
1
\;a_1< b_1\;
a1<b1,则令
a
2
=
b
1
−
a
1
\;a_2=b_1-a_1\;
a2=b1−a1,
b
2
=
a
1
\;b_2=a_1\;
b2=a1;
第三次迭代:
…
…
\dots\dots
……
如此一直迭代,直到
a
i
\;a_i\;
ai或
b
i
\;b_i\;
bi中有一个是
0
0
0 则停止。
因为
a
i
\;a_i\;
ai是随着迭代进行不断减小的,由于
a
\;a\;
a和
b
\;b\;
b的有限性,所以经过有限次的迭代最终总能终止。另一方面,设
d
\;d\;
d是
a
\;a\;
a和
b
\;b\;
b的最大公因数,则对于任意的
a
i
\;a_i\;
ai和
b
i
\;b_i\;
bi都是被
d
\;d\;
d整除的。而最后假设
a
k
\;a_k\;
ak是
0
\;0\;
0然后停止迭代了,则说明
a
k
−
1
=
b
k
−
1
≠
0
\;a_{k-1}=b_{k-1}\not=0\;
ak−1=bk−1=0,此时逆着推回去很容易证明
b
k
−
1
\;b_{k-1}\;
bk−1整除任意的
a
i
\;a_i\;
ai和
b
i
\;b_i\;
bi,于是
b
k
−
1
\;b_{k-1}\;
bk−1是
a
\;a\;
a和
b
\;b\;
b的公因数。综上可以知道
b
k
−
1
\;b_{k-1}\;
bk−1是
a
\;a\;
a和
b
\;b\;
b的最大公因数,这也即求最大公因数的一种方法。依然是吧以上的多次迭代的式子逆推回去,就可以得到用
a
\;a\;
a和
b
\;b\;
b的线性组合表示的
d
\;d\;
d。
3.归纳法
我们假设
a
+
b
≤
k
\;a+b\le k\;
a+b≤k时是成立的,并以此证明对于
a
+
b
=
k
+
1
\;a+b=k+1\;
a+b=k+1时是成立的。
首先对于
a
+
b
=
2
\;a+b=2\;
a+b=2时,
a
=
1
\;a=1\;
a=1,
b
=
1
\;b=1\;
b=1,命题是显然成立的。
证明对于
a
+
b
=
k
+
1
\;a+b=k+1\;
a+b=k+1时是成立的,不妨设
a
>
b
\;a>b\;
a>b,我们只需要证明有一种
a
\;a\;
a和
b
\;b\;
b的线性组合是
d
\;d\;
d,这等价于有一种
a
−
b
\;a-b\;
a−b和
b
\;b\;
b的线性组合是
d
\;d\;
d,而后面这个命题为满足
a
+
b
=
k
−
b
\;a+b=k-b\;
a+b=k−b的一个命题,由归纳假设易证。另外,上面如果
a
=
b
\;a=b\;
a=b,命题也是显然成立的。
贝祖定理逆定理的证明
内容
如果对于正整数
a
\;a\;
a、
b
\;b\;
b存在他们的一个线性组合等于
1
\;1\;
1,则他们互素。
这个内容乍一看不完整,因为上面的定理中还涉及到了最大公因数。不过上面这句话其实已经很完整了,换一种表述就是,
a
\;a\;
a、
b
\;b\;
b线性组合的最小值是他们的最大公因数。为了不赘述,因而只把它最关键的一步描述了出来。
证明
这个的证明很简单,不再提供更多的方法:
设
a
\;a\;
a、
b
\;b\;
b的最大公因数是
d
\;d\;
d,则根据上面的式子知道
d
\;d\;
d整除
1
\;1\;
1,所以最大公因数是
1
\;1\;
1,亦即互素。
总结
上面不是很严格的内容的演绎,没有从最根本上入手,只是相当于大致理解一下定理内容或关系