中国剩余定理(Chinese Remainder Theorem)
我理解的中国剩余定理的含义是:给定一个数除以一系列互素的数${p_1}, \cdots ,{p_n}$的余数,那么这个数除以这组素数之积($N = {p_1} \times \cdots \times {p_n}$)的余数也确定了,反之亦然。
用表达式表示如下:
\[\begin{array}{l}
x \equiv {a_1}(\bmod {p_1})\\
{\rm{ }} \vdots \\
x \equiv {a_n}(\bmod {p_n})
\end{array}\]
那么任何满足条件的x对于模N都是同余的。
其中满足条件的最小的x可以表示为:
\[x = {a_1}{b_1}\frac{N}{{{p_1}}} + \cdots + {a_n}{b_n}\frac{N}{{{p_n}}}\]
其中,${b_i}$为$\frac{N}{{{p_i}}}$模${p_i}$的数论倒数(即${b_i}\frac{N}{{{p_i}}} \equiv 1(\bmod {p_i})$)
用映射关系也可以表示为:
\[x\bmod N \mapsto (x\bmod {p_1},...,x\bmod {p_n})\]
这个性质可以推广到任何可交换环。实际上定义了一个环同构(ring isomorphism)。如在整数环上:
\[\mathbb{Z}/N\mathbb{Z} \cong \mathbb{Z}/{p_1}\mathbb{Z} \times \ldots \times \mathbb{Z}/{p_1}\mathbb{Z}\]
这意味着,在$\mathbb{Z}/N\mathbb{Z}$上的一系列算术操作可以在每个$\mathbb{Z}/{p_i}\mathbb{Z}$上分开做,再利用同构得到结果。
后面补充一些最近看的关于数论的知识。
- 环和理想(Rings and Ideals)
$R$是一个环,$R$的理想$I$是$R$中的一个非空子集,对于加法以及$R$中任一元素的乘法是封闭的。
即,对于所有的$a,b \in I$,都有$a + b \in I$;对于所有的$a\in I$,以及所有的$r \in R$,都有$ar \in I$.
主理想(Principal Ideal)是由单个元素产生的(R中的单个元素与R中的每个元素相乘产生)。若一个环中所有的理想都是主理想,那么这个环称为主理想环(Principal Ideal Ring,PIR)。若两个元素$a$和$b满足$a - b \in I$,那么说它们模$I$同余。
商环(quotient ring) $R/I$是通过在$R$上定义$I$的陪集上进行加法和乘法操作得到的:
\[\left( {a + I} \right) + \left( {b + I} \right) = \left( {a + b + I} \right),\left( {a + I} \right) \times \left( {b + I} \right) = \left( {ab} \right) + I\]
举个例子,整数域$\mathbb{Z}$是环,$2\mathbb{Z}$相当于由2产生的一个主理想。$\mathbb{Z}/2\mathbb{Z}$是一个对应的商环。
2.主理想整环(Principal Ideal Domain,PID)
整数域$\mathbb{Z}$就构成一个PID。典型的例子还包括高斯整数 $\mathbb{Z}[i] \buildrel \Delta \over = \left\{ {a + bi:a,b \in \mathbb{Z}} \right\}$和艾森斯坦整数(Eisenstein integer) $\mathbb{Z}[\omega] \buildrel \Delta \over = \left\{ {a + b\omega:a,b \in \mathbb{Z}} \right\}$.
高斯整数在复平面上构成了一个正方形点阵,而艾森斯坦整数在复平面上构成了一个三角点阵。高斯整数有四个单位元$\left\{ { \pm 1, \pm i} \right\}$,艾森斯坦整数有六个单位元$\left\{ { \pm 1, \pm \omega , \pm {\omega ^2}} \right\}$
中国剩余定理(Chinese Remainder Theorem)的更多相关文章
- Chinese remainder theorem again(中国剩余定理)
C - Chinese remainder theorem again Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:% ...
- hdu 1788 Chinese remainder theorem again(最小公倍数)
Problem Description 我知道部分同学最近在看中国剩余定理,就这个定理本身,还是比较简单的: 假设m1,m2,-,mk两两互素,则下面同余方程组: x≡a1(mod m1) x≡a2( ...
- DHU 1788 Chinese remainder theorem again 中国剩余定理
Chinese remainder theorem again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 ...
- HDU1788 Chinese remainder theorem again【中国剩余定理】
题目链接: pid=1788">http://acm.hdu.edu.cn/showproblem.php?pid=1788 题目大意: 题眼下边的描写叙述是多余的... 一个正整N除 ...
- HDU——1788 Chinese remainder theorem again
再来一发水体,是为了照应上一发水题. 再次也特别说明一下,白书上的中国剩余定理的模板不靠谱. 老子刚刚用柏树上的模板交上去,简直wa出翔啊. 下面隆重推荐安叔版同余方程组的求解方法. 反正这个版本十分 ...
- 【数论】【中国剩余定理】【LCM】hdu1788 Chinese remainder theorem again
根据题目容易得到N%Mi=Mi-a. 那么可得N%Mi+a=Mi. 两侧同时对Mi取余,可得(N+a)%Mi=0. 将N+a看成一个变量,就可以把原问题转化成求Mi的LCM,最后减去a即可. #inc ...
- HDU 1788 Chinese remainder theorem again
题目链接 题意 : 中文题不详述. 思路 : 由N%Mi=(Mi-a)可得(N+a)%Mi=0;要取最小的N即找Mi的最小公倍数即可. #include <cstdio> #include ...
- HDU 1788 Chinese remainder theorem again 中国剩余定理
题意: 给定n,AA 以下n个数m1,m2···mn 则有n条方程 res % m1 = m1-AA res % m2 = m2-AA 问res的最小值 直接上剩余定理,嘿嘿 #include< ...
- Chinese remainder theorem
https://en.wikipedia.org/wiki/Chinese_remainder_theorem http://planetmath.org/ChineseRemainderTheore ...
随机推荐
- iptables过滤设置服务端口
1.为SSH跟换连接端口 修改SSH配置文件:/etc/ssh/sshd_config #找到Port 22,这里是标识默认使用22端口,修改为想要的端口. Port Port 2.查看iptable ...
- 对于C语言复杂指针类型的分析
转载自:http://www.slyar.com/blog/complicated-point-type.html int p; p是一个普通的整型变量. int *p; 1.p与*结合,说明p是一个 ...
- BZOJ 2096: [Poi2010]Pilots
Description 求一个最长的序列,最大值最小值之差不超过 \(k\) . Sol 单调队列. 一个队列直接上就行.. Code /******************************* ...
- zabbix触发器依赖
触发器依赖 Zabbix - Router1 - Router2 – Host 如果router1宕机了,那么router2和host都不能连上,这样的话就会发router1.router2和host ...
- 《Linux常用命令》笔记
① ifconfig 查看IP状态; ② ls 查看当前路径文件信息,参数: -l 查看文件的详细信息与ll效果一样; -a 查看文件的全部信息; ③ man 查询当前指令的信息,查询可用字母q退出; ...
- Ninject学习(一) - Dependency Injection By Hand
大体上是把官网上的翻译下而已. http://www.ninject.90iogjkdcrorg/wiki.html Dependency Injection By Hand So what's Ni ...
- Android issues
1. Android studio 2.0 Error:Exception in thread "main" java.lang.UnsupportedClassVersionEr ...
- 解决自定义Shiro.Realm扩展类不能用注解(@Resource或@Autowire)自动装配的问题
问题产生原因:加载Realm时其他Spring配置文件(xml)尚未加载,导致注入失败. 解决方法:编写一个设置类把注入工作提前完成. package com.xkt.shiro import org ...
- 八款常见的Android游戏引擎
原文地址:http://bbs.csdn.net/topics/380203732 1.Angle Angle是一款专为Android平台设计的,敏捷且适合快速开发的2D游戏引擎,基于OpenGL ...
- java 深入技术八(内省)
1. javabean的软件设计思想 2.内省:封装了java反射,提供直接操作属性的Setter和getter方法的方法 3.核心API:BeanInfo java 的描述信息,Introspect ...