文章目录

  • N N N维超球体体积结论
  • 闵可夫斯基凸体定理
  • 闵可夫斯基第一定理
  • 闵可夫斯基第二定理
  • 致谢

N N N维超球体体积结论

在 n n n维空间中,对半径为 r r r的超球体(Ball),有 v o l ( B ( 0 , r ) ) ≥ ( 2 r n ) n \mathrm{vol}(\mathcal{B}(0, r)) \geq \left( \frac{2r}{\sqrt{n}} \right)^n vol(B(0,r))≥(n ​2r​)n。如下图所示,当 n = 2 n=2 n=2时,半径为 r r r的圆里包含一个边长为 2 r 2 \frac{2r}{\sqrt{2}} 2 ​2r​的正方形,圆的直径是正方形的对角线,圆的面积大于正方形的面积。

闵可夫斯基凸体定理

定理1 在空间 R n \mathbb{R}^n Rn中,对任意对称凸体 C ∈ R n \mathcal{C} \in \mathbb{R}^n C∈Rn,若 v o l ( C ) > 2 n \mathrm{vol}(\mathcal{C}) > 2^n vol(C)>2n,则 C \mathcal{C} C必定包含一个非零整数向量。

注意凸体和凹体的区别
什么是凹多面体,什么是凸多面体,怎么区分,有什么例子?

以下图为例,在二维整数格 Z 2 \mathbb{Z}^2 Z2上,将正方形 C \mathcal{C} C的中心放在原点,只要 C \mathcal{C} C的面积严格大于 2 n 2^n 2n,那么 C \mathcal{C} C必定包含非零整数点(注意是包含在内而非放在边界上)。

证明略(欢迎补充完整证明)。

闵可夫斯基第一定理

虽然在多维空间求解精确的 λ 1 \lambda_1 λ1​很困难,但是存在多项式算法能够快速求解出 λ 1 \lambda_1 λ1​的大致上界。

定理2 对任意 n n n维满秩格 L ( B ) \mathcal{L}(\bm{B}) L(B),其第一连续极小满足 λ 1 ≤ n ⋅ d e t ( L ) 1 / n \lambda_1 \leq \sqrt{n} \cdot \mathrm{det}(\mathcal{L})^{1/n} λ1​≤n ​⋅det(L)1/n。

证明: 通过对 Z n \mathbb{Z}^n Zn施加线性变换 B \bm{B} B可以得到对应的格 L \mathcal{L} L,即 L = B Z n \mathcal{L} = \bm{B} \mathbb{Z}^n L=BZn。

图上图为例,在格 L \mathcal{L} L上找到以格点为球心、半径为 λ 1 \lambda_1 λ1​的超球体 B ( 0 , λ 1 ) \mathcal{B}(0, \lambda_1) B(0,λ1​),该超球体内包含一个体对角线长为 2 λ 1 2\lambda_1 2λ1​的立方体 S \mathcal{S} S,有 v o l ( S ) = ( 2 λ 1 n ) n \mathrm{vol}(\mathcal{S}) = \left( \frac{2\lambda_1}{\sqrt{n}} \right)^n vol(S)=(n ​2λ1​​)n。

对立方体 S \mathcal{S} S施加逆变换 B − 1 \bm{B}^{-1} B−1转回到 Z n \mathbb{Z}^n Zn上得到一个凸体 C \mathcal{C} C。

易知, v o l ( C ) = d e t ( B − 1 ) ⋅ v o l ( S ) = d e t ( L ) − 1 ⋅ ( 2 λ 1 n ) n ≤ 2 n \mathrm{vol}(\mathcal{C}) = \mathrm{det}(\bm{B}^{-1}) \cdot \mathrm{vol}(\mathcal{S}) = \mathrm{det}(\mathcal{L})^{-1} \cdot \left( \frac{2\lambda_1}{\sqrt{n}} \right)^n \leq 2^n vol(C)=det(B−1)⋅vol(S)=det(L)−1⋅(n ​2λ1​​)n≤2n。否则的话,有 d e t ( B − 1 ) ⋅ v o l ( S ) > 2 n \mathrm{det}(\bm{B}^{-1}) \cdot \mathrm{vol}(\mathcal{S}) > 2^n det(B−1)⋅vol(S)>2n,由 n n n维超球体体积结论进一步有 d e t ( B − 1 ) ⋅ v o l ( B ( 0 , λ 1 ) ) > 2 n \mathrm{det}(\bm{B}^{-1}) \cdot \mathrm{vol}(\mathcal{B}(0, \lambda_1)) > 2^n det(B−1)⋅vol(B(0,λ1​))>2n,即超球体 B ( 0 , λ 1 ) \mathcal{B}(0, \lambda_1) B(0,λ1​)逆变换后的对称凸体会严格把一个非零整数点包含在内而不是放在边界上,这就与 λ 1 \lambda_1 λ1​的定义冲突了。

换算一下,得到 λ 1 ≤ n ⋅ d e t ( L ) 1 / n \lambda_1 \leq \sqrt{n} \cdot \mathrm{det}(\mathcal{L})^{1/n} λ1​≤n ​⋅det(L)1/n。

证毕。

闵可夫斯基第二定理

