初等数论简明教程

初等数论简明教程

本文给出初等数论中的一些重要的定理与例题,证明风格采用 整除线法 与 命题节点法。

整除线法 指推理的第 nnn 步左边的字符可由前面左边的字符得到,右边的字符可由前面右边的字符得到,整除线变成了推理线,既少写了很多字,又对下一步推理有一定提示作用。


公共约定

  • A={a1,a2,...,an}=ajA = \{a_1, a_2, ..., a_n\} = a_jA={a1,a2,...,an}=aj
  • L=[a1,a2,...,an]=[aj]L = [a_1, a_2, ..., a_n] = [a_j]L=[a1,a2,...,an]=[aj] (最小公倍数)
  • D=(a1,a2,...,an)=(aj)D = (a_1, a_2, ..., a_n) = (a_j)D=(a1,a2,...,an)=(aj) (最大公约数)
  • rrr:余数
  • f(aj)f(a_j)f(aj):集合 AAA 所有元素均符合 f(aj)f(a_j)f(aj)
  • L′L'L:公倍数
  • ddd:公约数
  • {Pn}\{P_n\}{Pn}:素数列 2,3,5,7,11,13,...2,3,5,7,11,13,...2,3,5,7,11,13,...
  • n=p1α1p2α2...ptαtn = p_1^{\alpha_1} p_2^{\alpha_2} ... p_t^{\alpha_t}n=p1α1p2α2...ptαt

这些约定是本文的默认约定,优先级弱于具体题目中的约定。


约定

  • a∣s1a \mid s_1as1
    ∣s2\quad \mid s_2s2aaa 同时整除 s1s_1s1s2s_2s2
  • a∣a \mida
    b∣sb \mid sbsaaabbb 都整除 sss
  • a,b⇒ca, b \Rightarrow ca,bcaaabbb 推出 ccc

定理1:公倍数是最小公倍数的倍数

aj∣L′⟺L∣L′a_j \mid L' \iff L \mid L'ajLLL

证明

⇐\Leftarrow
  1. L∣L′⇒L′=kLL \mid L' \Rightarrow L' = kLLLL=kL
  2. L=qjajL = q_j a_jL=qjaj
  3. L′=kqjaj⇒aj∣L′L' = k q_j a_j \Rightarrow a_j \mid L'L=kqjajajL
⇒\Rightarrow
  1. L′=qL+rL' = qL + rL=qL+r
  2. aj∣L′a_j \mid L'ajL
    ∣L\quad \mid LL
    ∣r<L\quad \mid r < Lr<L
    ∣r=0\quad \mid r = 0r=0
  3. L∣L′L \mid L'LL

定理2:公约数是最大公约数的约数

d∣aj⟺d∣Dd \mid a_j \iff d \mid DdajdD

证明

⇐\Leftarrow
  1. d∣D⇒D=kdd \mid D \Rightarrow D = k ddDD=kd
  2. aj=qjDa_j = q_j Daj=qjD
  3. aj=qjkd⇒d∣aja_j = q_j k d \Rightarrow d \mid a_jaj=qjkddaj
⇒\Rightarrow
方法1
  1. D=a1x1+a2x2+...+akxk(裴蜀定理)D= a_1x_1+a_2x_2+...+a_kx_k (裴蜀定理)D=a1x1+a2x2+...+akxk(裴蜀定理)
  2. d∣Dd|DdD
方法2
  1. : L=[d,D]→L≥DL=[d,D] → L ≥ DL=[d,D]LD
  2. 对L=D和L>D分类讨论对 L = D 和 L > D 分类讨论 L=DL>D分类讨论
    2.1 L=D→d∣D(可以)L=D → d\mid D (可以) L=DdD(可以)
    2.2 L>D(排除这种情况)L>D (排除这种情况) L>D(排除这种情况)
    d∣aj∧D∣aj→L∣aj→L≤D(矛盾)d |a_j \land D |a_j → L |a_j → L ≤ D (矛盾) dajDajLajLD(矛盾)

定理3:m(a1,...,ak)=(ma1,...,mak)=m(a_1, ..., a_k) = (ma_1, ..., ma_k)=m(a1,...,ak)=(ma1,...,mak)=


  • d=(a1,...,ak)d=(a_1, ..., a_k)d=(a1,...,ak)
  • D=(ma1,...,mak)D=(ma_1, ..., ma_k)D=(ma1,...,mak)

