信息安全与数学基础-笔记-③一次同余方程

news2024/12/23 23:07:24

知识目录

  • 一次同余方程的解
  • 中国剩余定理
  • 中国剩余定理的应用

一次同余方程的解


本文只研究一次同余方程的解。


f(x) 0 (mod m),
若有一个s能够满足该式子,那么该数字就是该式子的解,
在同余方程式中的解一般写成:xs (mod m)

  • 同余方程式中的解释剩余类,不同解即不同剩余类,一个解代表一个剩余类
  • 设:f(x) = ax, ax 1 (mod m) ,若(a,m) 1, 则 ax 1 (mod m)一定有唯一一个解。
    解释:因为am互素,所以ax 1 该公式就是一个求逆的公式,使用欧几里德算法后再裴蜀等式求逆即可求出 sa + tm = 1 ,所以s就是x的唯一解。
  • 同上一条差不多,若 ax b (mod m) ,若(a,m) 1,则则 ax 1 (mod m)一定有唯一一个解。
    解释:上面两条为啥有唯一一个解?因为解是剩余类,所以我们在完全剩余系中找解是必然的,所以解必然是(0,1,2,3…m-1)又因为我们式子中乘了a,所以完全剩余系中全部乘a也无伤大雅,仍旧是完全剩余系,(a0,a1,a2,a3…a(m-1)),然后观察该变化后的剩余系,我们要找出ax=1的解,必然在该剩余系中,而且只有一个,因为完全剩余系中都是互素的,因此只有唯一一个解。

ax b (mod m)如何求解?
下面两种都必须判断a和m除去最大公因数后是否互素

  • 一:求有多少个解
    (a,m)= d ,d即为解数
  • 二:化简方程式
    a/d * x b / d (mod m/d),同时除以最大公因数
  • 三:按照最简单的方法求解
    先求出a/d * x 1 (mod m/d)的唯一一个解,假设为: x 0 x_0 x0
    然后特解就是: x 0 x_0 x0 * b / d
  • 四:我们知道了一个,需要求出其他解
    那么通解就是可以表示所有解,通解即:
    x 0 x_0 x0* b / d + m/d * t ( t = 0,1…(m-1) ),很明显当t = 0的时候就是特解。
  • 总结
    在这里插入图片描述

中国剩余定理

方程式形如↓:

  • 方程式条件:
    1: m i m_i mi之间必须是两两互素
    2:x的系数必须是1
    在这里插入图片描述
    因为x的系数都必须为1,这种方程式解只有一个
  • 如何求解?
    第一步,先令:
    在这里插入图片描述

第二步:(把数带进去求解一次同方程式即可)

