带余除法专题

本文详细探讨了带余除法的相关概念,包括剩余系的定义、分类及其性质,以及重要定理如费马小定理、欧拉定理和Lucas定理。同时,阐述了同余的定义、性质和线性同余方程的解法,并介绍了如何处理同余方程组,特别是中国剩余定理的应用。此外,还涉及了离散对数和原根的概念,以及如何通过大步小步法解决相关问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

剩余系

定义

一个数模m所得的余数域。

分类

  • 完全剩余系:由{0,1,2...m1}组成的剩余系
    • 简化剩余系:由小于m且与m互质的自然数组成的剩余系

      完全剩余系与加法、乘法组成了一个环。
      简化剩余系与四则运算构成了一个域。

    证明需要用到的结论

    • 结论一:若a,b,c为任意3个整数,m为正整数,且(m,c)=1, 则当acbc(modm) 时,有ab(modm)
      证明:根据题设有(ab)c0(modm),因为(m,c)=1c存在关于m的逆元,两边同乘之即可证。

    • 结论二:若a0,a2...am1两两不同余,则它们构成对m的完全剩余系。
      证明:构造同余系{0,1,...,m1}建立起双射关系。

    • 结论三:若{a0,a1...am1p}构成对m的完全剩余系,(p,m)=1,则{pa0,pa1...pam1}也构成对m的完全剩余系。
      证明:利用定理一证明这m个数两两不同余再利用定理二即可。


    重要定理

    费马小定理

    p是质数,且(a,p)=1,则ap11(modp)
    证明:构造剩余系{1,...,p1},根据定理三的思路有{a,2a,...(p1)a}也构成了相同的剩余系。于是有(p1)!ap1(p1)!(modp),又有((p1)!,p)=1,两边同乘其逆元即可。

    欧拉定理(费马小定理的推广)

    a,p为正整数且(a,p)=1,则有aφ(p)1(modp)
    证明:与费马小定理证明思路大致相同,注意{ax1,ax2,...,axφ(p)}两两不同余且皆与p互质,其中{x1,x2,...,xφ(p)}构成了简化剩余系。

    Lucas定理

    CmnCmpnpCm%pn%pki=0Cmini(modp)
    其中mi,ni分别表示m,np进制下的第i位的值
    证明:主要沿二项式展开得到组合数来证明同余的思路。
    (x+1)p=xp+C1pxp1+...+Cp1px+1
    又有Cba=abCb1a1,其中a,b为正整数。
    (x+1)pxp+1(modp),次数变成pk同理。
    (x+1)n=(x+1)a0[(x+1)p]a1...[(x+1)pk1]ak1
    (x+1)a0(xp+1)a1...(xpk1+1)ak1(modp)
    对比最终式子中xm这一项的系数就可得到
    Cmn=ki=0Cmini(modp)


    同余

    定义

    ab(modm)m|(ab)

    同余的其中两个性质

    • 性质一:若ab(modm),n|m,那么ab(modn)
      证明:从定义证明即可。
    • 性质二:若acbc(modm),那么ab(modm(m,c))
      证明:显然m(m,c)|m,那么根据性质一,acbc(modm(m,c))
      由于(c,m(m,c))=1c

    线性同余方程

    形如axb(modp)的方程,这个方程有解当且仅当(a,p)|b。因为它可以化简成为axb(modp),其中a=agcd(a,p)b,p同理,那么x=ba1,其中a1表示a关于p的乘法逆元。

    同余方程组

    现有若干同余方程

    • xb0(modm0)
    • xb1(modm1)
    • xbn(modmn)

    要求求出通解x

    中国剩余定理

    这个要求mi两两互质。令Mi=jimj,则
    xni=0m1iMibi(modM)
    假如mi并非两两互质,可以先将每一个mi分解质因数,然后将同一个质数的判断冲突,保留模数最大的一个。最后合并就可以了。

    扩展gcd合并同余方程组

    假设我们现在需要合并两个同余方程

    Xb1(modm1)
    Xb2(modm2)

    问题实际上转换成了解关于k1,k2的不定方程

    xm1ym2=b2b1

    用扩展gcd求出初解x0,y0。注意这一步有可能无解((m1,m2)b2b1),若无解则无法合并。那么原方程的通解变成了

    x=m2(m1,m2)k+b2b1(m1,m2)x0

    注意到这个方程里除了k是未知数以外其他都是常量。
    那么我们将x带回原方程,得到

    X=m1x+b1=m1m2(m1,m2)k+m1x0b2b1(m1,m2)+b1

    那么我们就成功地将两个同余方程合并成一个新的同余方程

    Xm1x0b2b1(m1,m2)+b1(modm1m2(m1,m2))

    离散对数与原根

    要求求解axb(modm)的解

    (a,m)=1则可以应用大步小步法。
    核心思想是把ax化成akm+b
    枚举m,二分b即可。

    矩阵上的大步小步法

    核心思想还是和求离散对数法的大步小步法一致的,只需要将矩阵和某个特定的数建立起一一对应的关系就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值