数论专题(3)逆元

news/2024/11/25 17:27:00/

目录

初步认识

逆元

定义

应用

费马小定理


好久没有更新我们的数论专题板块了,今天,我们就来探究一下新知——逆元。

初步认识

        在数据非常大的情景下,我们通常会对数据先进行取模运算,来计算在一定的范围内进行处理。而运算的过程中,针对(a+b)%p,(a-b)%p和(a*b)%p,我们都可以通过运用分配律将数据缩小在一个在合理的范围内,再进行精确计算。即有(a+b)%p = (a%p+b%p)%p、(a-b)%p=(a%p-b%p)%p和(a*b)%p=(a%p*b%p)%p。

        如果当a和b很大时,我们可以先取模将数据降区间后再进一步计算。但是对于(a/b)%p,它是不满足分配律的,那怎么办呢?对于一些数据,我们必须在中间过程先对其进行求余后再运算,否则数据将会太大,在计算机中进行除法运算的时候可能会损失精度,导致答案变小,那怎么才能解决这个问题呢?

        我们就下来讲的逆元就能帮您初步解决这个疑难困惑。

逆元

        在Z_{n}中,四则运算都要在模n的意义下,如Z12中,9+3=0,2*6=0。因此,在模运算中,我们知道,减法可以通过补数转化为加法,如在时钟系统中,(8-2)12 = 6,模12的系统中,2的补数是10,因此8-2可以转化为加法运算:(8+10)12 = (8+4+6)12 = (12+6)12 = 6(注,最终的结果不能超过12,即都要模12,相当于以12为周期)。同样,除数如果存在逆元的话,除法也可以转化为乘法,即除以一个数等于乘上这个数的逆元。如在模取9的系统中,(7÷2)9 = (7×5)9。那么,什么是逆元呢?

定义

        如果一个线性同余方程ax\equiv 1(mod b),那么我们就称x为a mod b的逆元,记作a^{-1}.

