LU 分解及 Matrix determinant lemma

news/2024/10/18 10:01:07/文章来源:https://www.cnblogs.com/275307894a/p/18473629

LU 分解

对于一个矩阵 \(\mathbf A\),求出 \(\mathbf A=\mathbf {LU}\),其中 \(\mathbf L\) 是下三角矩阵,\(\mathbf U\) 是上三角矩阵的过程称为 LU 分解。

一般矩阵的 LU 分解可以消成行列式的同时记录逆矩阵,复杂度同高斯消元。

一个比较好的性质是 \(|\mathbf A|=|\mathbf L||\mathbf U|\),如果能利用 \(\mathbf A\) 的特殊性质快速分解出来,因为 \(|\mathbf L|,|\mathbf U|\) 就是对角线乘积,所以 \(|\mathbf A|\) 可以快速计算。

比如 \(\mathbf A_{i,j}=\gcd(i,j)\)

对其施以欧拉反演,可以得到 \(\mathbf A_{i,j}=\sum\limits_{d\mid \gcd(i,j)}\varphi(d)\)

则可以拆成两个矩阵:\(\mathbf L_{i,j}=[j\mid i]\varphi(j),\mathbf U_{i,j}=[i\mid j]\),则容易验证 \(\mathbf A=\mathbf L\mathbf U\),且 \(\mathbf L,\mathbf U\) 满足三角矩阵条件。因此 \(|\mathbf A|=\prod\limits_{i=1}^{n}\varphi(i)\)

进一步的,如果 \(\mathbf A_{i,j}=f(\gcd(i,j))\),则对于满足 \(f_i=\sum\limits_{j\mid i}g_j\),即 \(g\)\(f\) 的高维差分,\(|\mathbf A|=\prod\limits_{i=1}^{n}g(i)\)

一个可能有用的论文

Matrix determinant lemma

\(\mathbf{U}\)\(n\times m\) 的矩阵,\(\mathbf{V}\)\(m\times n\) 的矩阵,\(\mathbf{I}_x\)\(x\) 阶单位矩阵。

主要定理是:

\[|\mathbf{I}_n+\mathbf{U}\mathbf{V}|=|\mathbf{I}_m+\mathbf{VU}| \]

证明可以考虑构造矩阵相乘:

\[\begin{pmatrix}\mathbf{I}_n & \\ \mathbf{V} & \mathbf{I_m}\end{pmatrix} \begin{pmatrix}\mathbf{I}_n+\mathbf{UV} & \mathbf{U}\\ & \mathbf{I_m}\end{pmatrix} \begin{pmatrix}\mathbf{I}_n & \\ \mathbf{-V} & \mathbf{I_m}\end{pmatrix} = \begin{pmatrix}\mathbf{I}_n & \mathbf{U}\\ & \mathbf{VU}+\mathbf{I_m}\end{pmatrix} \]

对两边取行列式即可。

将其扩展到一般的情况,令 \(A\)\(n\times n\) 矩阵,则有

\[|\mathbf{A}+\mathbf{UV}|=|\mathbf A||\mathbf{I}_n+\mathbf{UVA}^{-1}|=|\mathbf{A}||\mathbf{I}_n+\mathbf{V}\mathbf{A}^{-1}\mathbf{U}| \]

假设我们要求的是一个形如 \(|\mathbf{D}-\mathbf{G}|\) 的行列式,且 \(\mathbf{G}=\mathbf{UV}\)\(\mathbf D\) 易求行列式和逆,则 MDL 的最大作用是将 \(\mathbf{G}\) 原本隐藏在这个乘法里的性质显露出来。一个简单的应用例子:如果 \(m\) 远小于 \(n\),则现在只需要做一次 \(m\times n\times m\) 的矩阵乘法并对一个阶为 \(m\) 的矩阵求行列式,而不是原来的 \(n\times m\times n\) 的矩阵乘法以及阶为 \(n\) 的矩阵求行列式。

其相比于 LU 分解来说不要求分解出来的一定是两个对角矩阵,适用性更加广泛,但是性质要弱一点。

PA 2022 Drzewa rozpinające

使用矩阵树定理,我们要求的值即为 \(|\mathbf{D}-\mathbf{G}|\),其中 \(\mathbf D\) 为度数矩阵,\(\mathbf G\) 为邻接矩阵。

\(\mathbf D\) 容易计算,并且由于其为对角矩阵,逆和行列式都容易计算。考虑仍然对 \(\mathbf G\) 施以欧拉反演,可以构造出两个 \(n\times m\) 的矩阵 \(\mathbf U_{i,j}=[j\mid a_i]\varphi(j),\mathbf V_{i,j}=[i\mid a_j]\),满足 \(\mathbf G=\mathbf U \mathbf V\)

使用 MDL,可以得到我们要求的就是 \(|\mathbf D||\mathbf I_n+\mathbf V\mathbf A^{-1}\mathbf U|\)

你说得对,但是这看上去还是要求阶为 \(5000\) 矩阵的行列式啊?

考虑矩阵 \(\mathbf V\mathbf A^{-1}\mathbf U\) 的实际意义,会发现只有 \(\operatorname{lcm}(i,j)\leq m\) 的位置有值,因此这个矩阵非常稀疏,且值主要集中在上方的一个类似于反比例函数的区域,所以从下到上消元速度非常快。时间复杂度可以(?)看作 \(O(n^2)\) 的。

