文章目录

  • 格中取模运算
  • CVP和格的陪集
  • 致谢

格中取模运算

定义(格的基本区域) P⊂Rn:{P+x∣x∈L}\mathcal{P} \subset \mathbb{R}^n : \{ \mathcal{P} + \bm{x} | \bm{x} \in \mathcal{L} \}P⊂Rn:{P+x∣x∈L}是Rn\mathbb{R}^nRn的一种划分。

用P\mathcal{P}P对格点取模会呈现周期规律,即很多点“值”重复,例如上图中的绿色点为一组、红色点为一组、蓝色点为一组、棕色点为一组等。

  1. (L,+)(\mathcal{L}, +)(L,+)是(Rn,+)(\mathbb{R}^n, +)(Rn,+)的子群;
  2. 根据第1点可以构造商群Rn/L\mathbb{R}^n / \mathcal{L}Rn/L,念作RnmodL\mathbb{R}^n ~ \mathrm{mod} ~ \mathcal{L}Rn mod L;
  3. 对于Rn/L\mathbb{R}^n / \mathcal{L}Rn/L中的元素,与该元素同组的元素,共同构成一个陪集t+L\bm{t} + \mathcal{L}t+L;
  4. 格中每一个基本区域都提供了一套格和陪集的标准表示法。

商群陪集的概念乍一看很迷惑,但其实很好理解,请参考文章

  • 【群论入门】(5): 子群、陪集、正规子群与商群(收录于机器学习的数学基础)
  • 商群 - 百度百科

注意: 这里格的基本区域P\mathcal{P}P取半开区域,以上图二维格为例,可以是左边界、下边界为闭边界,而右边界、上边界为开边界,这样格中的所有点就均只属于一个基本区域,即每个陪集在每个基本区域中也只有一个点。

  • P=∑ibi⋅[0,1)≡Rn/L\mathcal{P} = \sum_i \bm{b}_i \cdot [0, 1) \equiv \mathbb{R}^n / \mathcal{L}P=∑i​bi​⋅[0,1)≡Rn/L。

由于对格进行取模,故t+L\bm{t} + \mathcal{L}t+L又可表示为(B∨)t(mod1)(\bm{B}^\vee) \bm{t} ~ (\mathrm{mod} ~ 1)(B∨)t (mod 1)。注意,由于t+L\bm{t} + \mathcal{L}t+L不在格上,故对偶空间基向量乘以该点结果不会是整数,除以1必然有小数部分,而这个小数部分可以独立地代表不同的陪集。(个人疑问: 这里的mod\mathrm{mod}mod物理意义理解起来感觉怪怪的,为什么是小数部分?推测可能是计算机实际上没有整除这一功能,除以1还是会有小数部分;或者就是为了表示起来简单方便,用模1表示取小数部分)

如何求对偶格基上一篇文章给出了参考答案:格密码学习笔记(五):对偶格。

CVP和格的陪集

利用格陪集,CVP可以有另外一种定义方式。这里公开课视频讲得有点抽象,我尝试写笔记结合推测解释一下。

定义(CVP) 给定一个格陪集t+L\bm{t} + \mathcal{L}t+L,在该格陪集中找到距离原点最近的点。

以上图为例,对于CVP给定的点t\bm{t}t,利用对偶格基相乘再模1可以获取陪集t+L\bm{t} + \mathcal{L}t+L中的所有点,即浅粉色的那部分点,找到距离原点最近的浅粉色点(绿色箭头所指),则t−e\bm{t} - \bm{e}t−e即CVP问题的解。

致谢

  • Simons格密码公开课官网
    Mathematics of Lattices - Simons Institute for the Theory of Computing
  • 哔哩哔哩中英双语视频(字幕组:重庆大学大数据与软件学院 后量子密码研究小组)
    【中英字幕】Simons格密码讲座第1讲:格的数学定义_哔哩哔哩_bilibili
  • 其它格密码讲解课程和博文
    Lattice学习笔记03:Dual Lattice(对偶格)
    公开学习资料的无私奉献者

