title: 【线性代数】5-2:置换和余因子(Permutations and Cofactors)

categories:

  • Mathematic
  • Linear Algebra

    keywords:
  • Determinants
  • ‘Pivot Formula’
  • ‘Big Formula’
  • ‘Cofactors Formula’
  • Cofactors
  • Permutations

    toc: true

    date: 2017-11-03 09:50:36

Abstract: 行列式的几种求法,以及相关的衍生问题

Keywords: Determinants,‘Pivot Formula’,‘Big Formula’,‘Cofactors Formula’,Cofactors,Permutations

开篇废话

今天写的是行列式的三种计算方法,瞬间想到了孔乙己的茴香豆的四种写法,一个多少有点文化的人(被老师们解读为迂腐)却被一些没什么文化的人嘲笑挖苦;如果孔乙己是个那个时代的悲剧,那我们自己会不会成为这个时代的悲剧呢?读书无用论,某首富的“北大,清华大不如胆大”论,如果思维继续,结果最后肯定是喜闻乐见

The Pivot Formula

Pivot的方式求行列式的值,Pro. Stang说这是matlab的做法,也就是计算机求行列式一般通过消元后得到Pivot,然后将所有Pivots相乘,得到行列式的值,这里有个主意的地方,我们反复强调,如果不是满rank的话,Pivot必然在某些行或者列里面不存在,那么这个矩阵是奇异矩阵,行列式值为0。

能够支持Pivot的乘积等于行列式的原因是上文关于properties 中Rule5 是消元的主要过程,rule5 告诉我们消元前后行列式的值不变,但是有的时候我们不光要消元还要进行行交换,这个是随机次数的,所以行列式的值等于Pivot乘积的前面正负号不明确,故:

det(A)=±p11p22…pnn
det(A)=\pm p_{11}p_{22}\dots p_{nn}
det(A)=±p11​p22​…pnn​

从另一个角度讲,如果把消元过程用矩阵方式表达 PA=LUPA=LUPA=LU LU分解的矩阵形式,通过rule8 ,就能知道

det(P)det(A)=det(L)det(U)det(P)=±1det(L)=1det(A)=±det(U)
det(P)det(A)=det(L)det(U)\\
det(P)=\pm 1\\
det(L)=1\\
det(A)=\pm det(U)
det(P)det(A)=det(L)det(U)det(P)=±1det(L)=1det(A)=±det(U)

这样的话,U的对角线是由Pivot组成的,这个就是Pivot Formula的另一个切入点,都能证明行列式的pivot formula的正确性。

Pivot过程就是消元的过程,通过消元,得到行列式的值。

通过相乘的过程我们还能得到一个子矩阵的行列式,比如矩阵AAA的左上角的一块小的矩阵 A′A'A′ 他的行列式等于这个子矩阵覆盖的pivot的值(没有行变换)

