分享丨【数论概论】第五部分
356
2024.05.11
2024.05.13
发布于 浙江
  1. 第九章 同余式、幂与费马小定理

    1. 习题9.1
    2. 习题9.2
    3. 习题9.3
    4. 习题9.4
  2. 第十章 同余式、幂与欧拉公式

    1. 习题10.1
    2. 习题10.2
    3. 习题10.3
  3. 第十一章 欧拉函数与中国剩余定理

    1. 习题11.1
    2. 习题11.2
    3. 习题11.3
    4. 习题11.4
    5. 习题11.5
    6. 习题11.6
    7. 习题11.7
    8. 习题11.8
    9. 习题11.9
    10. 习题11.10
    11. 习题11.11
    12. 习题11.12
    13. 习题11.13
  4. 代码-乘法快速幂

  5. 代码-解同余式

  6. 其他

第九章 同余式、幂与费马小定理

习题9.1

​ 利用费马小定理求解下述题目。

  • (a) 求数 ,使得 .
  • (b) 解
  • (c) 解

(a)
(b)
(c) 无解

习题9.2

​ 虽然我们不需要知道 的值,但是 出现在费马小定理的证明中。

  • (a) 对某些小的 值,计算 ,找出模式并提出猜想
  • (b) 证明你的猜想是正确的。(对小的 值,试寻找 产生这种数值的原因,然后推广你的观察,证明结论对所有 成立。)

(a)

(b) 证:。可先证下面三个结论,即可得证。当 为奇素数时,满足:

习题9.3

​ 当 是素数时,习题9.2要求你确定 的值。

  • (a) 对某些小的合数m的值,计算 。你能得到对素数所发现的相同模式吗?
  • (b) 如果已知的值,如何使用这个值明确判断 是合数还是素数?

答: 是合数,则 一定可以表示为 的形式,而必然包含,由此可知.

习题9.4

​ 如果 是素数,,则由费马小定理可知 .

  • (a) 同余式 成立,你能得到​是合数的结论吗?
  • (b) 同余式 成立,你能得到​是合数的结论吗?
  • (c) 同余式 成立,你能得到是素数的结论吗?

答:若 是素数,,则 .其逆否命题为:
若存在 满足 ,则 ​ 一定是合数。
(a) 可以确定1734251是合数 (b) 可以确定64027是合数 (c) 52633有可能是素数,也有可能是合数

第十章 同余式、幂与欧拉公式

习题10.1

​ 设 之间且与 互素的整数(包括 ), 是他们的乘积。 来自于欧拉公式的证明。

  • (a) 证明
  • (b) 对某些小的 值计算 , 试寻找当它等于 时的模式。

(a) 1. 由可知,存在 使得 ,同样可证明,即 ,也可用反证法证明当时,. 现从集合中去除的元素,并令的解 可构成一对 ,得.

  1. ,可令​构成一对。
  2. 为奇数时,显然不存在 ,当 为偶数时,显然,即(2)中所述的数对不存在 的情形。

(b)

猜想:的解的个数为 的倍数时,值为 ,否则为 。(a) 中已给出证明。

那什么时候解的个数为 的倍数呢?说下发现,质因数至多只能提供四个解,
其余奇质因数最多只能提供两个解。描述:若 为合数,的解的个数​个。暂无法给出证明。

习题10.2

​ 可以验证数 满足 .求满足下述三个性质的数

  • (i)
  • (ii)
  • (iii) 不被 整除。

答:

习题10.3

​ 如果对每个整数 ,同余式 成立,则称合数是卡米歇尔数。

  • (a) 验证 是卡米歇尔数。(提示:不必对 的所有320个值计算 ,而是使用费马小定理验证对整除 的每个素数 ,有 ,然后解释为什么这蕴含 .)
  • (b) 试求另一个卡米歇尔数。你认为存在无穷多个卡米歇尔数吗?

(a)

结论:若
证:

(b)

第十一章 欧拉函数与中国剩余定理

习题11.1

​ (a) 求 的值。
​ (b) 求 的值。

(a) .
(b)

习题11.2

​ (a) 如果 ,解释为什么 总是偶数。
​ (b) “经常” 被 整除。叙述 不被 整除的所有 .

