格密码与线性代数

目录

一. 幺模矩阵

二. Gram-Schmidt 正交化

三. 矩阵分解

四. 格基本区

五. 对偶格基

六. 矩阵伪逆

七. 正定矩阵

八. 矩阵转置

九. 奇异值分解(SVD分解)


格密码中格基是矩阵,格点是向量。本文章梳理一些格密码常用到的一些线性代数的知识点。

一. 幺模矩阵

对格基乘以整数幺模矩阵,会得到新的格基,该格基形成的格点与原来的格点一样。幺模矩阵U\in Z^{m\times m}满足|det(U)|=1。幺模矩阵的逆U^{-1}\in Z^{m\times m}依旧为幺模矩阵。

二. Gram-Schmidt 正交化

将格基的一列看成一个向量,也就是V=\lbrace v_1,\cdots,v_k\rbrace\in R^n。假定Gram-Schmidt 正交化是按顺序进行的,正交化后记作\tilde V=\lbrace \tilde v_1,\cdots,\tilde v_k\rbrace,可以将\tilde v_i看成向量v_i的分量。对格密码而言,最重要的性质则是\tilde v_ispan(v_1,\cdots,v_{i-1})垂直。

三. 矩阵分解

对格基矩阵V可作如下分解:

V=QDU

其中Q\in R^{n\times k}为正交阵,D\in R^{k\times k}为对角阵(对角线的值均大于等于0),U\in R^{k\times k}为上三角矩阵且对角线元素的值均为1。

通常格基中的向量都是线性独立的,所以根据线性代数的基础,我们知道这种分解也是唯一的。而且Gram-Schmidt 正交化后向量的长度与矩阵D对角线元素的值是有关系的,也就是||\tilde v_i||=d_{i,i},其中d_{i,i}为矩阵D对角线元素的值。

四. 格基本区

给定任意格基V=\lbrace v_1,\cdots,v_n\rbrace,可形成格基本区。如果把该基本区进行平移,让原点处于该基本区的中心,也就是所谓的origin-centered parallelepiped,如下:

P_{1/2}(V)=V\cdot [-\frac{1}{2},\frac{1}{2}]^n

五. 对偶格基

原格基为V,对偶格基为V^*,利用如何公式可计算对偶格基:


V^*=V^{-t}=(V^{-1})^t

通俗来讲就是先对格基求逆,再转置,就是对偶格的格基。整个过程非常丝滑。

其实对偶格Gram-Schmidt 正交化的结果与原来格基也有关系,先上结论:

\tilde v_i^*=\tilde v_i/||\tilde v_i||^2

其实就是向量长度互为倒数,如下:

||\tilde v_i^*||=1/||\tilde v_i||

六. 矩阵伪逆

有些方阵X不能直接求逆,这个时候就需要利用伪逆(有的时候也叫Moore-Penrose伪逆),为方便后续解释,暂时记为X^{+}。原矩阵和伪逆矩阵需要满足:

(XX^+)X=X

反过来也经常利用:

X^+(XX^+)=X^+

需要注意的是XX^+不等于单位阵,但是XX^+X^+X互为对称矩阵(其实就是转置相等)。

在格密码中,矩阵和伪逆矩阵的空间是不变的,也就是:

span(X)=span(X^+)

七. 正定矩阵

给定一个对称矩阵\Sigma\in R^{n\times n},对任意向量x\in R^n,都满足如下不等式:

x^t\Sigma x>0

则称该矩阵\Sigma为正定矩阵(positive definite),通常记为\Sigma>0

当然,如果不等式改为:

x^t\Sigma x\geq 0

则称该矩阵为半正定矩阵,记为\Sigma\geq 0

实际上,正定矩阵一定可以求逆,并且逆矩阵也为正定矩阵,也就是\Sigma^{-1}>0

但是半正定矩阵不一定可以求逆,只能求伪逆,其伪逆也为半正定矩阵,也就是\Sigma^+\geq 0