应用

         换一种表述方式:在模n的意义下(Z_{n})的两元素a和b(指以n为模的系统里,如时钟的计量范围是0~11,时钟就是以12位模的系统),满足a\times b=1,比如在模为9的系统中,2\times 5 mod 9=1,那么我们就说a、b互为模n意义下乘法的逆元,记做a=b^{-1}b=a^{-1}。如2和5互为模9意义下乘法的逆元,记做2=5^{-1}

        那么开始的例子中7÷2在模9的系统中是什么意思呢?我们知道剩余系中的每一个元素都对应一个同余等价类,所以7÷2的实际含义是:假定有两个整数a、b,满足a/b是整数),且a和b除以9的余数分别是7和2,那么a/b除以9的余数等于(7÷2)9= (16÷2)9=8%9=8。而(7×5)9=8。即(7÷2)9 = (7×5)9=8。

        当a、m互素时,若ax≡1(mod m),则称x是a关于模m的逆元,记做a^{-1}。且在[0,m]范围内,a的逆元是唯一的。

       证明(反证法证明唯一性:

        若a有两个逆元0<x1<x2<m,即:ax1≡ax2≡1(mod m)。那么显然有m|a(x2-x1)成立,又gcd(a,m)=1。因此m|(x2-x1),即0<m<x2-x1。与0<x1<x2<m矛盾。故假设不成立。

        又在概述中可以发现将一个整数乘以a^(-1)等价于这个整数除以a,即在模意义下将除法转化为了乘法。即:(a\div b)mod m=(a*b^{-1})mod m(注:这里b^{-1}是在模m的系统下的)。那么,问题又来了,如何求逆元呢?我们需要先了解以下几个概念!

费马小定理

        费马大定理众所周知,我们现在来看看费马小定理

        若p为素数,且a和p互素,则有a^{p-1}\equiv 1(mod p)

证明:∵p为素数,且a和p互素

           ∴a从1到(p-1)的倍数,即a,2a,3a,...,(p-1)a中没有一个是p的倍数,而且任意两个数模p都不同余。

           ∴a,2a,3a,...,(p-1)a这(p-1)个数对模p的同余是1,2,...,(p-1)的排列。

           ∴a*2a*3a*...*(p-1)a\equiv 1*2*...*(p-1)(mod p)。即a^{p-1}*(p-1)!\equiv (p-1)!(mod p)。即a^{p-1}\equiv 1(mod p)得证。易得,对于任意整数a,若p为素数,则有a^{p}\equiv a(mod p)

费马小定理的应用就是转化,当p为素数,a和p互素时,则:

a^{b}\equiv a^{b mod (p-1)}(mod p)

今天的文章就讲这么多了,下一篇博客我会继续讲如何推出逆元以及讲解欧拉定理。再见!!


http://www.ppmy.cn/news/95433.html

相关文章

Linux---用户管理命令(useradd、userdel、usermod、passwd、id)

1. 用户与用户组 Linux系统是一个多用户多任务的分时操作系统&#xff0c;任何一个要使用系统资源的用户&#xff0c;都必须首先向 系统管理员申请一个账号&#xff0c;然后以这个账号的身份进入系统。 Linux系统中可以&#xff1a; 配置多个用户、配置多个用户组、用户可以…

电装光庭汽车电子(武汉)有限公司

电装光庭汽车电子&#xff08;武汉&#xff09;有限公司 &#xff08;汽车座舱显示系统&#xff0c;汽车电子产品及其材料和组件的开发&#xff0c;设计&#xff0c;制造&#xff0c;销售&#xff0c;批发&#xff0c;进出口&#xff09; 一、公司介绍 电装光庭汽车电子是一…

实践指南-前端性能提升 270%

目录 一、背景 二、优化前 1. 了解测量工具及性能指标 1.1 Performance 1.2 最佳实践 1.3 SEO 2. 分析需要优化的地方 2.1 Performance 2.2 最佳实践 2.3 SEO 三、优化 Performance 1. 体积优化 1.1 代码压缩 1.2 代码分包 1.3 组件按需加载 1.4 工具库按需加载…

功能测试转到自动化测试,我的测试之路“狂飙”~20k...

前言 Python自动化测试&#xff1a;Python自动化测试&#xff0c;7天练完这60个实战项目&#xff0c;年薪过35w。 手动功能测试人员应该权衡测试自动化相对于功能测试的好处&#xff0c;并且即可开始行动。现在随着测试行业的发展&#xff0c;自动化测试已经成为每个测试人的标…

onceperrequestfilter 和 webmvcconfigurer 区别

概述 在使用Spring框架进行Web开发的时候,我们经常会遇到需要对每个请求做一些统一的处理的情况。例如,我们可能需要在每个请求到达Controller之前进行身份验证,或者在每个请求结束后记录请求的日志信息。这时候,我们可以使用两种不同的方式来实现这些功能:onceperreques…

引用 随笔

本质 引用的本质其实就是指针常量 *const p 引用的底层机制实际上是和指针一样的。不要相信有别名&#xff0c;不要认为引用可以节省一个指针的空间&#xff0c;因为这一切不会发生&#xff0c;编译器还是会把引用解释为指针。 引用和指针本质上没有区别。 举例&#xff1a…

javascript基础七:说说你对Javascript中作用域的理解?

一、作用域 作用域&#xff0c;即变量&#xff08;变量作用域又称上下文&#xff09;和函数生效&#xff08;能被访问&#xff09;的区域或集合 换句话说&#xff0c;作用域决定了代码区块中变量和其他资源的可见性 举个粟子 function myFunction(){let name小爱同学 } undef…

使用Docker安装Guacamole远程网关并配置录像回放

一、参考 guacamole配置guacamole使用Docker安装guacamole在浏览器中播放录像guacamole插件下载 二、环境 操作系统&#xff1a;Anolis OS 8.6 QU1 docker版本&#xff1a;23.0.5 docker compose版本&#xff1a;v2.17.3 docker-image-guacamole&#xff1a;1.5.1 docker-image…