则:
D∣majD \mid ma_jDmaj
Dm∣aj⇒Dm≤d\dfrac{D}{m} \mid a_j \Rightarrow \dfrac{D}{m} \leq dmDajmDd
d∣aj\quad d \mid a_jdaj
md∣majmd \mid ma_jmdmaj
∣D⇒md≤D\quad \quad \mid D \Rightarrow md \leq DDmdD


定理4:m[a1,...,ak]=[ma1,...,mak]m[a_1, ..., a_k] = [ma_1, ..., ma_k]m[a1,...,ak]=[ma1,...,mak]


  • L′=[a1,...,ak]L'=[a_1, ..., a_k]L=[a1,...,ak]
  • L=[ma1,...,mak]L=[ma_1, ..., ma_k]L=[ma1,...,mak]

则:
maj∣Lma_j \mid LmajL
aj∣Lm⇒L′≤Lm\quad a_j \mid \dfrac{L}{m} \Rightarrow L' \leq \dfrac{L}{m}ajmLLmL
∣L′\quad \quad \mid L'L
maj∣mL′⇒L≤mL′ma_j \mid mL' \Rightarrow L \leq mL'majmLLmL


定理5:裴蜀定理

S={s∣s>0∧s=a1x1+a2x2+⋯+akxk}S = \{ s \mid s > 0 \land s = a_1 x_1 + a_2 x_2 + \cdots + a_k x_k \}S={ss>0s=a1x1+a2x2++akxk},则

D=(a1,...,ak)=min⁡SD = (a_1, ..., a_k) = \min S D=(a1,...,ak)=minS

  • s0=min⁡Ss_0 = \min Ss0=minS
  • D∣aj⇒D∣s0D \mid a_j \Rightarrow D \mid s_0DajDs0
  • aj=qjs0+rj⇒rj∈S∧rj<s0⇒rj=0⇒s0∣aj⇒s0∣Da_j = q_j s_0 + r_j \Rightarrow r_j \in S \land r_j < s_0 \Rightarrow r_j = 0 \Rightarrow s_0 \mid a_j \Rightarrow s_0 \mid Daj=qjs0+rjrjSrj<s0rj=0s0ajs0D

定理6:一次同余方程

参见 电枢公式

一次同余方程 ax≡b(modn)ax \equiv b \pmod naxb(modn) 有解的充要条件是 a0∣ba_0 \mid ba0b,此时恰有 a0a_0a0 个关于模 nnn 不同余的解。

其中 a0=(n,a)a_0 = (n, a)a0=(n,a)∣a∣=n/a0|a| = n / a_0a=n/a0

证明

  • x0x_0x0 是方程的一个特解,则 x=x0+t∣a∣x = x_0 + t|a|x=x0+tat=0,1,...,a0−1t = 0, 1, ..., a_0-1t=0,1,...,a01)也是解。
  • t≥a0t \geq a_0ta0 会导致模 nnn 同余的解重复。
  • 因为绕法 aaa,绕 ∣a∣|a|a 次会第一次回到起点,所以 a(x0+∣a∣t)≡b(modn)a(x_0 + |a| t) \equiv b \pmod na(x0+at)b(modn)

注意:

  • ax≡b(modn)ax \equiv b \pmod naxb(modn) 等价于 ax−b=nyax - b = nyaxb=ny
  • 可用辗转相除法找到 x′,n′x', n'x,n 满足方程。

一次同余方程的规律

  1. 解的个数为最小绕数 a0a_0a0
  2. 解就是与阶同绕的可达点,向右偏移最小特解。
  3. 如果有解,则 [0,∣a∣)[0, |a|)[0,a) 中一定存在唯一一个最小特解,特别当 aaa 是全达绕法时,0∼n−10 \sim n-10n1 一定存在一个唯一特解。
  4. 方程有解,bbb 只能取 aaa 的可达点。
  5. 方程 ax+by=cax + by = cax+by=c 的一个特解为 cd(x0,y0)\frac{c}{d}(x_0, y_0)dc(x0,y0),其中 d=(a,b)d = (a, b)d=(a,b)(x0,y0)(x_0, y_0)(x0,y0) 可通过如下方式得到:

(ab1001)→列变换(d0x0s0y0t0)\begin{pmatrix} a & b \\ \hline 1 & 0 \\ 0 & 1 \end{pmatrix} \xrightarrow{列变换} \begin{pmatrix} d & 0 \\ \hline x_0 & s_0 \\ y_0 & t_0 \end{pmatrix} a10b01列变换dx0y00s0t0

