网络空间安全数学基础·同余式

news2024/11/18 5:42:51

6.1 剩余系(掌握)
6.2 同余式概念与一次同余式(熟练)
6.3 中国剩余定理(熟练)

6.1 剩余系

设m是正整数,模m同余的全体整数是一个模m剩余类,即可表示为a = qm+r, 0≤r<m,q=0,±1,±2,…,  的整数是一个模m剩余类。
剩余类中的每个数都称为该类的代表
r称为该类的最小非负剩余
模m剩余类共有m个

例:全部模8的剩余类为

{0,±8,±2×8,±3×8,…},
{1,1±8,1±2×8,1±3×8,…},

{2,2±8,2±2×8,2±3×8,…},

{7,7±8,7±2×8,7±3×8,…}.

在数轴上,一个剩余类做任意整数间隔的平移仍然是一个剩余类,或是另一个剩余类,或是它自己。

定义:从模m剩余类中各取一个代表,则称这些代表的集合为模m的一个完全剩余系。
显然一个完全剩余系在数轴上的任意整数间隔的平移都是一个完全剩余系:

定理:设a是一个整数且(a,m) =1,b是任意整数.如果x遍历模m的一个完全剩余系,则ax+b也遍历模m的完全剩余系。
即如果是模m的一个完全剩余系,则也是模m的完全剩余系。

定理:如果x1,x2分别遍历模m1和模m2的完全剩余系,且(m1,m2) = 1,则m2x1+m1x2遍历模m1m2的完全剩余系。

定义:如果一个模m的剩余类里面的数与m互素,则称它为与模m互素的剩余类。从与模m互素的每个剩余类中各取一个数构成的集合称为模m的一个简化剩余系。
推论:如果m1,m2是两个正整数,且(m1,m2)=1,则φ(m1m2)=φ(m1)φ(m2)。

定理:设正整数m的标准分解式为

定理:模m剩余类环中与m互素的剩余类构成乘法群。

推论:设m是正整数,如果(r,m) =1,则存在s使sr=1 (mod m),反之也成立。 换句话说,就是如果r,m互素,则r在模m下必存在逆元s。

推论(欧拉定理):设m是正整数,如果(r,m) =1,则r^φ( m)≡1(mod m)

推论(费马定理):如果p是素数,则r^p≡r (mod p)

6.2 同余式概念与一次同余式

定义:设f(x)为多项式:其中n是正整数,ai (0≤i≤n)是整数,则称为模m的同余式.如果an≠0 (mod m),则n称为同余式的次数。如果x0满足则x≡x0 (mod m)称为同余式的解.不同的解指互不同余的解.

例:求下列同余式的解.

1)

解 x≡1,5,6 (mod 7)

2)

解 x≡1,3,5,7,9,11,13,15 (mod 16)

3)

解 无解.

 一次同余式
定理:一次同余式ax ≡ b (mod m),a≠0 (mod m),有解的充分必要条件为(a,m)|b.

例:求980x ≡ 1500 (mod 1600)的解.

解 此题中,a = 980,m = 1600,b = 1500,(a,m) = 20,a’ = 49,m’= 80。

1)首先采用欧几里得算法求a’^(-1)(mod m’)。 由于(a’,m’) = 1,所以存在r,s,使a’r+ m’s = 1

于是我们有 31 = 80 – 49= m’ -a’,18 = a’ – 31 = 2a’ – m’,13 = 31 – 18 = 2m’ – 3a’ ,5 = 18 – 13 = 5a’ – 3m’ ,3 = 13 – 2×5 = 8m’ – 13a’ ,2 = 5 – 3 = 18a’ – 11m’ , 1 = 3 – 2 = 19m’ – 31a’ 。

所以19m’ – 31a’ = 1,

则– 31a’ ≡ 49a’ ≡ 1 (mod 80)

故a’^(-1) = 49.

2)求x0

3)同余式的解共有20个,它们为

x ≡ 75+80k (mod 1600),k = 0,1,…,19.

6.3 中国剩余定理

定理(中国剩余定理):设m1,m2,…,mk两两互素,则右边的同余式组有解,且有唯一解:,其中,i =1,2,…,k。

例:解同余式组:

x ≡ 1 (mod 5)

