《信息安全数学基础》第一章:整除与同余

整除(easy)

整除定义

a,bZ,b0,qZ. s.t. a=qb. 则称:

b 整除 a ,或 ab 整除,记为:ba

b 不整除 aba

整除性质

a,b,cZ

  1. ba , ab , 则 b=±a.
  2. ab , bc , 则 ac.
  3. ca , cb , 则 cua+vb,  u,vZ.
  4. ca1 , ... , cak , 则 u1, ... ,ukZ, s.t. c(u1a1+ ... +ukak)

带余除法

定义

a,bZ,b0,a=qb+r0r<|b|.
q:不完全商, r:余数

显然当 r=0ba

存在性证明

  1. ba 时,取 q=ab,r=0

  2. ba 时,取集合 T={akb, k=0,±1,±2...}
    TT 的正整数子集,则存在其中最小正整数 t0=ak, ak0b>0
    下证 t0<|b|
    t0=|b|ba,矛盾
    t0>|b|t1=t0|b|T0<t1<t0t0 最小矛盾
    所以 0<t0<|b|, a=k0b+t0, q=k0, r=t0

唯一性证明

如果 a=q1b+r1,a=q2b+r2,0r1,r2<b (q1q2, r1r2)
b|(q1q2)b|=|(r1r2)|<b 矛盾

前:因为 q1q2 ;后: 因为 0r1,r2<b

所以 q1=q2, r1=r2q,r 唯一

最大公因数 gcd 与最小公倍数 lcm (easy)

公因子

a,bZ ,若整数 ca , cb ,则 c 称为 a,b公因子

最大公因子

定义(三个条件)

  1. c>0
  2. ca,b 的公因子
  3. a,b 的任何公因子都整除 c

c 称为 a,b最大公因子c 唯一)
记为:c=(a,b)c=gcd(a,b)

性质

  1. (a,b)=(±a,±b)=(|a|,|b|)
  2. (0,a)=|a|
  3. ab ,则 (a,b)=a
  4. x,yZ,(a,b)(ax+by)
  5. a=bq+c,qZ ,则 (a,b)=(b,c)
  6. (a,c)=1,bc ,则 (a,b)=1
  7. (a(a,b),b(a,b))=1
  8. a1,...,akk 个不全为零的整数
    (a1,a2,...,ak)=(a1,(a2,...,ak))=...=(a1,(a2,...,(ak1,ak)...))

公倍数与最小公倍数 (easy)

m>0,am,bm,mkk 为任何公倍数)

性质类比最小公因数

m=[a,b]=lcm(a,b)

性质

辗转相除法 (medium)(*point)

Tips:必考计算题

欧几里得除法/辗转相除法

过程

 a,bN+,  r0=a,r1=b, r0=q1r1+r20<r2<r1r1=q2r2+r30<r3<r2rl2=ql1rl1+rl0<rl<rl1rl1=qlrlrl=(a,b)

证明

根据最大公因子的三个条件

  1. rl>0 显然
  1. 首先证明 rla,b 的公因子:(从后往前推)

rl1=qlrl 得到 rlrl1rl(rl,rl1)

rl2=ql1rl1+rl 得到 rlrl2rl(rl1,rl2)

...

可以得到 rl(r0,r1)rla,b 的公因子

  1. 其次证明 rl 是最大公因子,即任意公因子 drl(从前往后推)

da,b 的任意公因子

r0=q1r1+r2 得到 dr2

...

可以得到 drl

根据最大公因子定义得到 rl=(a,b)

欧几里得扩展算法

后续章节用于求逆元

过程

r2  r0=a,r1=b  r2=r0q1r1r3  r1,r2  r3=r1q2r2rl  rl1,rl2  rl=rl2ql1rl1rl=(a,b)  a,b 线

性质

a,b 不全为零,u,vZ,(a,b)=ua+vb

(a,b)=1,u,vZ,ua+vb=1, (u+b)%b 即为 a 对于模 b 的逆元

素数与互素 (easy)

互素

定义

a,b 不全为零,若 (a,b)=1,则称 a,b 互素

推论

(a,b)=1u,vZ. s.t. ua+vb=1

推论证明

  1. 必要性:见扩欧算法部分
  2. 充分性:若 u,vZ. s.t. ua+vb=1

(a,b)(ua+vb),得 (a,b)1,所以 (a,b)=1

性质

a,b,c 为非零整数,则:

  1. cab(c,a)=1,则 cb
  2. ac,bc(a,b)=1,则 abc
  3. (a,c)=1,(b,c)=1,则 (ab,c)=1

素数

定义

整数 p±1,±p 外无其他因子, p素数,否则为合数

性质

  1. aZ,若 pa,则 (p,a)=1
  2. pab,则 papb

算术基本定理

任何大于 1 的整数 a 都可以分解为有限个素数的乘积:

a=p1p2...pr 除素因子排列外是唯一的

证明唯一性

a=p1p2...pr=q1q2...qs

p1q1q2...qs,假设 p1q1,则 p1=q1,得 p2...pr=q2...qs

同理得 p1p2...prq1q2...qs 都相同

标准因子分解式

a 的分解式可表示为有限个素数的幂次的乘积:

a=p1k1p2k2...prkr 称为 a 的标准因子分解式

筛 (easy)

Eratosthenes筛

步骤

  1. 找出小于等于 N 的全部素数:p1,p2,...,pm
  2. 1 ~ N 中分别划去 p1,p2,...,pm 的全部倍数(不包括它们自身)

原理

  • 对于一个正整数 aN,如果素数 p1,p2,...,pmN)都不整除 a ,则 a 是素数

为什么是 N

  • aZ,a>1,则 a1 外最小正因子是素数,且当 a 是合数时,qa

同余 (easy)

定义

a,bZ,给定一个称为模的正整数 m,q1,q2Z. s.t. a=q1m+r,b=q2m+r,0r<m

则称 a,b 关于模 m 同余,记为 ab(mod m)

同余的三个等价定义

  • a,bZ,mN+,q1,q2Z. s.t. a=q1m+r,b=q2m+r,0r<m
  • m(ab)
  • a=b+mt,tZ

性质

a1,a2,b1,b2,c,b,aZ,mN+,且 a1b1(mod m),a2b2(mod m)

  1. a1±a2b1±b2(mod m)
  2. a1a2b1b2(mod m)
  3. acbc(mod m),(c,m)=1,则 ab(mod m)
  4. ab(mod m),dm,dN+,则 ab(mod d)

推论

a1b1(mod m),a2b2(mod m),则:

  1. x,yZ,a1x+a2yb1x+b2y(mod m)
  2. a1nb1n(mod m),nN+
  3. f(a1)f(b1)(mod m),其中 f(x) 是任一给定的整系数多项式:

f(x)=c0+c1x+...+cnxn

快速指数算法——模重复平方计算法 (*point)

即快速幂,利用推论 2 可证

后续数论计算题的基础知识

posted @   IrisHyaline  阅读(113)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示