det(A′)=p11p22…pkkif det(A′′)=p11p22…pk−1k−1pkk=det(A′)det(A′′)
det(A')=p_{11}p_{22}\dots p_{kk} \\
if \, det(A'')=p_{11}p_{22}\dots p_{k-1k-1}\\
p_{kk}=\frac{det(A')}{det(A'')}
det(A′)=p11​p22​…pkk​ifdet(A′′)=p11​p22​…pk−1k−1​pkk​=det(A′′)det(A′)​

The big Formula

本文为节选,完整内容地址:https://www.face2ai.com/Math-Linear-Algebra-Chapter-5-2转载请标明出处

【线性代数】5-2:置换和余因子(Permutations and Cofactors)的更多相关文章

  1. Pascal Hexagrammum Mysticum 的深度探索

        PASCAL . Hexagrammum Mysticum . (六角迷魂图) . 的深度探索 . 英中对比.英文蓝色,译文黑色,译者补充说明用紫红色 (已校完,但尚未定稿,想再整理并补充内容 ...

  2. POJ2369 Permutations(置换的周期)

    链接:http://poj.org/problem?id=2369 Permutations Time Limit: 1000MS   Memory Limit: 65536K Total Submi ...

  3. Codeforces 987E Petr and Permutations(数组的置换与复原 、结论)

    题目连接: Petr and Permutations 题意:给出一个1到n的序列,Petr打乱了3n次,Um_nik打乱了7n+1次,现在给出被打乱后的序列,求是谁打乱的. 题解:因为给出了一个3* ...

  4. 【UVA 11077】 Find the Permutations (置换+第一类斯特林数)

    Find the Permutations Sorting is one of the most used operations in real life, where Computer Scienc ...

  5. UVA - 11077 Find the Permutations (置换)

    Sorting is one of the most usedoperations in real life, where Computer Science comes into act. It is ...

  6. UVa 11077 Find the Permutations(置换+递推)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=35431 [思路] 置换+递推 将一个排列看作一个置换,分解为k个循 ...

  7. poj 2369 Permutations 置换

    题目链接 给一个数列, 求这个数列置换成1, 2, 3....n需要多少次. 就是里面所有小的置换的长度的lcm. #include <iostream> #include <vec ...

  8. poj 2369 Permutations (置换入门)

    题意:给你一堆无序的数列p,求k,使得p^k=p 思路:利用置换的性质,先找出所有的循环,然后循环中元素的个数的lcm就是答案 代码: #include <cstdio> #include ...

  9. 【CF736D】Permutations 线性代数+高斯消元

    [CF736D]Permutations 题意:有一个未知长度为n的排列和m个条件,第i个条件$(a_i,b_i)$表示第$a_i$个位置上的数可以为$b_i$.保证最终合法的排列的个数是奇数.现在有 ...

随机推荐

  1. C语言之反汇编揭秘

    title: 'C语言之反汇编揭秘' tags: 汇编与反汇编 categories: 汇编与反汇编 copyright: true abbrlink: 'b1c9' date: 2019-09-07 ...

  2. elasticsearch 集群详解

    ES为什么要实现集群 在单台ES服务器节点上,随着业务量的发展索引文件慢慢增多,会影响到效率和内存存储问题等. 如果使用ES集群,会将单台服务器节点的索引文件使用分片技术,分布式的存放在多个不同的物理 ...

  3. css border 三角形阴影(不规则图形阴影) & 多重边框的制作

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! border 的组合写法 border:border-width border-style border- ...

  4. 实现Bootstrap表格拖拽

    实现Bootstrap表格拖拽: 需要引入jquery.min.js.bootstrap相关文件,以及jquery.dragsort-0.5.2.js 代码如下: <html> <h ...

  5. 表格中的DOM

    通过DOM来操作table跟在html中操作table是不一样的,下面来看看怎样通过DOM来操作table. 按照table的分布来创建: <table> <thead> &l ...

  6. python matplotlib绘制六种可视化图表

    1. 折线图 绘制折线图,如果你数据不是很多的话,画出来的图将是曲折状态,但一旦你的数据集大起来,比如下面我们的示例,有100个点,所以我们用肉眼看到的将是一条平滑的曲线. 这里我绘制三条线,只要执行 ...

  7. mimikatz记录

    mimikatz需要管理员权限运行 vps监听 nc -lvp 4444 服务器管理员权限执行 mimikatz.exe ""privilege::debug"" ...

  8. c#界面卡死处理方法

    方法一: 设置属性: Control.CheckForIllegalCrossThreadCalls = false; 开启一个新线程 Thread th = new Thread(() => ...

  9. js 执行完setTimeout再接着执行函数

    var counter = 0; function increase(){ var d = jQuery.Deferred(); var doIncrease = function() { if(co ...

  10. RT-Thread--内核基础

    内核介绍 内核处于硬件层之上,内核部分包括内核库.实时内核实现. 实时内核的实现包括:对象管理.线程管理及调度器.线程间通信管理.时钟管理及内存管理等等,内核最小的资源占用情况是 3KB ROM,1. ...