submission

AGC060F Spanning Trees of Interval Graph

使用矩阵树定理,直接求行列式需要对一个很大的矩阵消元,爆了。

发现可以使用点减边容斥计算这个 \(\mathbf G\),这样的话使用 MDL 之后就只需要对一个阶 \(2n-1\) 的矩阵求行列式,于是就对完了。

\(\mathbf D,\mathbf V\mathbf A^{-1}\mathbf U\) 均容易根据实际意义二维前缀和求得,时间复杂度 \(O(n^3)\)

submission

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站后台如何修改网页?公司网站修改怎么做?

要修改网站后台中的网页,通常涉及以下几个步骤:登录后台管理系统:使用管理员账号和密码登录到网站的后台管理系统。导航至页面管理:在后台管理系统中找到“页面管理”、“内容管理”或类似名称的模块。选择要编辑的页面:在页面列表中找到你需要修改的页面,点击编辑按钮。…

基于 Python + Vue3!一个轻量级的域名和 SSL 证书监测平台!

Domain Admin —— 一个基于 Python + Vue3.js 技术栈实现的域名和 SSL 证书监测平台。大家好,我是 Java陈序员。 在企业开发中,由于业务众多,涉及到很多业务域名证书,证书过期由于遗忘常常未能及时续期,导致线上访问异常,给企业带来损失! 今天,给大家介绍一个轻量级的…

怎么修改网站ftp密码?

修改网站FTP密码的方法取决于你使用的FTP服务提供商或Web主机控制面板。以下是一些常见的方法:通过cPanel修改FTP密码:登录到你的cPanel账户。 在文件部分找到“FTP 账户”选项并点击。 找到你想要更改密码的FTP账户。 点击“更改密码”或类似的按钮。 输入新密码,并确认。 …

麻将计分器微信小程序的开发

如何开发微信小程序 前言 因为最近沉迷和朋友们一起下班去打麻将,他们推荐了一个计分的小程序,就不需要每局都转账或者用扑克牌记录了,但是这个小程序不仅打开有广告,各个页面都植入了广告,用起来十分不适。 于是我就心里暗自下定决心,一定要撸一个没有广告的小程序。一周…

python+selenium+pycharm自动化环境搭建

一、python环境搭建: 工具及驱动: 通过百度网盘分享的文件:自动化学习链接:https://pan.baidu.com/s/1_-KX_s1WeLBa7UV3y0H3zQ 提取码:m8nx 1. python下载地址: 官网下载地址:https://www.python.org/57 2.根据自己的电脑环境下载安装即可; 3.环境变量配置:将D:\pytho…

模板网站可以修改内容吗?网站修改资料页面模板?

模板网站通常提供了多种方式让用户自定义和修改内容,具体方法取决于所使用的模板平台或工具。以下是几种常见的修改方式:文本编辑:大多数模板网站允许用户直接在页面上编辑文本内容,如标题、段落等。 图片更换:用户可以通过上传自己的图片来替换模板中的默认图片。 颜色调…

TowardsDataScience-博客中文翻译-2022-五十二-

TowardsDataScience 博客中文翻译 2022(五十二)原文:TowardsDataScience 协议:CC BY-NC-SA 4.0一维信号的迁移学习原文:https://towardsdatascience.com/transfer-learning-with-a-one-dimensional-signal-76a0d543e9aa加上数据洞察力图片作者。 目录——简介 ——信号统计…

网站中的修改在后台哪里?

对于大多数网站来说,修改内容通常需要通过后台管理系统进行。具体步骤可能因不同网站而异,但一般流程如下:登录后台:首先,你需要登录到网站的后台管理系统。这通常需要一个管理员账号或具有相应权限的账号。 找到内容管理:登录后,查找“内容管理”、“页面管理”或类似名…

TowardsDataScience-博客中文翻译-2022-四十四-

TowardsDataScience 博客中文翻译 2022(四十四)原文:TowardsDataScience 协议:CC BY-NC-SA 4.0Python 中的求根方法原文:https://towardsdatascience.com/root-finding-methods-from-scratch-in-python-84040c81a8ba使用 Python 的二分法、牛顿法和割线法数学求根算法 介绍…

TowardsDataScience-博客中文翻译-2022-四十九-

TowardsDataScience 博客中文翻译 2022(四十九)原文:TowardsDataScience 协议:CC BY-NC-SA 4.0测量误差对线性回归模型的影响原文:https://towardsdatascience.com/the-effect-of-measurement-errors-on-a-linear-regression-model-c853bb689974图片由皮克斯贝 ( 牌照)的安…

TowardsDataScience-博客中文翻译-2022-二十九-

TowardsDataScience 博客中文翻译 2022(二十九)原文:TowardsDataScience 协议:CC BY-NC-SA 4.0如何使用计算机视觉读取酒瓶上的标签?(第一部分)原文:https://towardsdatascience.com/how-to-read-a-label-on-a-wine-bottle-using-computer-vision-part-1-25447f97a761欢迎…

格点拉格朗日插值与PME算法

本文介绍了使用基于格点拉格朗日插值法的Particle Mesh Ewald算法,降低分子力场中的静电势能项计算复杂度的基本原理。静电势能的计算在Ewald求和框架下被拆分成了远程相互作用项和短程相互作用项,其中短程相互作用项关于实空间的点电荷间距快速收敛,而远程相互作用项在倒易…