Loading [MathJax]/jax/output/CommonHTML/autoload/multiline.js

算法灵魂源自数学--数论数学笔记

数论数学笔记


整数的可除性

整除的概念及欧几里得除法

整除定义

a,ba,b 是任意两个整数,其中 b0.b0. 如果存在一个整数 qq 使得等式

a=qba=qb

成立,就称 bb 整除 aa,记作 baba

  • bb 叫做 aa因数
  • aa 称为 bb倍数

否则,就称 bb 不能整除 aa,记作 baba

定理

  • 整除具有传递性

    a,b,c0ba,cbcaa,b,c0ba,cbca

  • 在加法、减法运算,整除的性质是保持的

    a,b,c0ca,cbca±ba,b,c0ca,cbca±b

  • 在线性组合中,整除的性质是保持的

    a,b,c0.ca,cb,s,t,c(sa+tb).

    推广:

    c0.a1,...,ancns1,...,sn,s1a1+...+snanc.

a,b.ab,ba,a=±b.

素数与合数的定义

n0,±1.±1±nnn

如果没有特殊声明,素数一般是指正整数,通常写作 p

定理

  • 每个合数必定有素因子

    npn1pppn

  • 厄拉托塞师 【 Eratoshenes 】 筛法依据

    n.pnpnn.

  • 素数有无穷多个.

  • 欧几里得除法

    a,bb>0q,r使
    a=qb+r,0r<b

不完全商和余数定义

欧几里得除法 的公式中 q 叫做 ab 除所得的 不完全商r 叫做 ab 除所得的余数

推理:在欧几里得除法的条件下,ba 的充要条件是 ab 除所得的余数 r=0.

引入一个数学符号

x.xx[x]
[x]x<[x]+1

则在欧几里得除法中的不完全商 q 可以写作 q=[ab],余数 r 可以写为 r=a[ab].

素数的平凡判别

 对于给定正整数 N,设不大于 N 的所有素数为 p1,p2,,ps. 如果 N 被所有 pi 除的余数都不为零,即 pin,1is,则 N 是素数

定理:

  • 运用欧几里得除法时,余数取其它形式

    a,bb>0.cq,r使
    a=ab+r,cr<b+c

最大公因数与广义欧几里得除法

最大公因数

a1,...,ann(n2).dda1,...,an.
da1,...,an
da1,...,dan
a1,...,ana1,...,an 最大公因数
(a1,...,an)(a1,...,an)=1a1,...,an 互素或互质

定理

  • a,b(0,b)=b

广义欧几里得除法

a,br2=a,rb=bn使rn+1=0

  • a,b(a,b)=rna>b(a,b)O(logalog2b).

Bˆezout 等式

a,bs,t使
sa+tb=(a,b)

  • a,bs,t使

    sa+tb=1

最大公因数性质

a,bdda,b

  • da,db
  • ea,eb,ed

互素整数构造 (a(a,b),b(a,b))=1

a,bu,v
a=qu+rv,b=su+tv
q,r,s,tqtrv=1(a,b)=(u,v)

整除的进一步性质及最小公倍数

最小公倍数

a1,...,ann 个整数. 若 D 是这 n 个数的倍数,则 D 叫做这 n 个数的公倍数.
a1,...,an 的公倍数中最小正整数叫做最小公倍数,记作 [a1,...,an]

定理

  • a,b(a,b)=1.

    • aD,bD,abD
    • [a,b]=ab

最小公倍数 与 最大公因数

a,b

aD,bD,[a,b]D.
[a,b]=ab(a,b)

素数分解

n>1.a,b使
na2b2,nab,na+b
(n,ab)(n,a+b)n

  • 标准分解式

    n>1
    n=pα11pαss,αi>0,i=1,...,s
    pi<pj(i<j)

  • 因数个数

    n
    n=pα11pαss,αi>0,i=1,...,s
    n
    d(n)=(1+α1)(1+αs)

  • 最小公因数与最大公倍数

    a,b
    n=pα11pαss,αi>0,i=1,...,s
    n=pβ11pβss,βi>0,i=1,...,s

    (a,b)=pγ11pγss,γi=min(αi,βi),i=1,...,s
    [a,b]=pδ11pδss,δi=max(αi,βi),i=1,...,s

素数定理

limxπ(x)xlnx=1



同余式

同余的概论和及基本性质

同余定义

ma,bm

abmmaba(modm).mab(modm)

同余性质

  • mdadb(modm).(d,m)=1

    ab(modm)

  • ma(modm),d>0

    dadb(moddm)

  • mab(modm).d(a,b,m)

    adbd(modmd)

  • ab(modm),

    (a,m)=(b,m)

剩余类和完全剩余系

m

  • Cr0rm1;
  • Ca=Cbab(modm)
  • CaCbab(modm)

剩余系与剩余

Cama. 剩余 代表元. r0,r1,,Cm1mr0,,rm1m 完全剩余系

欧拉函数

mm1,,m1,mmφ(m) 做欧拉函数

定理

  • m=pα

    φ(m)=pαpα1=mpm(11p)

简化剩余系

m 简化剩余类m. 简化剩余

m.mm 简化剩余系

φ(m)

定理

  • ma(a,m)=1a1a<m使

    aa1(modm)

欧拉定理性质

m
m=pmpα=pα11pαsk,