说明:我们的M i _i i − ^- 1 ^1 1是M i _i i模m i _i i下求出来的逆也就是说:
M i _i i − ^- 1 ^1 1 × M i _i i 三 1 (mod m i _i i

在这里插入图片描述

  • 假设 m i m_i mi之间不是两两互素的如何求解
    比如:
    在这里插入图片描述
    这时候我们可以选择将模数拆开分解
    在这里插入图片描述
    将上面的式子化简得:
    在这里插入图片描述
    观察到:x1有两个,因为模数不一样,最后却选择了mod 8
    解释:因为mod 8的解和mod 4的解有重合的地方,但因为mod 4 的解是比mod 8的解的个数多,并且有的不符合mod 8的解,所以我们选择mod 8的,因为这样mod 8的解也能用于mod 4的解,两者通用。
    因此最后拆解的结果为:
    在这里插入图片描述

  • 假设x的系数不是全都为1
    在这里插入图片描述

我们先将系数不是为1的式子先单独求出他的解,很明显就是:
在这里插入图片描述
然后再拆成两个方程式分别求解:
在这里插入图片描述
第一个方程式解为:
在这里插入图片描述

在这里插入图片描述

第二个方程式解为:
在这里插入图片描述

中国剩余定理的应用

当我们计算 5 1 5^1 51 0 ^0 0 0 ^0 0 0 ^0 0 0 ^0 0(mod 391) 的时候计算量很大
这时候发现391=17×23
利用这个分解因子
在这里插入图片描述
因为5和另外两个模数都是互素,并且两个模数也是素数,所以直接使用欧拉定理将次幂减少
在这里插入图片描述
最后解同余方程组即可,使用中国剩余定理:
在这里插入图片描述


over.


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/390471.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git学习入门(2)- 基本命令操作总结

个人博客:我的个人博客,各位大佬来玩1 创建 git仓库1.1 从现有工作目录中初始化新仓库需要到你需要用git管理的项目中输入以下命令:git init便会创建一个空的git项目,并且当前目录下会出现一个名为 .git 的目录, Git 需…

1.SpringSecurity快速入门

*SpringScurity的核心功能: 认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户 授权:经过认证后判断当前用户是否有权限进行某个操作 *第一步:创建springboot工程 *第二步:引入SpringSecurity依赖 *第三步:写controller,访问对应的url:localhos…

常用训练tricks,提升你模型的鲁棒性

目录一、对抗训练FGM(Fast Gradient Method): ICLR2017代码实现二、权值平均1.指数移动平均(Exponential Moving Average,EMA)为什么EMA会有效?代码实现2. 随机权值平均(Stochastic Weight Averaging,SWA&a…

Java Volatile的三大特性

本文通过学习:周阳老师-尚硅谷Java大厂面试题第二季 总结的volatile相关的笔记volatile是Java虚拟机提供的轻量级的同步机制,三大特性为:保证可见性、不保证原子性、禁止指令重排一、保证可见性import java.util.concurrent.TimeUnit;class M…

cadence专题【1】--多引脚IC如何创建orcad原理图库

cadense下载说明新建工程一、采用传统方式创建1、新建库文件2、放置pin array3、修改管脚信息二、采用电子表格方式创建1、新建库文件2、Ctrlc、Ctrlvcadense下载说明 cadence是目前最流行的EDA,下载装机全交给阿狸狗即可。 浏览器搜索cadence吴川斌或点击链接: ht…

【aiy篇】小目标检测综述

小目标检测(Small Object Detection)是指在图像中检测尺寸较小的目标物体,通常是指物体的尺寸小于图像大小的1/10或者更小,COCO为例,面积小于等于1024像素的对象维下目标。小目标检测是计算机视觉领域的一个重要研究方…

记录一下,学习express的小成就

终于搞出来了mongoose 和express 前后端链接的部分。 主要目的是为了使用markdown转换网页。 项目随便写的。没有参考价值,在此只是为了做个记录。作为学习的一个里程碑。对于nodejs,终于可以自己探索,也算是入门了吧。 各位观众不要看了。…

深度学习 | 入个Pytorch的小门

本文主要参考 1’ 2’ 3 更新:2023 / 3 / 1 深度学习 | 入个Pytorch的小门 - 1. 常见数据操作创建操作算术操作加法索引形状查询形状改变形状广播机制广播条件运算数据类型转换Tensor转NumPyNumPy转Tensor线性回归线性回归的基本要素1. 模型2. 数据集3. 损失函数4.…

pycharm的License Certificate使用方法

1 在邮箱获得License Certificate的激活码之后,打开pycharm,选择HELP 在HELP菜单里选择Register 2 输入username or email和密码进行登录 3 登录之后,根据提示(如果有的话),进入官网如下页面&#xff0c…

LC-1599. 经营摩天轮的最大利润(贪心)

1599. 经营摩天轮的最大利润 难度中等39 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 。你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 runningCost 。摩天轮每次轮转都恰好转动 1 / 4 周。…

Java奠基】方法的讲解与使用

目录 方法概述 方法的定义与调用 方法的重载 方法的值传递 方法概述 方法是程序中最小的执行单元,在实际开发中会将重复的具有独立功能的代码抽取到方法中,这样可以提高代码的复用性和可维护性。 方法的定义与调用 在Java中定义方法的格式都是相同…

leetcode 困难 —— 外星文字典(拓扑排序)

题目: 现有一种使用英语字母的外星文语言,这门语言的字母顺序与英语顺序不同。 给定一个字符串列表 words ,作为这门语言的词典,words 中的字符串已经 按这门新语言的字母顺序进行了排序 。 请你根据该词典还原出此语言中已知的字…

动态内存基础(二)

智能指针 ● 使用 new 与 delete 的问题:内存所有权不清晰,容易产生不销毁,多销毁的情况 int* fun() {int* res new int(100); //fun()拥有对fun()申请的内存的销毁权return res; } int main(int argc, char *argv[]) {QCoreApplication a(…

Java线程池-重点类源码解析--更新中

1.Runnable和Callable的区别 (1) Callable规定(重写)的方法是call(),Runnable规定(重写)的方法是run() (2) Callable的任务执行后可返回值,而Runnable的任务是不能返回值的 (3) call方法可以抛出异常&#…

总时差与自由时差

定义总时差(总浮动时间)(TF,Total Free Time,不耽误项目总进度)LS(Latest Start)-ES(Earliest Start)LF(Latest Finish)-EF&#xff0…

SpringCloud:Nacos配置管理

目录 一、统一配置管理 1、打开nacos控制台,点击配置管理,添加配置 2、编写配置 3、完成示例 ​二、服务配置拉取 1、引入Nacos配置管理客户端依赖 2、在resource目录添加一个bootstrap.yml文件,这个文件是引导文件,优先级高…

English Learning - L2 第 3 次小组纠音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.3.4 周六

English Learning - L2 第 3 次小组纠音 [ʌ] [ɒ] [ʊ] [ɪ] [ə] [e] 2023.3.4 周六共性问题小元音 [ʌ]小元音 [ɒ]小元音 [ʊ]小元音 [ɪ]小元音 [ə]小元音 [e]我的发音问题纠音过程共性问题 小元音 [ʌ] 口型容易偏大 解决办法:因为嘴角没有放松&#xff0c…

基于java的俱乐部会员管理系统

技术:Java、JSP等摘要:随着科学技术的飞速发展,科学技术在人们日常生活中的应用日益广泛,也给各行业带来发展的机遇,促使各个行业给人们提供更加优质的服务,有效提升各行业的管理水平。俱乐部通过使用一定的…

程序员画流程图的工具Draw.io

Draw.io 是一个很好用的免费流程图绘制工具,制图结果本质上是xml文件,web版和桌面版可以支持导出图像(png或者svg矢量图都可以)。你可以利用它绘制一系列的图表、图示或图形,包括流程图、UML类图、组织结构图、泳道图、E-R 图、文…

人脸网格/人脸3D重建 face_mesh(毕业设计+代码)

概述 Face Mesh是一个解决方案,可在移动设备上实时估计468个3D面部地标。它利用机器学习(ML)推断3D面部表面,只需要单个摄像头输入,无需专用深度传感器。利用轻量级模型架构以及整个管道中的GPU加速,该解决…