行列式

行列式（），记作formula_1或formula_2，是一个在方块矩阵上计算得到的标量。行列式可以看作是有向面积或体积的概念在一般的欧几里得空间中的推广。或者说，在欧几里得空间中，行列式描述的是一个线性变换对“体积”所造成的影响。无论是在线性代数、多项式理论，还是在微积分学中（比如说换元积分法中），行列式作为基本的数学工具，都有着重要的应用。
行列式概念最早出现在解线性方程组的过程中。十七世纪晚期，关孝和与莱布尼茨的著作中已经使用行列式来确定线性方程组解的个数以及形式。十八世纪开始，行列式开始作为独立的数学概念被研究。十九世纪以后，行列式理论进一步得到发展和完善。矩阵概念的引入使得更多有关行列式的性质被发现，行列式在许多领域都逐渐显现出重要的意义和作用，其定义也被推广到诸如线性自同态和向量组等结构上。
行列式的特性可以被概括为一个交替多线性形式，这个本质使得行列式在欧几里德空间中可以成为描述“体积”的函数。
记法.
矩阵formula_3的行列式记作formula_1。行列式经常使用竖直线记法（例如：克莱姆法则和子式）。例如，对于一个矩阵：
formula_1也记作formula_2，或以细长的垂直线取代矩阵的方括号，明确的写为：
当这个记法用于绝对值时，其作用对象为数，矩阵的绝对值是无定义的。矩阵范数通常以双垂直线来表示（如：formula_9），且可以使用下标。故不会与二者造成混淆。
直观定义.
一个formula_10阶方块矩阵formula_3的行列式可直观地定义如下：
formula_12
其中，formula_13是集合formula_14上置换的全体，即集合formula_14到自身上的一一映射（双射）的全体；
formula_16表示对formula_13全部元素的求和，即对于每个formula_18，formula_19在加法算式中出现一次；对每一个满足formula_20的数对formula_21，formula_22是矩阵formula_3的第formula_24行第formula_25列的元素。
formula_26表示置换formula_18的符号差，具体地说，满足formula_28但formula_29的有序数对formula_21称为formula_31的一个逆序。
如果formula_31的逆序共有偶数个，则formula_33，如果共有奇数个，则formula_34。
举例来说，对于3元置换formula_35（即是说formula_36，formula_37，formula_38）而言，由于1在2后，1在3后，所以共有2个逆序（偶数个），因此formula_39，从而3阶行列式中项formula_40的符号是正的。但对于三元置换formula_41（即是说formula_42，formula_43，formula_38）而言，可以数出共有3个逆序（奇数个），因此formula_34，从而3阶行列式中项formula_46的符号是负号。
注意到对于任意正整数formula_10，formula_13共拥有个元素，因此上式中共有formula_49个求和项，即这是一个有限多次的求和。
对于简单的2阶和3阶的矩阵，行列式的表达式相对简单，而且恰好是每条主对角线（左上至右下）元素乘积之和减去每条副对角线（右上至左下）元素乘积之和（见图中红线和蓝线）。
但对于阶数formula_52的方阵formula_3，这样的主对角线和副对角线分别只有formula_10条，由于formula_3的主、副对角线总条数formula_56的元素个数
因此，行列式的相加项中除了这样的对角线乘积之外，还有其他更多的项。例如4阶行列式中，项formula_57就不是任何对角线的元素乘积。不过，和2、3阶行列式情况相同的是，阶行列式中的每一项仍然是从矩阵中选取个元素相乘得到，且保证在每行和每列中都恰好只选取一个元素，而整个行列式恰好将所有这样的选取方法遍历一次。
另外，formula_58矩阵的每一行或每一列也可以看成是一个formula_10元向量，这时矩阵的行列式也被称为这formula_10个formula_10元向量组成的向量组的行列式。
几何意义：二维和三维欧氏空间中的例子.
行列式的一个自然的源起是维平行体的体积。行列式的定义和维平行体的体积有着本质上的关联。
二维向量组的行列式.
在一个二维平面上，两个向量formula_62和formula_63的行列式是：
比如说，两个向量formula_65和formula_66的行列式是：
经计算可知，当系数是实数时，行列式表示的是向量formula_68和formula_69形成的平行四边形的有向面积，并有如下性质：
其几何意义是：以同一个向量formula_76作为一条边的两个平行四边形的面积之和，等于它们各自另一边的向量formula_77和formula_78加起来后的向量：formula_79和formula_76所构成的平行四边形的面积，如左图中所示。
三维向量组的行列式.
在三维的有向空间中，三个三维向量的行列式是：
比如说，三个向量formula_82、formula_83和formula_84的行列式是：
当系数是实数时，行列式表示formula_68、formula_69和formula_88三个向量形成的平行六面体的有向体积，也叫做这三个向量的混合积。同样的，可以观察到如下性质：
基底的选择.
在以上的行列式中，我们不加选择地将向量在所谓的正交基（即直角坐标系）下分解，实际上在不同的基底之下，行列式的值并不相同。这并不是说平行六面体的体积不唯一。恰恰相反，这说明体积的概念依赖于衡量空间的尺度，也就是基底的取法。用基底的变换可以看作线性映射对基底的作用，而不同基底下的行列式代表了基变换对“体积”的影响。可以证明，对于所有同定向的标准正交基，向量组的行列式的值在绝对值意义上是一样的。也就是说，如果我们选择的基底都是“单位长度”，并且两两正交，那么在这样的基之下，平行六面体的体积的绝对值是唯一的。
线性变换.
设是一个一般的维的有向欧几里得空间。一个线性变换把一个向量线性地变为另一个向量。比如说，在三维空间中，向量(formula_99)被映射到向量(formula_100)：
其中formula_102、formula_103、formula_104是系数。如右图，正方体（可以看作原来的一组基形成的）经线性变换后可以变成一个普通的平行六面体，或变成一个平行四边形（没有体积）。这两种情况表示了两种不同的线性变换，行列式可以将其很好地分辨出来（为零或不为零）。
更详细地说，行列式表示的是线性变换前后平行六面体的体积的变化系数。如果设左边的正方体体积是一，那么中间的平行六面体的（有向）体积就是线性变换的行列式的值，右边的平行四边形体积为零，因为线性变换的行列式为零。这里我们混淆了线性变换的行列式和向量组的行列式，但两者是一样的，因为我们在对一组基作变换。
行列式与空间定向.
以上二维和三维行列式的例子中，行列式被解释为向量形成的图形的面积或体积。面积或体积的定义是恒正的，而行列式是有正有负的，因此需要引入有向面积和有向体积的概念。负的面积或体积在物理学中可能难以理解，但在数学中，它们和有向角的概念类似，都是对空间镜面对称特性的一种刻画。如果行列式表示的是线性变换对体积的影响，那么行列式的正负就表示了空间的定向。
如上图中，左边的黄色骰子（可以看成有单位的有向体积的物体）在经过了线性变换后变成中间绿色的平行六面体，这时行列式为正，两者是同定向的，可以通过旋转和拉伸从一个变成另一个。而骰子和右边的红色平行六面体之间也是通过线性变换得到的，但是无论怎样旋转和拉伸，都无法使一个变成另一个，一定要通过镜面反射才行。这时两者之间的线性变换的行列式是负的。可以看出，线性变换可以分为两类，一类对应着正的行列式，保持空间的定向不变，另一类对应负的行列式，颠倒空间的定向。
一般域上的行列式：严格的定义.
由二维及三维的例子，可以看到一般的行列式应该具有怎样的性质。在formula_10维欧几里得空间中，作为“平行多面体”的“体积”的概念的推广，行列式继承了“体积”函数的性质。首先，行列式需要是线性的，这可以由面积的性质类比得到。这里的线性是对于每一个向量来说的，因为当一个向量变为原来的formula_102倍时，“平行多面体”的“体积”也变为原来的formula_102倍。其次，当一个向量在其它向量组成的“超平面”上时，formula_10维“平行多面体”的“体积”是零（可以想像三维空间的例子）。也就是说，当向量线性相关时，行列式为零。在一般系数域上的线性空间中，行列式也正是由这样的特性所刻划的：
交替多线性形式（多重线性函数）.
行列式是系数域为formula_109的有限维线性空间formula_110上射到formula_109的交替线性形式。
具体来说，设formula_110是一个系数在域formula_109上的有限维线性空间，维数为formula_10。一个formula_110上的交替formula_116线性形式是指满足以下性质的函数formula_117：
所有上的交替formula_116线性形式的集合记作formula_124。
定理：
formula_124的维度是1。也就是说，设formula_126是formula_110的一组基，那么，所有的交替formula_116线性形式formula_129都可以写成
其中formula_131是在基formula_132下的展开。
证明：
对任一个formula_116线性形式formula_117，考虑将formula_135依照多线性性质展开，
这时，由交替性，formula_137当且仅当formula_138是formula_139的一个排列，所以有
这里，formula_141。
向量组的行列式.
设formula_126是formula_110的一组基，根据上面的定理和线性形式的性质，可以定义formula_132下的行列式。
定义：
formula_110上的一组基formula_146的行列式是唯一一个满足：
的交替线性形式formula_148。
其中的唯一性是因为如果有两个交替formula_116线性形式满足条件，则它们的差在一组基上为0，从而恒等于0。于是，一组基上的一个向量组的行列式就是：
定义：
确定了formula_110上的一组基formula_132后，向量组formula_152在formula_132下的行列式是：
可以见到这个定义与之前直观的定义是吻合的，它有时也被称作莱布尼兹公式。
基变更公式.
设formula_132与formula_158是向量空间中的两组基，则将上面定理中的formula_159改为formula_160就得到向量组在两组基下的行列式之间的关系：
矩阵的行列式.
设formula_162为所有定义在系数域formula_109上的formula_58矩阵的集合。将formula_58矩阵formula_166（formula_166的元素记为formula_168 )的formula_10列写成formula_170，formula_171可以看作是formula_172的正则基上的向量。矩阵formula_166的行列式定义为向量组formula_170的行列式。这里的向量都在formula_172的正则基上展开，因此矩阵的行列式不依赖于基的选择。
定义：
矩阵formula_166的行列式
这样定义的矩阵formula_166的行列式与向量组的行列式有同样的性质。单位矩阵的行列式为1，若矩阵的某几行线性相关，则它的行列式为零。
由莱布尼兹公式，可以证明矩阵行列式的一个重要性质：
定理：
一个矩阵的行列式等于它的转置矩阵的行列式：formula_179，
也就是说矩阵的行列式既可以看作formula_10个行向量的行列式，也可以看作formula_10个列向量的行列式。因此也可以通过行向量组来定义矩阵行列式，并且得到的定义是等价的。
证明：
矩阵formula_3的转置矩阵的行列式是：
令formula_184，由于每个排列都是双射，所以上式变成：
令formula_186，当formula_31取遍所有置换时，formula_188也取遍所有排列。另一方面，formula_189，因此而且formula_190。所以
线性变换的行列式.
设formula_159是formula_10维线性空间formula_110到自身的线性变换（自同态），对于给定的一组基，可以定义线性变换在这组基下的行列式。
定义：
设formula_132是formula_110的一组基。设formula_159在formula_132的变换矩阵为formula_199，那么formula_159在formula_132下的行列式就是：
的变换矩阵满足formula_203
也就是说对所有的向量组formula_204，
可以证明，在的任意一组基下的变换矩阵的行列式都是相等的。
证明：
考虑映射formula_207使得formula_208被映射到
formula_207是一个交替线性形式，因此由前面证的定理，formula_207和formula_212只相差一个系数。
而由变换矩阵的性质可以知道：formula_214
也就是说
对于另外一组基formula_158，运用基变更公式，可以得到：
从而可以得出formula_219等于formula_220。于是formula_219是一个不依赖于基，只依赖于的数。
因此线性变换的行列式定义可以修改为不依赖于基的形式：
定义：
设线性变换在某组基下的变换矩阵为formula_199，那么formula_159的行列式就是：
前一节里对正方体做线性变换时，formula_208是原来的基，formula_226，因此可以混淆向量组的行列式和线性变换的行列式。
特别地，行列式为1的线性变换保持向量组的行列式，它们构成一般线性群formula_227的一个子群formula_228，称作特殊线性群。可以证明，formula_228是由所有的错切生成的，即所有具有如下形式的矩阵代表的线性变换：
其中formula_231是只在第formula_24行第formula_25列处系数取1，其余系数为0的矩阵。也就是说，错切变换保持向量组形成的“平行多面体”的体积。同样，可以证明两个相似矩阵有相等的行列式。
系数的取值.
以上的定义中都假设矩阵的系数取自域formula_234中，实际上矩阵的系数可以是任意的交换环formula_235，这时有限维线性空间变为以formula_236为基的自由formula_237模，而相应的关于行列式的定义和性质依然成立（在可定义的范畴内）。如果矩阵系数是非交换环的话，以上的行列式定义将不再唯一。1845年，阿瑟·凯莱首次开始研究非交换环上行列式定义的问题。他注意到，对于系数是四元数（不可交换）的二阶行列式
表达式formula_239和formula_240是不一样的。1926年，阿兰德·海廷和A.理查德森提出了非交换环上的行列式的不同定义。理查德森将二阶行列式定义为：formula_241，而海廷则提倡使用formula_242。两人都用归纳法定义了更高阶矩阵的行列式。1931年，奥斯丁·欧尔在一大类非交换环（后来命名为欧尔环）上定义了行列式的概念。最著名的非交换环上的行列式的定义当属让·迪厄多内的定义。迪厄多内是布尔巴基学派的代表成员之一，他将除环formula_234中的行列式定义在商域formula_244上，而不是在formula_234中。这个定义下的行列式有接近交换环中行列式的性质。例如，迪尔多内的行列式可以保持行列式的乘法定理。而这种行列式与交换环中行列式的区别是：将矩阵的两行或两列互换后，行列式的值不变。之后（）、佐藤干夫等人对迪厄多内的定义进行了探究和扩展。
行列式的性质.
行列式的一些基本性质，可以由它的多线性以及交替性推出。
行列式的展开.
代数余子式.
"formula_166"关于元素"formula_323"的代数余子式记作formula_328。formula_329。
行列式关于行和列的展开.
一个"formula_10"阶的行列式"formula_166"可以写成一行（或一列）的元素与对应的代数余子式的乘积之和，叫作行列式按一行（或一列）的展开。
这个公式又称拉普拉斯公式，把"formula_10"维矩阵的行列式计算变为了formula_10个formula_321维的行列式的计算。另一方面，拉普拉斯公式可以作为行列式的一种归纳定义：在定义了二维行列式后，formula_10维矩阵的行列式可以借助拉普拉斯公式用formula_321维的行列式来定义。这样定义的行列式与前面的定义是等价的。
行列式的计算.
计算行列式的值是一个常见的问题。最简单的方法是按照定义formula_339计算或按照拉普拉斯公式进行递归运算。这样的算法需要计算formula_49次的加法，复杂度是指数函数。在实际的计算中只能用于计算阶数很小的行列式。注意到拉普拉斯公式的性质，如果一行或一列里面有很多个0，那么就可以把行列式按这一行或一列展开，这时数值为零的系数所对应的代数余子式就不必计算了，因为最后要乘以0，这样就可以简化计算。然而更加简便的算法是利用高斯消去法或LU分解法，把矩阵通过初等变换变成三角矩阵或三角矩阵的乘积来计算行列式的值。这些算法的复杂度都是formula_341级别，远远小于直接计算的复杂度。
如果一个算法可以在formula_342时间内算出矩阵乘法，那么可以构造出一种formula_342时间内的行列式求值算法。这说明求矩阵的行列式的值和矩阵的乘法有相同的复杂度。于是，通过分治算法或者其它的方法，可以达到比formula_344更好的结果。比如，存在复杂度formula_345的行列式求值算法。
行列式函数.
由行列式的一般表达形式中可以看出，矩阵formula_3的行列式是关于其系数的多项式。因此行列式函数具有良好的光滑性质。
单变量的行列式函数.
设矩阵函数formula_347为formula_348（k阶连续可导）的函数，则由于行列式函数formula_349只不过是矩阵formula_350的某些系数的乘积，所以也是formula_348的。其对"t"的导数为
在矩阵理论中，行列式也有各种用途。多项式formula_354称为方块矩阵formula_3的特征值多项式。这是一个由行列式定义的多项式，它的解是矩阵所有的特征值。换句话说，formula_356是矩阵formula_3的特征值当且仅当formula_358不是可逆矩阵。特征值多项式在矩阵理论中有重要的应用。
行列式与多项式.
早在高斯的时代，行列式就和多项式的研究联系在一起。行列式的一个应用是在所谓的“结式”上。结式是两个多项式formula_359和formula_360的西尔维斯特矩阵的行列式。两个多项式的结式等于0当且仅当它们有高于或等于一次的公因子多项式。结式还可以判断多项式是否有重根：如果多项式formula_359和它的微分多项式formula_362的结式不为零，那么这个多项式没有重根，否则有重根。
行列式在多项式逼近理论中也有出现。给定一组插值点，判别插值多项式的存在性需要看所谓的范德蒙矩阵，而由于范德蒙矩阵的行列式不为零，因此根据克莱姆法则，插值多项式唯一存在（次数小于插值点个数）。
朗斯基行列式.
朗斯基行列式是函数矩阵的行列式，因此本身也是一个函数。给定"n"个"n-1"次连续可微函数，"f1"、...、"fn"，它们的朗斯基行列式"W(f1, ..., fn)"为：
可以证明，如果"f1"、...、"fn"线性相关，那么它们的朗斯基行列式恒等于零。
在线性微分动力系统理论中，朗斯基行列式用来判别若干个解的线性相关性。如果"n"个解"f1"、...、"fn"线性无关，那么它们的朗斯基行列式将总不为零。根据刘维尔定理，"n"维空间上的线性微分方程：
的基础解系所构成的朗斯基行列式formula_365满足：
同样地，线性微分方程：
formula_367的基础解系所构成的朗斯基行列式formula_365满足：
行列式与多重积分.
行列式体现了线性变换对于空间体积的作用，对于非线性的函数，其对体积的影响更为复杂，但对于足够“良好”的函数，在一个微小的范围内，比如说在空间中一点的附近，可以将函数的效果近似地用线性的变换来代替。由此，对于某些函数，也可以将它在某一点附近的作用效果用它在这一点上的偏导数构成的矩阵（称为雅可比矩阵）来表示。这类行列式被称为“雅可比行列式”，即是雅可比矩阵的行列式，只对连续可微的函数有定义。
在计算“体积”的多重积分中，雅可比行列式应用于换元积分的时候。积分的思想是将空间割成许多个微小的体积元，称为积分元素，再将每个体积元上的函数值乘以体积元的体积后相加。将一个积分元素换为另一个积分元素时，实际上作了一次对空间中体积的度量方式的改变：分划体积元的方式不同了。譬如在二维空间中，将直角坐标积分换为极坐标积分时，面积元素由方块区域变成扇形区域。因此，要测量这种体积度量方式的改变，可以将这种变换看成一个非线性的变换函数（实际上是一个微分同胚）：formula_370。而它在每一点的影响可以通过雅可比行列式来体现。
行列式与非线性方程组及分枝理论.
运用雅可比行列式的还有非线性方程组的数值求解。对于一般的非线性方程组，不存在求解公式，-{只}-能够用数值分析的方法求近似解。求近似解的基本思想也是将非线性问题在局部的地方逐步线性化，化归为线性方程组来求解。设有方程组：
其中formula_372是连续可微函数，并在解的附近雅可比行列式不为零，那么可以用牛顿法迭代求得近似解。迭代程序为：
其中的formula_374是第formula_235次迭代时的解的近似数值。每次迭代时先求解关于线性方程组
然后计算新的近似值
在实际应用中，还需要考虑带有参数的非线性方程组：
其中的formula_379可以代表温度、外力等环境因素。当环境改变时，方程解上的雅可比行列式可能从非零变为零。雅可比行列式为零的点称为临界点或分支点，是方程的解改变性质的地方。和线性方程组类似，当雅可比行列式的值为零时，方程组会出现局部多值的情况。寻找分支点和分支方向的研究是非线性方程求解的一大问题。