格密码学习笔记(六):格中模运算相关推荐

  1. 格密码学习笔记(一)

    格密码学习笔记(一) \qquad随着当下量子计算机的研制的迅速进展,量子算法亦是相应得以巨大突破.在量子计算模型下,经典数论假设的密码体系(如大整数分解,计算有限域/椭圆曲线上的离散对数问题等),存 ...

  2. 【theano-windows】学习笔记六——theano中的循环函数scan

    前言 Scan是Theano中最基础的循环函数, 官方教程主要是通过大量的例子来说明用法. 不过在学习的时候我比较习惯先看看用途, 然后是参数说明, 最后再是研究实例. 国际惯例, 参考网址 官网关于 ...

  3. 格密码学习笔记(三):闵可夫斯基第一定理

    文章目录 N N N维超球体体积结论 闵可夫斯基凸体定理 闵可夫斯基第一定理 闵可夫斯基第二定理 致谢 N N N维超球体体积结论 在 n n n维空间中,对半径为 r r r的超球体(Ball),有 ...

  4. JS学习笔记六:js中的DOM操作

    1. JS学习笔记六:js中的DOM操作 文章目录 1. JS学习笔记六:js中的DOM操作 1.1. 获取Dom节点 1.2. 元素属性的操作方式 1.3. DOM节点的创建.插入和删除 1.4. ...

  5. Hadoop学习笔记—11.MapReduce中的排序和分组

    Hadoop学习笔记-11.MapReduce中的排序和分组 一.写在之前的 1.1 回顾Map阶段四大步骤 首先,我们回顾一下在MapReduce中,排序和分组在哪里被执行: 从上图中可以清楚地看出 ...

  6. 吴恩达《机器学习》学习笔记六——过拟合与正则化

    吴恩达<机器学习>学习笔记六--过拟合与正则化 一. 过拟合问题 1.线性回归过拟合问题 2.逻辑回归过拟合问题 3.过拟合的解决 二. 正则化后的代价函数 1.正则化思想 2.实际使用的 ...

  7. ROS学习笔记六:理解ROS服务和参数

    ROS学习笔记六:理解ROS服务和参数 主要介绍ROS服务和参数,同时使用命令行工具rosservice和rosparam. ROS service service是节点之间互相通信的另一种方式,se ...

  8. opencv 手选roi区域_【opencv学习笔记六】图像的ROI区域选择与复制

    图像的数据量还是比较大的,对整张图片进行处理会影响我们的处理效率,因此常常只对图像中我们需要的部分进行处理,也就是感兴趣区域ROI.今天我们来看一下如何设置图像的感兴趣区域ROI.以及对ROI区域图像 ...

  9. Python学习笔记六——画小猪佩奇

    目录 Python学习笔记六--画小猪佩奇 画布 画笔 属性设置 操纵命令 运动命令 画笔控制命令 全局控制命令 其他命令 Python学习笔记六--画小猪佩奇 使用Python的turtle库可以绘 ...

最新文章

  1. 30~60k | 小鹏汽车3D视觉感知工程师/专家招聘(社招)
  2. Eclipse快捷键归纳及整理
  3. java buffalo_随你怎么玩!Buffalo 网络硬盘新潮流
  4. 【自适应盲均衡3】多模算法(MMA)——复数改进常模算法(MCMA)的理论推导与MATLAB仿真
  5. Silverlight专题(15) - 你自己的视频播放器之自定义MoveToPointSlider
  6. Autodesk Revit DB Link 中文理解
  7. 大一报了c语言班要买电脑吗,少儿编程课程要自己买电脑吗
  8. win7专业版 .bat脚本运行_IT运维老司机:聊聊BAT批处理提升工作效率
  9. 汽车驾驶 - 如何调整汽车后视镜
  10. 计算机台式机怎么用无限,台式机如何无线上网 台式机实现无线上网的教程【图文】-太平洋电脑网PConline-太平洋电脑网...
  11. spring默认redis连接库lettuce性能优化,突破性能天花板,获得官方建议方式2倍吞吐量
  12. 华为云计算IE面试笔记-简述Fusion Storage主要模块MDC,OSD,VBS,FSA及FSM的功能定位及交互关系
  13. 100个python算法超详细讲解:委派任务
  14. 计算机串口如何应用程序,串口通信调试软件的功能与使用方法 - 全文
  15. 火狐浏览器的下载安装
  16. leetcode中数组问题常用的处理方式
  17. EXCEL两个表如何通过关联合并
  18. Rabbit 集群指南
  19. 浅析Java中的深克隆和浅克隆
  20. 魅族mx5android,可能是最好用安卓手机 魅族mx5小技巧分享

热门文章

  1. 解决queryForObject查询抛异常的问题
  2. 浏览器打印出完整的知乎文章为PDF文件
  3. 把chrome变成http服务的实用插件
  4. C++静态链接库(lib)的创建及调用
  5. C#制作Office插件时引用Microsoft.Office.Interop.Word后获取运行实例
  6. sql 中的exists代表什么意思
  7. 手动添加的边框会导致div闪动
  8. Canvas API
  9. 用虚拟并口解决向USB条码打印机发送ZPL指令的解决方案
  10. python多进程爬虫解决进程挂掉问题