φ(m)=pαpα1=mpm(11p)=m(11p1)(11pk)

Euler

m1.a(a,m)=1,
aφ(m)1(modm)

Fermat

pa
apa(modp)

Wilson

p
(p1)!1(modp)

同余式

基本概念及一次同余式

同余式的基本概念

mf(x)
f(x)=anxn++a1x+a0
ai
f(x)0(modm)
同余式 .an0(modm),nf(x) 次数 degf.mn 次同余式

定理

  • mama

    ax1(modm)

    (a,m)=1.

逆元

ma.a使
aaaa1(modm)
am 可逆元
aam 逆元

定理

  • m

    amam

  • 通常的一次同余式求解

    mama
    ax1(modm)
    (a,m)b
    xb(a,m)((a(a,m))1(modm(a,m)))+tm(a,m)(modm),t=0,1,,(a,m)1

中国剩余定理

m1,,mkkb1,,bk,

{xb1(modm1)xbk(modmk)


m=m1mk,m=miMi,i=1,,k


xb1M1M1+b2M2M2++bkMkMk(modm)

高次同余式的解数及解法

高次同余式的解数

m1,,mkkm=m1mk,

f(x)0(modm)

{f(x)0(modm1)f(x)0(modmk)

.Ti

f(x)0(modmi)

i=1,,k,T

T=T1Tk

高次同余式的提升

xx1(modp)

f(x)0(modp)

(f(x),p)=1

xxα(modpα)

xα

xixi1+ti1pi1(modpi),i=2,,α

ti1f(xi1)pi1(f(x1)1(modp))(modp)i=2,,α

二次同余式与平方剩余

一般二次同余式

平方剩余

m.
x2a(modm),(a,m)=1
am 平方剩余【二次剩余】 平方非剩余【二次非剩余】

模为奇素数的平方剩余与平方非剩余

欧拉判别条件

p(a,m)=1

apap121(modp)

apap121(modp)

ap

推论

p(a1,m)=1(a2,m)=1

  • a1,a2pa1a2p
  • a1,a2pa1a2p
  • a1pa2pa1a2p

勒让得符号


pLegendre

(ap){1,ap1,ap0,pa

定理

  • 欧拉判别法则

    pa

    (ap)ap12(modp)

  • p

    (a+pp)=(ap)

    (abp)=(ap)(bp)

    (a,p)=1(a2p)=1

高斯引理

pa(a,p)=1

a1,a2,,ap12

pp2m

(ap)=(1)m

二次互反律

p,q

(qp)=(1)p12q12(pq)

雅可比符号

m=p1prpi.aJacobi
(am)=(ap1)(qpr)

模平方根

  • 模 p 平方根

    p4k+3

    x2a(modp)

    x±ap+14(modp)

  • 模 m 平方根

    m

    x2a(modm),(a.m)=1

    m=2δpα11pαkk

    {x2a(mod2δ)x2a(modpα11)x2a(modpαkk)

px2a(modpα),(a,p)=1,α>0ap
2

原根与指标

指数

m>1am
ae1(modm)
eam 指数,$记作 ord_m(a) 如果 a 对模m 的指数是 \varphi(m),则 a 叫做模m 的$ 原根

指数的基本性质

m>1amd使

ad1(modm)ordm(a)d

  • ba(modm)ordm(a)=ordm(a)

  • a1使1a1(modm)ordm(a1)=ordm(a)

  • adak(modm)dk(modordm(a))

  • ordm(ad)=ordm(a)(d,ordm(a))

大指数构造

m>1a,bm(ordm(a),ordm(b))=1

ordm(ab)=ordm(a)ordm(b)

m,n1am

  • nmordn(a)ordm(a)
  • (m,n)=1ordmn(a)=[ordm(a),ordn(a)]

原根

  • ppφ(p1)φ

  • pgp

    gp11(modp2)or(g+p)p11(modp2)

素数检验

伪素数

伪素数 Fermat 素性检验

nb(b,n)=1使
bn11(modn)
nb 伪素数

Fermat 素性检验

n3t

  1. b(b,n)=12bn2
  2. r=bn1(modn)
  3. r1n
  4. t

Carmicheal

nCarmichealb(b,n)=1,
bn11(modn)

定理

n

  • n1nCarmicheal

  • n=p1pk

    nCarmichealpi1n1,1ik

Euler 伪素数

nbn
bn12(bn)(modn)
nb Euler 伪素数

Solovay-Stassen 素性检验

n3t

  1. b(b,n)=12bn2
  2. r=bn12(modn)
  3. r1rn1n
  4. Jacobis=(bn)
  5. rsn
  6. t

强伪素数

nn1=2stt.bn
bt1(modn)
r0rs使
b2rt1(modn)
nb 强伪素数

连分数

简单连分数

x

  1. a0=[x],x0=xa0.0x0<1
  2. x0=0a1=[1x0]x1=1x0a1
  3. x1=0a2=[1x1]x2=1x1a2
  4. ak,xk

x=a0+1a1+1a2+1+1an1+1an+ 

[a0,a1,a2,][a0,a1,a2,,an1,an]

k0kn
[a0,a1,a2,,an1,an]=PkQk

k 渐近分数akk 部分商

定理

  • α[a0,a1,a2,,an,]

    |αPkQk|1Q2k

posted @   sha0dow  阅读(154)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示