在格密码论文中,如果看到\Sigma_1>\Sigma_2,其实是想表达两个矩阵相减为正定矩阵(\Sigma_1-\Sigma_2)>0。这个结论换成半正定矩阵也是成立的。另外,如果原矩阵满足这种不等关系,逆矩阵也有类似的结论。换句话说,如果\Sigma_1\geq \Sigma_2\geq 0,可得\Sigma_2^+\geq \Sigma_1^+\geq 0

八. 矩阵转置

“七”中谈到的对称矩阵有一个非常简单的实现方式。给定任意矩阵B,将该矩阵的转置乘以本身,得到新的矩阵则为对称矩阵。也就是,\Sigma=BB^t。另外其实很好证明,这个矩阵\Sigma则是一个半正定矩阵,因为:

x^t\Sigma x=\langle B^tx,B^tx\rangle=||B^tx||^2\geq 0

当然,熟悉线代的小伙伴都知道,以上运算要求矩阵B非奇异(nonsingular)。

这个结论可以反推。如果已知某矩阵\Sigma>0,那么该矩阵存在平方根,也就是B=\sqrt \Sigma。根据半正定矩阵的性质,任意\Sigma\geq 0都存在平方根,而且求平方根的过程多项式时间复杂度内可以解决(比如Cholesky分解法)。

九. 奇异值分解(SVD分解)

奇异值分解,英语为singular value decomposition,经常在格密码中简称为SVD分解。奇异值分解主要是给非方阵准备的,对任意矩阵B\in R^{n\times k},可以作如下分解:

B=QDP^t

其中Q\in R^{n\times n},P\in R^{k\times k}均为正交矩阵,D\in R^{n\times k}为对角阵。对角线上的值通常以降序排列,并且每个值均大于等于0。其实实际上,对角线上的值就是矩阵B的奇异值s_i\geq 0。如果想求最大的奇异值,通常利用如下:

s_1(B)=max_u||Bu||=max_u||B^tu||

其中,u为任意单位向量u\in R^k

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker使用3-Share the application

写在前面 本文主题是Share the application,这里是链接。本文主要学习如何将镜像image上传到Docker Hub 创建仓库 创建并登录Docker Hub登录后点击Create Repository按钮仓库名填写getting-started,确保仓库权限为公开的点击Create按钮 推送镜像 在…

linux系统下可用的语音转文字方法(Fish Speech)

推荐一款Linux下可用的,全新的文本转语音(TTS),计算机朗读文本—Fish Speech Fish Speech具有高度自定义和灵活性,目前支持Linux和Windows系统。 运行需要2GB的GPU内存进行运算,使用Flash-Attn进行推理和训练,支持VQGA…

【Python】—— pandas数据处理

Pandas 提供了丰富的数据处理功能,涵盖了从数据导入、清理、转换到分析和可视化的方方面面。以下是一份关于 Pandas 数据处理的主要内容: 1. 数据导入和导出 导入数据: import pandas as pd# 从 CSV 文件导入 df pd.read_csv(data.csv)# 从…

闵帆老师《论文写作》课后感悟

文章目录 前言一、学术论文二、使用Latex工具撰写论文三、论文题目四、论文摘要五、论文关键词六、论文引言七、文献综述八、算法伪代码九、实验部分十、论文结论十一、参考文献十二、其他注意事项总结 前言 本篇文章是学习了本学期《论文写作》课程之后,收获良多。…

spring boot版本升级遇到的一些问题

背景:由于项目需求,需要将nacos 1.4.6版本升级到2.x版本,由此引发的springboot、springcloud、springcloud Alibaba一系列版本变更。 旧版本分别为: Spring Boot 2.3.5.RELEASE Spring Cloud Hoxton.SR9 Spring Cloud Alibaba 2.2…

【09】ServiceEntry使用案例

案例背景 为了便于测试,我们用非网格化的名称空间中运行的应用来模拟运行于VM/萝服务上的外部服务,假设: 在网格外部运行nginx服务,有2个实例 Nginx2001:监听地址为172.29.1.201:8091,nginx版本为1.20nginx2002&#x…

HTML_有哪些字体样式及使用

文章目录 🐱‍🐉一、字体样式的基本概念:🐱‍🐉二、css字体样式属性有:🤣1、设置字体类型(font-family)🤣2、设置字体大小(font-size)…

