数论概论笔记 第7章 因数分解与算数基本定理

来源:互联网 发布:广电网络维护员 编辑:程序博客网 时间:2024/04/30 06:14

素数定义:如 p ≥ 2 且p只能被1或自身整除,则p为素数。

断言7.1 令 p 是素数,如 p 整除乘积 ab,则 p 整除 a 或 p 整除 b

证明如下:

如 p 整除 a,则命题成立;

如 p 不整除 a,则有 gcd(a, p) = 1;

根据第6章的定理,可得方程

ax + py = gcd(a, p) = 1;

abx + pby = b;

已知 p 可整除 ab、bp ,则 p 必整除 b;

即 a, b 中至少有一个可被 p 整除。证明完毕。


定理7.2 (素数整除性质):假设素数 p 整除乘积 a1 * a2 ……ar,则 p 整除 a1, a2, ……ar 中至少一个因数。

证明:

如 p 整除 a1,命题成立;

如 p 不整除 a1,由断言7.1 可知 p 整除

a2 * a3 ……  * ar;

继续此过程,最终必有 p 整除某个 ai,即p 整除 a1, a2, ……ar 中至少一个因数。证明完毕。


定理7.3(算数基本定理):每个整数 n ≥ 2 可唯一分解为素数乘积

n = p1 * p2 …… pr。

证明如下:

现证明数n可以以某种方式分解成素数乘积。证明如下:

当n = 2, n = 3, n = 4 时,有

n = 2, n = 3, n = 4 = 2 * 2,命题成立;

设当 n ≤ N 时,命题成立;

当 n = N + 1 时,

如 N + 1 为素数,命题成立;

如 N + 1 为合数,有 N + 1 = n1 * n2,n1 ≤ N,n2 ≤ N;

则 n1, n2 可分解为素数乘积,

其积 N + 1 必可分解成素数乘积,命题成立;

现证明仅有一种这样的因数分解。证明如下:

设 n 有两种分解形式,即

n = p1 * p2* …… *pr,   n = q1 * q2 *……*qs;

则有 p1 整除 n,,即 p1 整除 q1 * q2 *……*qs;

由定理7.2可知,p1 整除 qn 中的某因子,设该因子为 q1;

因为 q1 为素数,则 p1 = q1;

消去 p1, q1,得

p2 * p3* …… *pr = q2 * q3 *……*qs;

继续该过程,最终消去所有 pi 或 所有 qi;

此时等式两边为1,即 {pr} 与 {qs} 的元素个数相同;

又因为两数列元素两两相等,则 {pr} = {qs},即 n 的分解形式唯一。证明完毕。

void resolve(int n){int cnt = 0, m = sqrt(n) + 2;for (int i = 2; i <= m; i += 2){if (n % i == 0){while (n / i == 0){factor[cnt]++;n /= i;}cnt++;}if (i == 2)i--;}if (n != 1)factor[cnt++] = n;}


原创粉丝点击