x ≡ 5 (mod 6)

x ≡ 4 (mod 7)

x ≡ 10 (mod 11)

按中国剩余定理求解如下: m = 5×6×7×11 = 2310,

x ≡ 3×462 + 385×5 + 330×4 + 210×10 ≡ 6731 ≡ 2111 (mod 2310).

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

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

相关文章

在推荐四款软件卸载工具,让流氓软件无处遁形

Revo Uninstaller Revo Uninstaller是一款电脑软件、浏览器插件卸载软件&#xff0c;目前已经有了17年的历史了。可以扫描所有window用户卸载软件后的残留物&#xff0c;并及时清理&#xff0c;避免占用电脑空间。 Revo Uninstaller可以通过命令行卸载软件&#xff0c;可以快速…

python数据分析-问卷数据分析(地理课)

学生问卷 分析学生背景&#xff1a;班级分布、每周地理课数量、地理成绩分布 根据问卷&#xff0c;可以知道&#xff1a; 班级分布&#xff1a; 七年级有118名学生。 八年级有107名学生。 每周地理课的数量&#xff1a; 有28名学生每周有1节地理课。 有99名学生每周有2…

dots_image 增强图像中的圆点特征

dots_image 增强图像中的圆点特征 1. dot_image 有什么用途&#xff1f;2. 点状字符的特征增强3. Halcon代码 1. dot_image 有什么用途&#xff1f; Enhance circular dots in an image. 这个算子可以增强图像中的圆点特征&#xff0c;例如下面的例子。 2. 点状字符的特征增强…

有待挖掘的金矿:大模型的幻觉之境

人工智能正在迅速变得无处不在&#xff0c;在科学和学术研究中&#xff0c;自回归的大型语言模型&#xff08;LLM&#xff09;走在了前列。自从LLM的概念被整合到自然语言处理&#xff08;NLP&#xff09;的讨论中以来&#xff0c;LLM中的幻觉现象一直被广泛视为一个显著的社会…

CAD二次开发(8)-探索实现不重启CAD进行热部署代码

最近在研究CAD二次开发过程中&#xff0c;调试代码的过程中&#xff0c;需要频繁地重启CAD&#xff0c;非常浪费我们的开发时间&#xff0c;所以我就一直在想&#xff0c;怎么可以实现在不每次重启代码和CAD的情况下&#xff0c;实现代码的热部署效果。 我找到的方式&#xff…

论文阅读 A Distributional Framework for Data Valuation

本论文解决的问题 量化数据价值&#xff08;机器学习模型训练中各个数据点的贡献&#xff09; 避免数据价值受到其所处数据集的影响&#xff0c;使数据点的估值更加稳定、一致 变量假设 假设 D 表示一个在全集 Z 上的数据分布。对于监督学习问题&#xff0c;我们通常认为 Z…

高考志愿填报有哪些技巧和方法

一年一度高考季&#xff0c;又高考志愿填报的时侯了。高考志愿填报的时侯&#xff0c;需要考虑的因素比较多&#xff0c;有的同学觉是离家越远越好&#xff0c;要放飞自我&#xff0c;家长再也管不了我了。有的同学觉得专业比学校牌子重要&#xff0c;只要报个好专业&#xff0…

服务监控-微服务小白入门(5)

背景 什么是服务监控 监视当前系统应用状态、内存、线程、堆栈、日志等等相关信息&#xff0c;主要目的在服务出现问题或者快要出现问题时能够准确快速地发现以减小影响范围。 为什么要使用服务监控 服务监控在微服务改造过程中的重要性不言而喻&#xff0c;没有强大的监控…

【WP】猿人学_16_js逆向_window蜜罐

https://match.yuanrenxue.cn/match/16 抓包分析 荷载一个加密参数&#xff0c;一个时间戳 时间: 2024-06-07 15:52:31时间戳: 1717746751 1717746751000时间戳和现在对得上&#xff0c;直接生成就行。 追栈 追栈找m的生成位置。 点进去打断点&#xff0c;重新点击其他…

Java 8 中的 Stream API,用于处理集合数据