(x0,y0,s0,t0,d)(x_0, y_0, s_0, t_0, d)(x0,y0,s0,t0,d) 满足:

  1. (a,b)=d(a, b) = d(a,b)=d
  2. ax0+by0=d⟹a(cdx0)+b(cdy0)=ca x_0 + b y_0 = d \implies a \left( \frac{c}{d} x_0 \right) + b \left( \frac{c}{d} y_0 \right) = cax0+by0=da(dcx0)+b(dcy0)=c
  3. as0+bt0=0a s_0 + b t_0 = 0as0+bt0=0
  4. (xy)=(x特y特)+k(s0t0)\begin{pmatrix} x \\ y \end{pmatrix} = \begin{pmatrix} x_{特} \\ y_{特} \end{pmatrix} + k \begin{pmatrix} s_0 \\ t_0 \end{pmatrix}(xy)=(xy)+k(s0t0),其中 (x特,y特)=cd(x0,y0)(x_{特}, y_{特}) = \frac{c}{d}(x_0, y_0)(x,y)=dc(x0,y0)

例1

求解 8x≡4(mod 12)

本该约去公因数4,但为说明解的个数,所以不这么做,|8|=3 从0~3 试根

x0=2为其特解,8的最小饶数为4,阶是3,所以其非同余特解有4个,

为2+30,2+31,2+32,2+33

2,5,8,11

例2

解方程14x+105y=49

对矩阵解法稍做优化,下面两个列变换可以写到一起,节约纸张(2个连续列变换可写在一起)

14 105

1 0

0 1

--------------c2-7c1---------------------

 7-71

--------------c1-2c2---------------------

0

15

-2


(141051001)∼(0715−7−21)\begin{pmatrix} 14 & 105 \\\\ 1 & 0 \\\\ 0 & 1 \end{pmatrix} \sim \begin{pmatrix} 0 & 7 \\\\ 15 & -7 \\\\ -2 & 1 \end{pmatrix} 1410105010152771

==> (x0,y0,s0,t0,d)=(−7,1,15,−2,7)(x_0, y_0, s_0, t_0, d) = (-7, 1, 15, -2, 7)(x0,y0,s0,t0,d)=(7,1,15,2,7)

(x特,y特)=cd(x0,y0)=497(−7,1)(x_{\text{特}}, y_{\text{特}}) = \frac{c}{d}(x_0, y_0) = \frac{49}{7}(-7, 1)(x,y)=dc(x0,y0)=749(7,1)

可以观察发现如果仅仅是为了解方程,第二个列变换是可以省略的,一个列变换就得到了 (d,x0,y0)(d, x_0, y_0)(d,x0,y0)

例题

例1:(am−1,an−1)=a(m,n)−1(a^m - 1, a^n - 1) = a^{(m,n)} - 1(am1,an1)=a(m,n)1


(m,n)=d=km−sn(m,n)=d=km-sn(m,n)=d=kmsn
(am−1,an−1)=D(a^m - 1, a^n - 1) = D(am1,an1)=D

证明:

ad−1∣a(m,n)−1∣am−1∣an−1∣Da^d - 1 \mid a^{(m,n)} - 1 \\ \quad\quad\quad \mid a^m - 1 \\ \quad\quad\quad \mid a^n - 1 \\ \quad\quad\mid D ad1a(m,n)1am1an1D

D∣am−1∣an−1∣ans−1⇒(ns,D)=1∣akm−1∣akm−ans∣ans(akm−ns−1)∣ans(ad−1)∣ad−1D\quad\quad \mid a^m - 1 \\ \quad\quad\quad \mid a^n - 1 \\ \quad\ \quad\ \quad\ \quad\ \quad\quad \quad\quad\quad \mid a^{ns} - 1\Rightarrow(ns,D)=1 \\ \quad\quad\quad\quad \mid a^{km} - 1 \\ \quad\quad\quad\quad\quad \mid a^{km} - a^{ns} \\ \quad\quad\quad\quad\quad\quad\quad\quad \mid a^{ns}(a^{km-ns}-1) \\ \quad\quad\quad\quad\quad\quad \mid a^{ns}(a^d-1) \\ \quad\quad\quad\quad \mid a^d-1 Dam1an1    ans1(ns,D)=1akm1akmansans(akmns1)ans(ad1)ad1