定理3 对任意 n n n维满秩格 L ( B ) \mathcal{L}(\bm{B}) L(B),有 λ 1 ≤ ( ∏ i λ i ) 1 / n ≤ n ⋅ d e t ( L ) 1 / n \lambda_1 \leq \left( \prod_i \lambda_i \right)^{1/n} \leq \sqrt{n} \cdot \mathrm{det}(\mathcal{L})^{1/n} λ1​≤(∏i​λi​)1/n≤n ​⋅det(L)1/n。

证明略(欢迎补充完整证明)。

定理3指出全部 n n n个连续极小的几何平均数小于等于 n ⋅ d e t ( L ) 1 / n \sqrt{n} \cdot \mathrm{det}(\mathcal{L})^{1/n} n ​⋅det(L)1/n,用此约束 L \mathcal{L} L的形状。

致谢

  • Simons格密码公开课官网

Mathematics of Lattices - Simons Institute for the Theory of Computing

  • 哔哩哔哩中英双语视频(字幕组:重庆大学大数据与软件学院 后量子密码研究小组)

【中英字幕】Simons格密码讲座第1讲:格的数学定义_哔哩哔哩_bilibili

  • 其它格密码讲解课程和博文

格密码与最短向量上界_唠嗑!的博客-CSDN博客

格密码学习笔记(三):闵可夫斯基第一定理相关推荐

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

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

  2. 格密码学习笔记(六):格中模运算

    文章目录 格中取模运算 CVP和格的陪集 致谢 格中取模运算 定义(格的基本区域) P⊂Rn:{P+x∣x∈L}\mathcal{P} \subset \mathbb{R}^n : \{ \mathc ...

  3. openstack学习笔记三 创建第一个实例

    登陆admin 创建一个基本网络 镜像   已经安装好操作系统的硬盘文件 计算--镜像--创建镜像 名称  centos7.2-1511 镜像源  镜像地址 镜像地址    http://mirror ...

  4. python3常用模块_Python学习笔记三(常用模块)

    Python 学习笔记三 (常用模块) 1.os模块 os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果. os.name:返回当前操作系统名称( ...

  5. K8S 学习笔记三 核心技术 Helm nfs prometheus grafana 高可用集群部署 容器部署流程

    K8S 学习笔记三 核心技术 2.13 Helm 2.13.1 Helm 引入 2.13.2 使用 Helm 可以解决哪些问题 2.13.3 Helm 概述 2.13.4 Helm 的 3 个重要概念 ...

  6. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  7. Python学习笔记三之编程练习:循环、迭代器与函数

    Python学习笔记三之编程练习 1. 编程第一步 # 求解斐波纳契数列 #/user/bin/python3#Fibonacci series:斐波那契数列 #两个元素的总和确定了下一个数 a,b= ...

  8. Mongodb使用学习笔记(三)

    文章目录 Mongodb使用学习笔记(三) 1. MongoDB 更新文档 1.1 update() 1.2 save() Mongodb使用学习笔记(三) 1. MongoDB 更新文档 参考:Mo ...

  9. SurfaceFlinger学习笔记(三)之SurfaceFlinger进程

    概述 本系列是基于android Q 即android10 SurfaceFlinger学习笔记(一)应用启动流程 SurfaceFlinger学习笔记(二)之Surface SurfaceFling ...

最新文章

  1. 实验四 JSP数据库编程基础
  2. L-SNET:从区域定位到尺度不变的医学图像分割
  3. 梳理百年深度学习发展史-七月在线机器学习集训营助你把握深度学习浪潮
  4. 面试官给我挖坑:rm删除文件之后,空间就被释放了吗?
  5. python输出方格_Python蓝桥杯练习 剪格子
  6. github托管代码
  7. python必学的模块_Python必学的模块有哪些?
  8. 【深度学习】神经网络中几个常用的求导公式
  9. 二叉树经典题之将二叉树分层打印
  10. Linux下用户、组、权限操作
  11. 【转】Python的XML-RPC简介
  12. kubernetes实践分享
  13. C++ 第三课:常量转义字符
  14. 惠普m180n故障码04_惠普m180n打印机驱动(解决m180n打印机连接问题)V1.0 免费版
  15. Widows Git SSH
  16. minigui输入法汉字的获取
  17. win10更新(windows update)后,打印蓝屏解决方法
  18. OneNote中英文格式不同,OneNote无法修改英文字体,OneNote默认英文字体为Calibri无法修改的问题。
  19. JavaSE 实战 中奖判断
  20. 【详解】面试必问:SpringBoot自动配置原理

热门文章

  1. linux下oracle升级,Linux下升级ORACLE 10
  2. 从键盘输入一行英文字符串,只统计字符串中出现的每个英文字母的个数。
  3. js文本内容显示6行,超出6行出现显示更多按钮,css样式超出行数只能使用...去替代
  4. 【Python】快速排序求第N大的数字
  5. 从零开始入门密码学_1
  6. 宝塔面板网络流量上行和下行速度代表什么?
  7. 【原创】谈谈redis的热key问题如何解决
  8. php京东图床上传接口源码,京东图床上传api接口源码
  9. 仪表特效——AE在UI动效设计中的应用
  10. SPSS软件使用教程(2),SPSS统计分析软件 27中文版下载安装