线性同余方程

本文讲解了如何通过欧拉定律和贝祖定理求解形如ax=b (mod m)的方程,重点介绍了逆元的求法,并用3x=4 (mod 7)为例,展示了如何利用逆元找到解集。关键步骤包括利用gcd和逆元概念简化方程,最终求得满足条件的x值。
摘要由CSDN通过智能技术生成
生活中我们可能遇见这种形式的方程:
ax==b(mod m) 如何求解所有满足此类方程的x?
其中的一个方法就是线性同余方程
a*a(的逆)==1(mod m)  (其中a(的逆)称为a模m的逆)
                根据欧拉定律 我们知道 kb+r=a 中kb、r、a具有相同的公约数d (即gcd(b,a)==gcd(b,r))
                我们可以通过这种方式将kb+r=a展开从而推得贝祖定理gcd(b,a)=sa+tb
当r==1时  根据贝祖定律 我们知道 当r==1时  可以写为 sa+tb=1
                将其转为求模式子            sa+tb==1(mod b)=>sa==1(mod b) (经过转化后 tb=0)
                          sa==1(mod b) 我们可以通过此式子求a(的逆)(在这里是求s)
eg:                        gcd(3,7)=1
                          =>3*s+7*t=1   满足此式子即可
                                 5     -2
                                 x     -1
                                 x      0
                                -2      1
                                 x      2
                                 x      3
                                 .....
                                 还有许多满足的式子

一旦有了s值我们就可以求解ax==b(mod m)

eg:                        3x==4(mod 7)的解是什么
前例可知               3 mod 7 的逆s=-2                          
                             -6x==-8(mod 7)//两边乘以-21*x(mod 7)==6(mod 7)(mod 7)//    已知-6==1(mod 7) 且   -8==6(mod 7)
                          =>x==6(mod 7)//     两边抵消
                             将x*3返回原式可以得出符合原式
                             x==6(mod 7)有效
                             可以得出x为61320...
总结:这个方法主要是通过将ax==b(mod m)的左式子转化为 x实现(通过sa==1的方式)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值