例2:m>1⟹m∤2m−1m > 1 \implies m \nmid 2^m - 1m>1m2m1

证明思路:

  1. pppmmm 的最小素因子
  2. (m,p−1)=1(m, p-1) = 1(m,p1)=1

m∣2m−1(假设)p∣2m−1(P1)∣2p−1−1(欧拉公式)∣2(m,p−1)−1(例1)∣1⟹p=1(P3假设错误)m \mid 2^m-1 \quad (假设) \\ p \mid 2^m-1 \quad (P1) \\ \quad\quad\quad\quad \mid 2^{p-1}-1 \quad (欧拉公式) \\ \quad\quad\quad \mid 2^{(m,p-1)}-1 \quad (例1) \\ \quad\quad\quad\quad\quad\quad\quad \mid 1 \implies p=1 \quad (P3假设错误) m2m1(假设)p2m1(P1)2p11(欧拉公式)2(m,p1)1(1)1p=1(P3假设错误)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/91404.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/91404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring之核心容器(IoC,DI,基本操作)详解

Spring之核心容器IoC/DI/基本操作详解一、核心概念&#xff1a;IoC与DI的本质1.1 IoC&#xff08;Inversion of Control&#xff0c;控制反转&#xff09;传统开发模式&#xff08;无IoC&#xff09;IoC模式&#xff08;Spring容器管理&#xff09;1.2 DI&#xff08;Dependenc…

【论文阅读】基于注意力机制的冥想脑电分类识别研究(2025)

基于注意力机制的冥想脑电分类识别研究&#x1f4a1; Meta DataTitle基于注意力机制的冥想脑电分类识别研究Authors周梓涵Pub. date2025&#x1f4dc; Research Background & Objective背景&#xff1a; 现代生活压力导致心理问题日益突出&#xff0c;冥想作为一种有效的心…

GitHub 上 Star 数量前 8 的开源 Web 应用项目

原文链接&#xff1a;https://www.nocobase.com/cn/blog/github-open-source-web-applications。 近期&#xff0c;我们发布了多篇「Top GitHub Star 开源项目推荐」系列文章&#xff0c;受到了大量点赞与收藏&#xff0c;很多开发者留言表示希望能看到更多不同领域的开源工具推…

FATFS文件系统原理及其移植详解

一、FATFS简介 FATFS 是一个完全免费开源的 FAT/exFAT 文件系统模块&#xff0c;专门为小型的嵌入式系统而设计。它完全用标准 C 语言&#xff08;ANSI C C89&#xff09;编写&#xff0c;所以具有良好的硬件平台独立性&#xff0c;只需做简单的修改就可以移植到 8051、PIC、A…

KubeRay 和 Ray

KubeRay 和 Ray 不是替代关系&#xff0c;而是互补的协作关系。两者在分布式计算生态中扮演不同角色&#xff0c;共同构成完整的云原生 AI 解决方案。以下是具体分析&#xff1a;&#x1f527; 1. 核心定位差异Ray 是分布式计算引擎&#xff0c;提供底层 API&#xff08;如 ray…

破解轮胎仓储高密度与柔性管理难题

轮胎作为特殊的大件异形工业品&#xff0c;其仓储管理长期面临多重挑战&#xff1a;规格型号繁杂导致SKU数量庞大&#xff0c;重型载重对货架承重提出极高要求&#xff0c;橡胶材质对防压变形、避光防老化等存储环境存在严苛标准。传统平置堆垛或普通货架方案不仅空间利用率不足…

EVA series系列(上)

目录 一、EVA 1、概述 2、方法 二、EVA-02 1、概述 2、架构 三、EVA-CLIP 1、概述 2、方法 四、EMU 1、概述 2、架构 3、训练细节 4、评估 一、EVA 1、概述 为探寻大规模表征学习任务的MIM预训练任务在ViT基础上扩展到1B参数量规模&#xff0c;结合10M级别&am…

ABP VNext + EF Core 二级缓存:提升查询性能

ABP VNext EF Core 二级缓存&#xff1a;提升查询性能 &#x1f680; &#x1f4da; 目录ABP VNext EF Core 二级缓存&#xff1a;提升查询性能 &#x1f680;引言 &#x1f680;一、环境与依赖 &#x1f6e0;️二、集成步骤 ⚙️2.1 安装 NuGet 包2.2 注册缓存服务与拦截器2…