Java 8 引入了 Stream API&#xff0c;使得处理集合数据变得更加简洁和高效。Stream API 允许开发者以声明式编程风格操作数据集合&#xff0c;而不是使用传统的迭代和条件语句。 一、基本概念 1.1 什么是 Stream Stream 是 Java 8 中的一个新抽象&#xff0c;它允许对集合数…

Java学习笔记(六):Array List、学生管理系统、学生管理系统升级版

目录 一、ArrayList 1.1集合和数组的优势对比&#xff1a; 1.2 ArrayList类概述 1.3 ArrayList类常用方法 1.3.1 构造方法 1.3.2 成员方法 1.4 ArrayList存储字符串并遍历 1.5 ArrayList存储学生对象并遍历 1.6 查找用户的索引 1.7 添加手机对象并返回要求的数据 二…

用 Notepad++ 写 Java 程序

安装包 百度网盘 提取码&#xff1a;6666 安装步骤 双击安装包开始安装。 安装完成&#xff1a; 配置编码 用 NotePad 写 Java 程序时&#xff0c;需要设置编码。 在 设置&#xff0c;首选项&#xff0c;新建 中进行设置&#xff0c;可以对每一个新建的文件起作用。 Note…

【Flutter】 TextField限制长度时, 第三方手写输入法、ios原始拼音输入法输入被吞问题

问题描述 TextField限制长度时&#xff0c; 当你的输入字符长度已经到了最大值-1时&#xff0c;使用第三方手写输入法或者ios原生拼音输入法输入liang&#xff08;什么拼音都行&#xff0c;这里只是举例&#xff09;&#xff0c;输到i那么li都会消失。 原因分析 这是因为第三…

nginx配置WebSocket参数wss连接

目录 一、原文连接 二、 配置参数 三、实践 四、重启nginx 五、连接websocket 一、原文连接 nginx配置websocket支持wss-腾讯云开发者社区-腾讯云 二、 配置参数 map $http_upgrade $connection_upgrade { default upgrade; close; } upstream websocket { se…

PostgreSQL基础(九):PostgreSQL的事务介绍

文章目录 PostgreSQL的事务介绍 一、什么是ACID&#xff08;常识&#xff09; 二、事务的基本使用 三、保存点&#xff08;了解&#xff09; PostgreSQL的事务介绍 一、什么是ACID&#xff08;常识&#xff09; 在日常操作中&#xff0c;对于一组相关操作&#xff0c;通常…

基于t-SNE的泰坦尼克号数据集降维

目录 1. 作者介绍2. 算法介绍2.1 t-SNE介绍2.2.SNE基本原理2.3.拥挤问题2.4.t-SNE基本原理2.5.t-SNE算法过程 3. 泰坦尼克号数据集降维实验3.1.数据集介绍3.2 任务介绍3.3 代码实现3.4 实验结果 参考连接 1. 作者介绍 刘方星&#xff0c;男&#xff0c;西安工程大学电子信息学…

vue3 监听器,组合式API的watch用法

watch函数 在组合式 API 中&#xff0c;我们可以使用 watch 函数在每次响应式状态发生变化时触发回调函数 watch(ref,callback&#xff08;newValue,oldValue&#xff09;&#xff0c;option:{}) ref:被监听的响应式量&#xff0c;可以是一个 ref (包括计算属性)、一个响应式…

大型零售企业总部到分公司数据发放,有没有更优化的方案?

大型零售企业在市场经济中扮演重要角色&#xff0c;是保证基础商品生产、流通和供给的重要一环。随着企业发展&#xff0c;很多大型零售企业都会在全国、乃至全球各地开设分公司&#xff0c;用以降低生产和运营成本&#xff0c;更好地提供本地化服务。 为了保证总部与分公司间信…

【C++ | 拷贝构造函数】一文了解C++的 拷贝(复制)构造函数

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; ⏰发布时间⏰&#xff1a;2024-06-07 2…

Linux.软件操作

1.yum 命令 要连网 2.systemctl 命令控制软件的启动和关闭 3.ln 创建软连接 使用cat来找本体&#xff0c;看看链接生不生效 4.date 命令查看系统时间 格式化的时候可以用双引号把他们引出来 -d 对时间进行修改 修改时区 自动校准 手动校准 5.ifconfig 查看本机的ip地址 6.h…