前言
为什么要写这篇文章?因为我逐渐发现,有些推导过程比较长的题目,如果对应当熟知的那些结论不够肯定,就会容易卡住。
这其实就是一个简单的概率问题,假设你对每一个结论都只有 0.8 的把握它是可信的,那么当你连续用了 10 个这样的结论的时候,你对自己的可信度就已经降到了 0.810=0.107。
所以我们能做的就是,确信自己使用的每一个公式、每一个定理都是完全正确的,做的每一步转化都是等价转化,没有漏掉任何一个边界,这样就能尽可能少地浪费时间。
本文不包括同余理论及后面内容,因为我主要把握不清的是前面的这些内容。
最小数原理
在开始叙述之前,为了更好地行文,我们先来说明一个符号约定:
-
设 α(x) 是关于 x∈E 的一个判断,那么用记号 (∃x∈E)(α(x)) 表示存在 x∈E 使得 α(x) 成立;
类似地,用 (∀x∈E)(α(x)) 表示对所有的 x∈E 都有 α(x) 成立。
后记:好像只有一开始使用了这个记号,因为之后的命题虽然内容多但是嵌套层数不是很多。
-
本文的自然数集 N 不包括 0。
原理 1:设 T 是 N 的一个非空子集,则 (∃t0∈T)(∀t∈T)(t0≤t),即 T 中存在一个最小的自然数。
本文为了简化行文,将其看作一个公理,不再向前追溯是否有比它更原始的公理了。
由此原理立刻可以推出下面的定理:
推论 1:设 S 是 Z 的非空子集,如果 (∃m∈Z)(∀s∈S)(s≤m),那么 (∃s0∈S)(∀s∈S)(s≤s0),即若 S 有上界则有最大整数。
证:令 T={m−s+1:∀s∈S},那么 T 非空并且是 N 的子集。
根据最小数原理,T 存在最小元素 t0=m−s0+1。
下面我们用反证法证明 (∀s∈S)(s≤s0)。
如果 (∃s1∈S)(s1>s0),那么 m−s1+1<m−s0+1。
也就是说,存在 t1=m−s1+1∈T,使得 t1<t0,这与 t0 是 T 的最小值矛盾。
因此 (∀s∈S)(s≤s0),原命题得证。
推论 2:设 S 是 Z 的非空子集,如果 (∃m∈Z)(∀s∈S)(s≥m),那么 (∃s0∈S)(∀s∈S)(s≥s0),即若 S 有下界则有最小整数。
证:同上。
数学归纳法
有两种数学归纳法,我们可以根据最小自然数原理给出它们的证明。
定理 1:设 P(n) 是关于自然数 n 的一个判断,如果:
- 当 n=1 时,P(n) 成立;
- 由 P(n) 成立可以推出 P(n+1) 成立,
那么 P(n) 对所有自然数 n 成立。
证:若不然,设 T 是 P(n) 不成立的 n 构成的集合。
由 T 非空可知,T 中有最小值 t0;由第一条要求可知,t0=1;由第二条要求可知,P(t0−1) 不成立。
那么 t0−1 应当也满足 t0−1∈T,这与 t0 是 T 中的最小值矛盾。
所以 T 必然为空集,即不存在自然数 n 使得 P(n) 不成立。
定理 2:设 P(n) 是关于自然数 n 的一个判断,如果:
- 当 n=1 时,P(n) 成立;
- n>1,若“所有满足 m<n 的自然数 m,都有 P(m) 成立”可以推出 P(n) 成立,
那么 P(n) 对所有自然数 n 成立。
证:同上。
整除与带余除法
定义 1:设 a,b∈Z,其中 b=0,如果 (∃q∈Z)(a=bq),称 b 整除 a,记作 b∣a。并将 b 叫做 a 的因数,a 叫做 b 的倍数。
我们可以从这个定义出发,推出一些简单地定理。
定理 1(传递性):若 a,b,c∈Z,其中 b,c=0,如果 c∣b,b∣a,那么 c∣a。
证:存在 q1,q2∈Z 使得 b=q1c,a=q2b,那么 a=q1q2c,即存在 q=q1q2∈Z 使得 a=qc。
定理 2:若 a,b,c∈Z,其中 a=0,如果 a∣b 且 a∣c,那么 (∀x,y∈Z)(a∣bx+cy)。
证:存在 q1,q2∈Z 使得 b=q1a,c=q2a,那么 ∀x,y∈Z,有 bx+cy=(xq1+yq2)a。
定理 3:若 a,b∈Z,其中 a=0,那么 a∣b 与 a∣∣b∣,∣a∣∣b,∣a∣∣∣b∣ 等价。
证:分类讨论 a,b 符号即可。
定理 4:若 a,b∈Z,其中 b>0,那么存在唯一的 q,r 使得 a=bq+r,其中 q∈Z,r∈Z∩[0,b)。
证:存在性:设集合 R={a−bq:∀q∈Z,a−bq≥0},易知 R 非空。
由最小自然数原理的推论可知,R 中存在最小元素 r0,设 r0=a−bq0。
若 r0≥b,那么 r0−b=a−b(q0+1)≥0 且满足 a−bq 的形式。
于是 r0−b<r0 且 r0−b∈R,这与 r0 的最小性矛盾。
所以存在 q0∈Z,r0∈Z∩[0,b) 使得 a=bq0+r0。
唯一性:设 r0,q0 和 r1,q1 都满足条件,那么 bq0+r0=bq1+r1。
移项,有 r0−r1=b(q1−q0)。
因为 r0−r1∈(−b,b)∩Z,其中 b 的倍数只有 0,所以 r0−r1=0 且 q1−q0=0。
最大公因数
定义 1:设 a,b 是不全为 0 的整数,用 D(a,b) 表示 a,b 的公因数组成的集合。
我们后面可以通过证明两对整数的 D 集合相等来证明它们的公因数相等。
引理 1:设 a,b 是不全为 0 的整数,D(a,b)=D(∣a∣,∣b∣)。
证:设 d∣a,d∣b 由上一节的定理 3 可知,d∣a 且 d∣b 等价于 d∣∣a∣ 且 d∣∣b∣,于是这两个集合相等。
我们今后不妨只讨论非负整数的公因数。
引理 2:设 a,b 是不全为 0 的非负整数,则 D(a,b) 中存在最大值。
证:由 1∣a 且 1∣b 知 D(a,b) 非空。
不妨设 a>0,任取 d∈D(a,b),有 ∣d∣∣a,那么存在 q∈Z 使得 a=q∣d∣。
显然 q=0,那么 q≥1,于是 a=q∣d∣≥∣d∣。
所以 d≤∣d∣≤a,即 D(a,b) 有上界,由最小自然数原理的推论可知 D(a,b) 中存在最大值。
定义 2:设 a,b 是不全为 0 的整数,记 (a,b)=maxD(a,b)。
这个定义和顺序无关,所以根据定义就有 (a,b)=(b,a),下面我们来证明一些关于最大公因数的定理。
定理 1:设 b 是正整数,那么 (0,b)=b。
证:由引理 2 知,任取 d∈D(0,b),都有 d≤b,那么 b∣0,b∣b,可知 b∈D(0,b),于是 (0,b)=b。
定理 2:设 a,b,q∈Z 且 b=0,那么 (a,b)=(a+qb,b)
证:任取 d∈D(a,b),由上一节定理 2 可知 d∈D(a+qb,b),反之也成立,则 D(a,b)=D(a+qb,b),所以 (a,b)=(a+qb,b)。
定理 3(裴蜀定理):设 a,b 是不全为 0 的整数,存在一组 x,y∈Z 使得 xa+yb=(a,b)。
证:根据引理 1,不妨设 a≥b≥0,那么 a=0。
如果 b=0,那么由定理 1 知 (a,b)=1a+0b,满足条件;
如果 b=0,那么用 b 除 a 得到 a=qb+r,由定理 2 知 (a,b)=(r,b)=(b,r),其中 b>r。
令 a0=a,b0=b 并且 a1=b,b1=r,重复上述过程,每一次 ai,bi 中的较小值都会严格减小,一定在有限次内满足 bi=0。
下面我们来用递推的方式构造出一组 x,y,假设已知 (an,bn)=xnan+ynbn。
由我们的操作方式可知,an=bn−1,bn=rn−1,其中 an−1=qn−1bn−1+rn−1,那么:
(an−1,bn−1)=(an,bn)=xnan+ynbn=xnbn−1+ynrn−1=xnbn−1+yn(an−1−qn−1bn−1)=ynan−1+(xn−ynqn−1)bn−1
所以令 xn−1=yn,yn−1=xn−ynqn−1 即可,这样重复下去一定能得到第一组 x0,y0 满足 (a,b)=x0a+y0b。
推论 1:设 a,b 是不全为 0 的整数,d 是非零整数,则 d∣a 且 d∣b 等价于 d∣(a,b)。
证:根据裴蜀定理,存在一组 x,y 使得 xa+yb=(a,b)。
那么 d∣a 且 d∣b 能够推出 d∣(xa+yb),即 d∣(a,b);反之,由最大公因数的定义,(a,b)∣a 且 (a,b)∣b,由整除的传递性可知 d∣(a,b) 则 d∣a 且 d∣b。
推论 2:设 a 是非零整数,b 是整数,若 (a,b)=1,则 a∣bc 等价于 a∣c。
证:若 a∣c 显然有 a∣bc,反之,若 a∣bc,
根据裴蜀定理,存在一组 x,y 使得 xa+yb=1,那么 c=c(xa+yb)=a(xc)+(bc)y。
那么由 a∣a(xc) 和 a∣(bc)y 就可以推出 a∣c。
定理 4:设 a,b 是不全为 0 的整数,m 是正整数,则 (ma,mb)=m(a,b)。
证:若 a,b 存在一个 0 显然成立,根据引理 1,下面不妨设 a,b 都是正整数。
-
证 (ma,mb)∣m(a,b)。
根据公因数的定义,我们有 (ma,mb)∣ma 且 (ma,mb)∣mb。
又因为 m∣ma,m∣mb,根据推论 1,这等价于 m∣(ma,mb)。
于是根据整除的定义,有 m(ma,mb)∣a 且 m(ma,mb)∣b。
根据推论 1,这等价于 m(ma,mb)∣(a,b)。
再根据整除的定义,有 (ma,mb)∣m(a,b)。
-
证 m(a,b)∣(ma,mb)。
根据公因数的定义,我们有 (a,b)∣a 且 (a,b)∣b。
根据整除的定义,我们有 m(a,b)∣ma 且 m(a,b)∣mb。
根据推论 1,有 m(a,b)∣(ma,mb)。
又因为 m(a,b) 和 (ma,mb) 均是正数,它们相互整除,根据整除的定义容易得到它们相等。
推论 3:设 a,b 是不全为 0 的整数,((a,b)a,(a,b)b)=1。
证:设 (a,b)=((a,b)(a,b)a,(a,b)(a,b)b)=(a,b)((a,b)a,(a,b)b),又因为 (a,b)≥1,两边约掉 (a,b) 即可。
推论 4:设 a 是非零整数,b 是整数,则 a∣bc 等价于 (a,b)a∣c。
证:由定义可以得到 a∣bc 等价于 (a,b)a∣(a,b)bc,由推论 2 知这等价于 (a,b)a∣c。
素数与算术基本定理
定义 1:设 p≥2,p∈N,若 p 的正因数只有 1 和 p,称 p 为素数,否则称为合数。
注意,进入这一章节,我们大部分的内容只关注正整数。
定理 1:若 a≥2,a∈N,则 a 除了 1 以外的最小正因数是素数。
证:设这个数是 d,若 d 是合数,那么 d 存在一个更小的非 1 正因数 e 满足 e∣d,又因为 d∣a,则 e∣a,其中 1<e<d,这与 d 的最小性矛盾。
定理 2:设 p 为素数,a∈N,则要么 (a,p)=1,要么 p∣a。
证:由最大公因数的定义,(a,p)∣p。
由素数的定义, (a,p) 只能为 1 或者 p。
若 (a,p)=p,根据公因数的定义,可以推出 p∣a;若 p∣a,又因为 p∣p,所以 p∈D(a,p)。又因为 (a,p) 只能取 1 或 p,所以 (a,p)=p。
若 (a,p)=1,则 p∣a(若不然,可以推出 (a,p)=p);若 p∣a,则 (a,p)=1(若不然,可以推出 p∣a)。
推论 1:设 p 为素数,a∈N,若 p∣ab 则 p∣a 或 p∣b。
证:我们只需要证明这两个命题不同时为假即可。
若 p∣a,则 (a,p)=1,由上一节的推论 2 可知 p∣ab 可以推出 p∣b。
定理 3(算术基本定理):设 n≥2,n∈N,则 n 存在唯一素因子分解。
证:存在性,这里使用第二种数学归纳法。
当 n=2 时,n=21 是一个素因子分解式。
当 n>2 时,由定理 1 可知 n 存在一个最小素因数 p。如果 n=p,那么 p 就是一个素因子分解;如果 n=p,那么若 pn<n 存在素因数分解 p1p2…pk,可以推出 n 能被分解成 p×p1p2…pk。
唯一性,这里是一个构造性的证明方法。
当 n=2 时,n=21 就是唯一的素因子分解。
当 n>2 时,设 n=p1p2…pk=q1q2…qm,其中所有的 pi,qj 都是素数。
那么 n 由最小素因数 pi,由 pi∣q1q2…qm 结合推论 1 知存在一个 qj 使得 pi∣qj。
又因为 qj 是素数,且 pi=1,那么 pi=qj。
两边除掉 pi 和 qj,得到一个 n′=n/pi,它也有这两种素因数分解式,按照上述流程一直处理下去可以得到每一个 pi 都有对应的 qj,并且 k=m(若不然,可推出某些素数乘积等于 1)。
定义 2:设 a≥2,a∈N,则根据算术基本定理有 a=p1k1p2k2…pmkm,定义 Vp(a):若存在 pi=p,则 Vp(a)=ki;否则 Vp(a)=0。特别地,对所有的 p,都有 Vp(1)=0。
简单地说 Vp(a) 就是 a 分解之后 p 对应的那个指数,当它为 0 时 p0=1 也是恰当的。
推论 2:设 a,b∈N,则 (a,b)=∏ppmin{Vp(a),Vp(b)}。
证:令 g=∏ppmin{Vp(a),Vp(b)},由整除的定义易知 g∈D(a,b)。
取正因子 d∈D(a,b),则 ∀p,Vp(da)=Vp(a)−Vp(d)≥0,同理 ∀p,Vp(d)≤Vp(b),那么 ∀p,Vp(d)≤min{Vp(a),Vp(b)}。
因此 ∀p,Vp(d)≤Vp(g),那么根据整除的定义易知 d∣g,于是 d≤g,则 g 是 D(a,b) 中的最大值,即 g=(a,b)。