3.1k star!推荐一款开源基于AI实现的浏览器自动化插件工具 !

大家好&#xff01;今天&#xff0c;我要给大家介绍一款超实用的开源工具——Chrome MCP Server&#xff01;这款工具不仅能大幅提升我们的工作效率&#xff0c;还能让AI助手&#xff08;如Claude&#xff09;直接操控浏览器&#xff0c;实现自动化操作、内容分析等强大功能。 …

关于 OpenAI 的反思

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Python爬虫库性能与选型对比

Python常用爬虫库的优势对比。这是一个非常实用的问题&#xff0c;很多Python开发者都会面临选择合适爬虫工具的困惑。我根据网络很多搜索结果&#xff0c;整理出这些信息&#xff0c;为用户提供一个全面且清晰的对比分析。以下是Python中常用爬虫库的核心优势对比及选型建议&a…

NAT作业

拓扑图 实验要求 1.按照图示配置IP地址&#xff0c;公网地址100.1.1.1/24..较网“说过?,使“掩入到互联网&#xff0c;私服究的不到公的&#xff0c;使阳接入无三。.私网A通过NAPT&#xff0c;使R1接入到互联网&#xff0c;私网B通过EASY,IP&#xff0c;使R3接入到互联网实验思…

JAVA进阶--JVM

一.JVM的概述java语言有跨平台特点, 写一次java程序,可以在不同的平台上运行.(JVM虚拟机的作用)前提条件: 在不同的平台上安装不同的虚拟机(虚拟机就是一个翻译).java--->.class--->不同的虚拟机--->机器码1.jvm作用:负责将字节码翻译为机器码, 管理运行时内存2.jvm的…

基于Alpine构建MySQL镜像

文章目录基于Alpine构建MySQL镜像一、基础镜像选择与初始化1. 基础镜像选型2. 系统初始化二、核心配置构建1. 目录与权限配置2. 配置文件优化三、安全增强配置1. 密码策略强化2. 非root运行四、数据持久化与启动配置1. 数据卷声明2. 入口脚本优化五、完整Dockerfile示例六、关键…

Alamofire 网络请求全流解析,通俗易懂

Alamofire 网络请求全流程解析&#xff1a;从发起请求到处理响应 一、请求发起阶段&#xff1a;准备你的"快递" 1. 你告诉Alamofire要发什么"快递" // 就像告诉快递员&#xff1a;"我要寄一个包裹给https://api.example.com" AF.request("h…

链路聚合技术

链路聚合技术 链路聚合概述及应用场景 概述 链路聚合是把多条物理链路聚合在一起&#xff0c;形成一条逻辑链路。应用在交换机、路由器、服务器间链路&#xff0c;注意了&#xff0c;主机上面不能用链路聚合技术分为三层链路聚合和二层链路聚合链路聚合的作用 增加链路带宽提供…

SpringCloud之Zuul

SpringCloud之Zuul 推荐参考&#xff1a;https://www.springcloud.cc/spring-cloud-dalston.html#_router_and_filter_zuul 1. 什么是Zuul Spring Cloud Zuul 是 Netflix 提供的微服务网关核心组件&#xff0c;作为统一的 API 入口&#xff0c;承担请求路由、过滤、安全控制等…

低精度定时器 (timer_list) 和 高精度定时器 (hrtimer)

Linux 内核提供了两种主要类型的定时器&#xff0c;以满足不同的时间精度需求&#xff1a;低精度定时器 (timer_list) 和 高精度定时器 (hrtimer)。它们各有特点和适用场景。下面&#xff0c;我将分别提供它们在内核代码中的简化使用示例。1. 低精度定时器 (timer_list) 示例ti…

虚拟机VMware的使用方法

虚拟机VMware的使用方法VMware是全球领先的虚拟化技术提供商&#xff0c;其产品&#xff08;如VMware Workstation Pro&#xff09;允许用户在单一物理机上运行多个操作系统&#xff08;OS&#xff09;&#xff0c;实现资源高效利用、隔离测试和灵活部署。本文将详细介绍VMware…

冰岛人(map)

#include<bits/stdc.h> using namespace std; struct people { string fat; int sex; }; map<string,people>mp; int pan(string s,string m) { string s1; int i0; while(s!“”) { int y0; s1m; while(s1!“”) { if(s1s&&(i<4||y<4)) return 0; s…