使用DETR 训练VOC数据集和自己的数据集

一、数据准备 DETR用的是COCO格式的数据集。 如果要用DETR训练自己的数据集,直接利用Labelimg标注成COCO格式。如果是VOC数据集的话,要做一个格式转换,yolo格式的数据集,转换成coco格式 COCO数据集的格式类似这样,a…

JAVAEE初阶 多线程进阶(一)

进阶面试题 一. 锁拓展1.1 乐观锁与悲观锁1.2 轻量级锁与重量级锁1.3 自旋锁和挂起等待锁1.4 普通互斥锁与读写锁1.5 公平锁与非公平锁1.6 可重入锁和不可重入锁 二.锁的优化策略2.1 锁的自适应2.2 锁消除2.3 锁粗化 三.CAS 一. 锁拓展 1.1 乐观锁与悲观锁 乐观锁 : 加锁前,预…

Linux IO模式之io_uring

1. 概述 作为科普性质的文章,在介绍 io_uring 之前,我们可以先整体看一下 linux 的 IO 模型大体有哪些类型。 图 1.1 从图 1.1 中可以看出,linux 的 IO 主要可以分为两个大类,而我们今天要介绍的 io_uring 就属于其中的 kernel …

从零开始构建高效的网校平台:在线教育系统源码的开发指南

随着科技的不断发展,在线教育在现代社会中变得愈发重要。本文将为您提供一份详尽的指南,从零开始构建高效的网校平台,覆盖在线教育系统源码的关键开发步骤。 第一步:明确需求和目标 在开始之前,明确您的网校平台的需…

vue看板使用电子数字

1、下载字体 https://www.dafont.com/theme.php?cat302&text0123456789 2、下载后将压缩包解压,并上传到https://link.csdn.net/?targethttps%3A%2F%2Fwww.fontsquirrel.com%2Ftools%2Fwebfont-generator 然后下载 3、项目中使用 在Vue项目中的assets中新建fonts文件夹…

k8s集群内部署nexus

一、前言 在k8s集群中部署nexus服务需要使用到pv、pvc服务来存储nexus的数据,需要使用service服务来提供对外访问nexus服务的端口,需要使用deployment服务来管理nexus服务,接下来就是用这些服务来在k8s集群中搭建nexus,pv服务使用…

系统设计——系统安全

HTTPS 是如何工作的? 安全超文本传输​​协议(HTTPS)是超文本传输​​协议(HTTP)的扩展。HTTPS 使用传输层安全性(TLS)传输加密数据。如果数据在网上被劫持,劫持者得到的只是二进制…

IDEA tomcat内存不足

-Xms256m -Xmx256m -XX:MaxNewSize256m -XX:MaxPermSize256m

密码明文传输漏洞 原理以及修复方法

漏洞名称 : 密码明文传输 漏洞描述 : 密码明文传输一般存在于web网站登录页面,用户名或者密码采用了明文传输,容易 被嗅探软件截取。 检测条件 :1、 已知Web网站具有登录页面。 检测方法: 1、 找到网站或者web系统登录页面。…

c jpeg 理论霍夫曼 DC AC表,c程序实现正向逆向转换

此4张表是理论表,不是针对某张图片的特定表。如程序不统计生成某图片的专用霍夫曼表,应该也可用理论表代用。 1.亮度DC表 左边第一列是二进制位数,就是对此位数编码 中间一列是生成比特流的位数,右边是生成的比特流。 2.色度DC…

NFTScan | 12.11~12.17 NFT 市场热点汇总

欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总。 周期:2023.12.11~ 2023.12.17 NFT Hot News 01/ Pudgy Penguins 衍生 NFT Lil Pudgys 过去一天成交量超 1000 枚 ETH,位居第二 12 月 11 日,据 OpenSea 数据显示&#…

智慧养老:创新科技让老年生活更美好

智慧养老:创新科技让老年生活更美好 随着人口老龄化的加剧,智慧养老成为了关注焦点。智慧养老以创新科技为核心,旨在改善老年人的生活品质、促进健康、增强安全感和社会融入感。本文将详细介绍智慧养老的关键技术和应用场景,带您了…