(a) 为质数, 为偶数, 为质数时 为偶数。

(b) ,p为质数

习题11.3

​ 假设 是整除 的不同素数。证明 的下述公式成立。

使用这个公式计算 .

习题11.4

​ 编写程序计算欧拉公式 的值。应该使用 的素因数分解来计算 ,而不是通过求与 互素的 之间的所有 来计算 .

略。可使用习题11.3的结论来简化计算。1. 找出 的所有质因子,2. 初始化 ,3. 对每个不同的质因子 执行 的操作。

习题11.5

​ 对每个同余式组求其解 .

  • (a)
  • (b)
  • (c)

(a)

(b)

(c)

注:上述计算来自中国剩余定理。

证明:

观察其中某一项 可得知,该项满足 ,对于 均有. 因此该式确为原方程的解。

习题11.6

​ 解“历史插曲”提到的《孙子算经》中已有1700年历史的中国剩余问题。

习题11.7

​ 一个农夫在去集市的路上,流星打中了他的小货车,击碎了他的鸡蛋,为申请保险索赔,他需要知道打碎了多少鸡蛋。他知道两两数之于一,三三数之余一,四四数之余一,五五数之余一,六六数之余一,七七数之余零。问小货车里鸡蛋的最少个数是多少?

简化计算,利用上一章习题中的推论:若 ,则有
将该结论做个引申:若 ,则有 ​。
则该题化简为:,可得.

证明:

习题11.8

​ 编写程序,取四个整数 作为输入,计算满足

的整数解。

见代码部分。

习题11.9

​ 在本习题中将证明三个同余式的中国剩余定理,设 是两两互素的正整数,即

是任意三个整数。证明同余式组

在区间 恰有一个整数解。你能找出将这个问题推广到处理多个同余式

的模式吗?特别的 需要满足什么条件呢?

答:由中国剩余定理可知 上恰有一解,记为 ,又 ,可知,在 上恰有一解。即原方程在 恰有一个整数解。

模式:如习题11.5中所提。

习题11.10

​ 若 是素数,你能说出 有什么模式吗?如果 是素数的平方, 有满足什么模式呢?

答:由习题11.2可知,当 ​ 时,​ 总是偶数。因此:
(i) 若 ​ 是素数,则
(ii) 如果 ​ 是素数的平方,则

习题11.11

​ (a) 求 的至少5个不同整数。你能求出更多吗?

​ (b) 假设整数 满足 。列出可能整除 的所有素数。

​ (c) 由(b) 求出所有满足 的所有整数。

(a) 答:

(b)(c) 答:

挺多的,就是排列组合。两组之间不能构造出相同的数即可。

习题11.12

​ 解下述方程,求 的所有值。

  • (a) .
  • (b)
  • (c)

(a)
(b)
(c) ,若原式有解,则必然存在 ,经验证时均不是方程的解。

习题11.13

​ (a) 对每个整数 ,求 的最末四位数。
​ (b) 基于 (a) 的试验(如果有必要的话,进一步试验),给出一种简单判别法,使得可由 的值预测 的最末四位数。
​ (c) 证明 (b) 中你的判别法是正确的。

答:

(i) 使用快速幂计算可得 的计算只能硬算,其余可省略。
(ii)
(iii) 时,
,于是
(iv) 令,则

代码-乘法快速幂

Java
public int qpow(int x, int n, int m){
    long t = 1, r = x;
    while(n > 0){
        if(n % 2 == 1) t = t * r % m;
        r = r * r % m;
        n >>= 1;
    }
    return (int) t;
}

代码-解同余式

Java
public Pair<Boolean, Integer> remainder(int b, int m, int c, int n){
    //欧几里得扩展法
    int[] g = _gcd(m, n);
    //不互质时,返回false,与最大公约数,代表无确定解,不代表无解
    //不互质时,可能无解,也可能有多个解
    if (g[2] > 1) return new Pair<>(false, g[2]);
    int r = (n * g[1] * b + m * g[0] * c) % (m * n);
    if(r < 0) r += m * n;
    return new Pair<>(true, r);
}

其他

  1. 数论概论第一部分
  2. 数论概论第二部分
  3. 数论概论第三部分
  4. 数论概论第四部分
  5. 数论概论第六部分
评论 (0)