行列式
行列式（），记作formula_1或formula_2，是一个在方块矩阵上计算得到的标量。行列式可以看做是有向面积或体积的概念在一般的欧几里得空间中的推广。或者说，在欧几里得空间中，行列式描述的是一个线性变换对“体积”所造成的影响。无论是在线性代数、多项式理论，还是在微积分学中（比如说换元积分法中），行列式作为基本的数学工具，都有着重要的应用。
行列式概念最早出现在解线性方程组的过程中。十七世纪晚期，关孝和与莱布尼茨的著作中已经使用行列式来确定线性方程组解的个数以及形式。十八世纪开始，行列式开始作为独立的数学概念被研究。十九世纪以后，行列式理论进一步得到发展和完善。矩阵概念的引入使得更多有关行列式的性质被发现，行列式在许多领域都逐渐显现出重要的意义和作用，其定义也被推广到诸如线性自同态和向量组等结构上。
行列式的特性可以被概括为一个交替多线性形式，这个本质使得行列式在欧几里德空间中可以成为描述“体积”的函数。
矩陣formula_3的行列式記作formula_1。行列式經常使用竖直線記法（例如：克萊姆法則和子式）。例如，对于一個矩陣： formula_1也记作formula_2，或以細長的垂直線取代矩陣的方括號，明確的寫为： 当这个记法用于絕對值时，其作用对象为数，矩陣的絕對值是无定義的。矩陣範數通常以雙垂直線來表示（如：formula_9），且可以使用下標。故不会与二者造成混淆。
一个阶方块矩阵formula_3的行列式可直观地定义如下：
formula_11
其中，formula_12是集合formula_13上置换的全体，即集合formula_13到自身上的一一映射（双射）的全体；
formula_15表示对formula_12全部元素的求和，即对于每个formula_17，formula_18在加法算式中出现一次；对每一个满足formula_19的数对formula_20，formula_21是矩阵formula_3的第formula_23行第formula_24列的元素。
formula_25表示置换formula_17的符号差，具体地说，满足formula_27但formula_28的有序数对formula_20称为formula_30的一个逆序。
如果formula_30的逆序共有偶数个，则formula_32，如果共有奇数个，则formula_33。
举例来说，对于3元置换formula_34（即是说formula_35，formula_36，formula_37）而言，由于1在2后，1在3后，所以共有2个逆序（偶数个），因此formula_38，从而3阶行列式中项formula_39的符号是正的。但对于三元置换formula_40（即是说formula_41，formula_42，formula_37）而言，可以数出共有3个逆序（奇数个），因此formula_33，从而3阶行列式中项formula_45的符号是负号。
注意到对于任意正整数formula_46，formula_12共拥有个元素，因此上式中共有formula_48个求和项，即这是一个有限多次的求和。
对于简单的2阶和3阶的矩阵，行列式的表达式相对简单，而且恰好是每条主对角线（左上至右下）元素乘积之和减去每条副对角线（右上至左下）元素乘积之和（见图中红线和蓝线）。 但对于阶数formula_51的方阵formula_3，这样的主对角线和副对角线分别只有formula_46条，由于formula_3的主、副对角线总条数formula_55的元素个数 因此，行列式的相加项中除了这样的对角线乘积之外，还有其他更多的项。例如4阶行列式中，项formula_56就不是任何对角线的元素乘积。不过，和2、3阶行列式情况相同的是，阶行列式中的每一项仍然是从矩阵中选取个元素相乘得到，且保证在每行和每列中都恰好只选取一个元素，而整个行列式恰好将所有这样的选取方法遍历一次。
另外，formula_57矩阵的每一行或每一列也可以看成是一个formula_46元向量，这时矩阵的行列式也被称为这formula_46个formula_46元向量组成的向量组的行列式。
行列式的一个自然的源起是维平行体的体积。行列式的定义和维平行体的体积有着本质上的关联。
在一个二维平面上，两个向量formula_61和formula_62的行列式是：
比如说，两个向量formula_64和formula_65的行列式是：
经计算可知，当系数是实数时，行列式表示的是向量formula_67和formula_68形成的平行四边形的有向面积，并有如下性质： 其几何意义是：以同一个向量formula_75作为一条边的两个平行四边形的面积之和，等于它们各自另一边的向量formula_76和formula_77加起来后的向量：formula_78和formula_75所构成的平行四边形的面积，如左图中所示。
在三维的有向空间中，三个三维向量的行列式是：
比如说，三个向量formula_81、formula_82和formula_83的行列式是：
当系数是实数时，行列式表示formula_67、formula_68和formula_87三个向量形成的平行六面体的有向体积，也叫做这三个向量的混合积。同样的，可以观察到如下性质： 在以上的行列式中，我们不加选择地将向量在所谓的正交基（即直角坐标系）下分解，实际上在不同的基底之下，行列式的值并不相同。这并不是说平行六面体的体积不唯一。恰恰相反，这说明体积的概念依赖于衡量空间的尺度，也就是基底的取法。用基底的变换可以看作线性映射对基底的作用，而不同基底下的行列式代表了基变换对“体积”的影响。可以证明，对于所有同定向的标准正交基，向量组的行列式的值在绝对值意义上是一样的。也就是说，如果我们选择的基底都是“单位长度”，并且两两正交，那么在这样的基之下，平行六面体的体积的绝对值是唯一的。
设是一个一般的维的有向欧几里得空间。一个线性变换把一个向量线性地变为另一个向量。比如说，在三维空间中，向量(formula_98)被映射到向量(formula_99)：
其中formula_101、formula_102、formula_103是系数。如右图，正方体（可以看作原来的一组基形成的）经线性变换后可以变成一个普通的平行六面体，或变成一个平行四边形（没有体积）。这两种情况表示了两种不同的线性变换，行列式可以将其很好地分辨出来（为零或不为零）。
更详细地说，行列式表示的是线性变换前后平行六面体的体积的变化系数。如果设左边的正方体体积是一，那么中间的平行六面体的（有向）体积就是线性变换的行列式的值，右边的平行四边形体积为零，因为线性变换的行列式为零。这里我们混淆了线性变换的行列式和向量组的行列式，但两者是一样的，因为我们在对一组基作变换。
以上二维和三维行列式的例子中，行列式被解释为向量形成的图形的面积或体积。面积或体积的定义是恒正的，而行列式是有正有负的，因此需要引入有向面积和有向体积的概念。负的面积或体积在物理学中可能难以理解，但在数学中，它们和有向角的概念类似，都是对空间镜面对称特性的一种刻画。如果行列式表示的是线性变换对体积的影响，那么行列式的正负就表示了空间的定向。
如上图中，左边的黄色骰子（可以看成有单位的有向体积的物体）在经过了线性变换后变成中间绿色的平行六面体，这时行列式为正，两者是同定向的，可以通过旋转和拉伸从一个变成另一个。而骰子和右边的红色平行六面体之间也是通过线性变换得到的，但是无论怎样旋转和拉伸，都无法使一个变成另一个，一定要通过镜面反射才行。这时两者之间的线性变换的行列式是负的。可以看出，线性变换可以分为两类，一类对应着正的行列式，保持空间的定向不变，另一类对应负的行列式，颠倒空间的定向。
由二维及三维的例子，可以看到一般的行列式应该具有怎样的性质。在formula_46维欧几里得空间中，作为“平行多面体”的“体积”的概念的推广，行列式继承了“体积”函数的性质。首先，行列式需要是线性的，这可以由面积的性质类比得到。这裡的线性是对于每一个向量来说的，因为当一个向量变为原来的formula_101倍时，“平行多面体”的“体积”也变为原来的formula_101倍。其次，当一个向量在其它向量组成的“超平面”上时，formula_46维“平行多面体”的“体积”是零（可以想像三维空间的例子）。也就是说，当向量线性相关时，行列式为零。在一般系数域上的线性空间中，行列式也正是由这样的特性所刻划的：
行列式是系数域为formula_108的有限维线性空间formula_109上射到formula_108的交替线性形式。
具体来说，设formula_109是一个系数在域formula_108上的有限维线性空间，维数为formula_46。一个formula_109上的交替formula_115线性形式是指满足以下性质的函数formula_116：所有上的交替formula_115线性形式的集合记作formula_123。
设formula_124是formula_109的一组基，根据上面的定理和线性形式的性质，可以定义formula_126下的行列式。 其中的唯一性是因为如果有两个交替formula_115线性形式满足条件，则它们的差在一组基上为0，从而恒等于0。于是，一组基上的一个向量组的行列式就是： 可以见到这个定义与之前直观的定义是吻合的，它有时也被称作莱布尼兹公式。
设formula_126与formula_129是向量空间中的两组基，则将上面定理中的formula_130改为formula_131就得到向量组在两组基下的行列式之间的关系：
設formula_133為所有定義在系数域formula_108上的formula_57矩陣的集合。將formula_57矩陣formula_137（formula_137的元素记为formula_139 )的formula_46列寫成formula_141，formula_142可以看作是formula_143的正则基上的向量。矩阵formula_137的行列式定义为向量组formula_141的行列式。这裡的向量都在formula_143的正则基上展开，因此矩阵的行列式不依赖于基的选择。 这样定义的矩阵formula_137的行列式与向量组的行列式有同样的性质。单位矩阵的行列式为1，若矩阵的某几行线性相关，则它的行列式为零。
由莱布尼兹公式，可以证明矩阵行列式的一个重要性质： 也就是说矩阵的行列式既可以看作formula_46个行向量的行列式，也可以看作formula_46个列向量的行列式。因此也可以通过行向量组来定义矩阵行列式，并且得到的定义是等价的。
设formula_130是formula_46维线性空间formula_109到自身的线性变换（自同态），对于给定的一组基，可以定义线性变换在这组基下的行列式。 的变换矩阵满足formula_153 也就是说对所有的向量组formula_154，
可以证明，在的任意一组基下的变换矩阵的行列式都是相等的。 因此线性变换的行列式定义可以修改为不依赖于基的形式：
前一节里对正方体做线性变换时，formula_157是原来的基，formula_158，因此可以混淆向量组的行列式和线性变换的行列式。
特别地，行列式为1的线性变换保持向量组的行列式，它们构成一般线性群formula_159的一个子群formula_160，称作特殊线性群。可以证明，formula_160是由所有的错切生成的，即所有具有如下形式的矩阵代表的线性变换：
其中formula_163是只在第formula_23行第formula_24列处系数取1，其余系数为0的矩阵。也就是说，错切变换保持向量组形成的“平行多面体”的体积。同样，可以证明两个相似矩阵有相等的行列式。
以上的定义中都假设矩阵的系数取自域formula_166中，实际上矩阵的系数可以是任意的交换环formula_167，这时有限维线性空间变为以formula_168为基的自由formula_169模，而相应的关于行列式的定义和性质依然成立（在可定义的范畴内）。如果矩阵系数是非交换环的话，以上的行列式定义将不再唯一。1845年，阿瑟·凯莱首次开始研究非交换环上行列式定义的问题。他注意到，对于系数是四元数（不可交换）的二阶行列式
表达式formula_171和formula_172是不一样的。1926年，阿兰德·海廷和A.理查德森提出了非交换环上的行列式的不同定义。理查德森将二阶行列式定义为：formula_173，而海廷则提倡使用formula_174。两人都用归纳法定义了更高阶矩阵的行列式。1931年，奥斯丁·欧尔在一大类非交换环（后来命名为欧尔环）上定义了行列式的概念。最著名的非交换环上的行列式的定义当属让·迪厄多内的定义。迪厄多内是布尔巴基学派的代表成员之一，他将除环formula_166中的行列式定义在商域formula_176上，而不是在formula_166中。这个定义下的行列式有接近交换环中行列式的性质。例如，迪尔多内的行列式可以保持行列式的乘法定理。而这种行列式与交换环中行列式的区别是：将矩阵的两行或两列互换后，行列式的值不变。之后菲列克斯·别列金（）、佐藤幹夫等人对迪厄多内的定义进行了探究和扩展。
行列式的一些基本性质，可以由它的多线性以及交替性推出。
"formula_137"关于元素"formula_255"的代数余子式记作formula_260。formula_261。
一个"formula_46"阶的行列式"formula_137"可以写成一行（或一列）的元素与对应的代数余子式的乘积之和，叫作行列式按一行（或一列）的展开。
这个公式又称拉普拉斯公式，把"formula_46"维矩阵的行列式计算变为了formula_46个formula_253维的行列式的计算。另一方面，拉普拉斯公式可以作为行列式的一种归纳定义：在定义了二维行列式后，formula_46维矩阵的行列式可以借助拉普拉斯公式用formula_253维的行列式来定义。这样定义的行列式与前面的定义是等价的。
计算行列式的值是一个常见的问题。最简单的方法是按照定义formula_271计算或按照拉普拉斯公式进行递归运算。这样的算法需要计算formula_48次的加法，复杂度是指数函数。在实际的计算中只能用于计算阶数很小的行列式。注意到拉普拉斯公式的性质，如果一行或一列里面有很多个0，那么就可以把行列式按这一行或一列展开，这时数值为零的系数所对应的代数余子式就不必计算了，因为最后要乘以0，这样就可以简化计算。然而更加简便的算法是利用高斯消去法或LU分解法，把矩阵通过初等变换变成三角矩阵或三角矩阵的乘积来计算行列式的值。这些算法的复杂度都是formula_273级别，远远小于直接计算的复杂度。
如果一个算法可以在formula_274时间内算出矩阵乘法，那么可以构造出一种formula_274时间内的行列式求值算法。这说明求矩阵的行列式的值和矩阵的乘法有相同的复杂度。于是，通过分治算法或者其它的方法，可以达到比formula_276更好的结果。比如，存在复杂度formula_277的行列式求值算法。
由行列式的一般表达形式中可以看出，矩阵formula_3的行列式是关于其系数的多项式。因此行列式函数具有良好的光滑性质。
设矩阵函数formula_279为formula_280（k阶连续可导）的函数，则由于行列式函数formula_281只不过是矩阵formula_282的某些系数的乘积，所以也是formula_280的。其对"t"的导数为
也就是说，在装备正则范数的矩阵空间formula_286中，伴随矩阵是行列式函数的梯度
可逆矩阵的可微性说明一般线性群formula_290是一个李群。
行列式与外代数有密切的关系，因为外代数正是在给定的交换环formula_166上的自由formula_166-模formula_293上最“一般性”的有交替性质的结合代数，记为formula_294。外代数是由楔积构造而成的，而楔积在formula_293上的交替性质表现如下（定义）：
这表示
对三维欧几里得空间中formula_326可以建立一个线性同构formula_327如下：任取formula_326的右手的标准正交基formula_329，formula_330，formula_331，规定formula_332把formula_333，formula_334，formula_335分别映射为formula_331，formula_329，formula_330，则formula_332的定义与右手的标准正交基如何选取无关。
不难看出，对任意向量formula_340和formula_341，这个线性同构把楔积formula_342映射为叉积formula_343。这就是叉乘（向量积）的实质。叉积可以用带向量的行列式： 来表示，但要注意这个行列式形式并不代表一个“真正”的行列式，因为第一行的分量不是数，而是向量。这个计算之所以正确是得益于线性同构formula_332。
行列式的概念最初是伴随着方程组的求解而发展起来的。行列式的提出可以追溯到十七世纪，最初的雏形由日本数学家关孝和与德国数学家戈特弗里德·莱布尼茨各自独立得出，时间相差132年。
1545年，卡当在著作《大术》（）中给出了一种解两个一次方程组的方法。他把这种方法称为“母法”（"regula de modo"）。这种方法和后来的克莱姆法则已经很相似了，但卡当并没有给出行列式的概念。
1683年，日本数学家关孝和在其著作《解伏题之法》中首次引进了行列式的概念。书中出现了formula_346、formula_347乃至formula_348的行列式，行列式被用来求解高次方程组。
1693年，德国数学家莱布尼茨开始使用指标数的系统集合来表示有三个未知数的三个一次方程组的系数。他从三个方程的系统中消去了两个未知量后得到一个行列式。这个行列式不等于零，就意味着有一组解同时满足三个方程。由于当时没有矩阵的概念，莱布尼茨将行列式中元素的位置用数对来表示：代表第行第列。莱布尼茨对行列式的研究成果中已经包括了行列式的展开和克莱姆法则，但这些结果在当时并不为人所知。
1730年，苏格兰数学家科林·麦克劳林在他的《论代数》中已经开始阐述行列式的理论，记载了用行列式解二元、三元和四元一次方程的方法，并给出了四元一次方程组的一般解的正确形式，尽管这本书直到麦克劳林逝世两年后（1748年）才得以出版。 1750年，瑞士的加布里尔·克莱姆首先在他的《代数曲线分析引论》给出了元一次方程组求解的法则，用于确定经过五个点的一般二次曲线的系数，但并没有给出证明。其中行列式的计算十分复杂，因为是定义在奇置换和偶置换上的。
此后，关于行列式的研究逐渐增多。1764年，法国的艾蒂安·裴蜀的论文中关于行列式的计算方法的研究简化了克莱姆法则，给出了用结式来判别线性方程组的方法。同是法国人的亚历山德·西奥菲勒·范德蒙德（）则在1771年的论著中第一个将行列式和解方程理论分离，对行列式单独作出阐述。这是数学家们开始对行列式本身进行研究的开端。
1772年，皮埃尔-西蒙·拉普拉斯在论文《对积分和世界体系的探讨》中推广了范德蒙德著作裡面将行列式展开为若干个较小的行列式之和的方法，发展出子式的概念。一年后，约瑟夫·拉格朗日发现了formula_347的行列式与空间中体积的联系。他发现：原点和空间中三个点所构成的四面体的体积，是它们的坐标所组成的行列式的六分之一。
行列式在大部分欧洲语言中被称为“determinant”（某些语言中词尾加e或o，或变成s），这个称呼最早是由卡爾·弗里德里希·高斯在他的《算术研究》中引入的。这个称呼的词根有“决定”意思，因为在高斯的使用中，行列式能够决定二次曲线的性质。在同一本著作中，高斯还叙述了一种通过系数之间加减来求解多元一次方程组的方法，也就是现在的高斯消元法。
进入十九世纪后，行列式理论进一步得到发展和完善。奧古斯丁·路易·柯西在1812年首先将“determinant”一词用来表示十八世纪出现的行列式，此前高斯只不过将这个词限定在二次曲线所对应的系数行列式中。柯西也是最早将行列式排成方阵并将其元素用双重下标表示的数学家（垂直线记法是阿瑟·凯莱在1841年率先使用的）。柯西还证明了行列式的乘法定理（实际上是矩阵乘法），这个定理曾经在雅克·菲利普·玛利·比内（）的书中出现过，但没有证明。
十九世纪五十年代，凯莱和詹姆斯·约瑟夫·西尔维斯特将矩阵的概念引入数学研究中。行列式和矩阵之间的密切关系使得矩阵论蓬勃发展的同时也带来了许多关于行列式的新结果，例如阿达马不等式、正交行列式、对称行列式等等。
与此同时，行列式也被应用于各种领域中。高斯在二次曲线和二次型的研究中使用行列式作为二次曲线和二次型划归为标准型时的判别依据。之后，卡尔·魏尔斯特拉斯和西尔维斯特又完善了二次型理论，研究了formula_350-矩阵的行列式以及初等因子。行列式被用于多重函数的积分大约始于十九世纪三十年代。1832年至1833年间卡尔·雅可比发现了一些特殊结果，1839年，欧仁·查尔·卡塔兰（）发现了所谓的雅可比行列式。1841年，雅可比发表了一篇关于函数行列式的论文，讨论函数的线性相关性与雅可比行列式的关系。
行列式的一个主要应用是解线性方程组。当线性方程组的方程个数与未知数个数相等时，方程组不一定总是有唯一解。对一个有"n"个方程和"n"个未知数的线性方程组，我们研究未知数系数所对应的行列式。这个线性方程组有唯一解当且仅当它对应的行列式不为零。这也是行列式概念出现的根源。
当线性方程组对应的行列式不为零时，由克萊姆法則，可以直接以行列式的形式写出方程组的解。但用克萊姆法則求解计算量巨大，因此并没有实际应用价值，一般用于理论上的推导。
矩阵的概念出现得比行列式晚，直到十九世纪中期才被引入，然而两者在本质上仍然有密切关系。通过矩阵，线性方程组可以表示为 其中formula_352是由方程组中未知数的系数构成的方块矩阵，formula_353是未知数，而formula_354。
在矩阵理论中，行列式也有各种用途。多項式formula_355称为方块矩陣formula_3的特徵值多項式。这是一个由行列式定义的多项式，它的解是矩阵所有的特征值。换句话说，formula_357是矩阵formula_3的特征值当且仅当formula_359不是可逆矩阵。特征值多项式在矩阵理论中有重要的应用。
早在高斯的时代，行列式就和多项式的研究联系在一起。行列式的一个应用是在所谓的“结式”上。结式是两个多项式formula_360和formula_361的西尔维斯特矩阵的行列式。两个多项式的结式等于0当且仅当它们有高于或等于一次的公因子多项式。结式还可以判断多项式是否有重根：如果多项式formula_360和它的微分多项式formula_363的结式不为零，那么这个多项式没有重根，否则有重根。
行列式在多项式逼近理论中也有出现。给定一组插值点，判别插值多项式的存在性需要看所谓的范德蒙矩阵，而由于范德蒙矩阵的行列式不为零，因此根据克莱姆法则，插值多项式唯一存在（次数小于插值点个数）。
朗斯基行列式是函数矩阵的行列式，因此本身也是一个函数。给定"n"个"n-1"次连续可微函数，"f"、...、"f"，它们的朗斯基行列式"W(f, ..., f)"为：
可以证明，如果"f"、...、"f"线性相关，那么它们的朗斯基行列式恒等于零。
在线性微分动力系统理论中，朗斯基行列式用来判别若干个解的线性相关性。如果"n"个解"f"、...、"f"线性无关，那么它们的朗斯基行列式将总不为零。根据刘维尔定理，"n"维空间上的线性微分方程： 的基础解系所构成的朗斯基行列式formula_366满足： 同样地，线性微分方程： formula_368的基础解系所构成的朗斯基行列式formula_366满足：
行列式体现了线性变换对于空间体积的作用，对于非线性的函数，其对体积的影响更为复杂，但对于足够“良好”的函数，在一个微小的范围内，比如说在空间中一点的附近，可以将函数的效果近似地用线性的变换来代替。由此，对于某些函数，也可以将它在某一点附近的作用效果用它在这一点上的偏导数构成的矩阵（称为雅可比矩阵）来表示。这类行列式被称为“雅可比行列式”，即是雅可比矩阵的行列式，只对连续可微的函数有定义。
在计算“体积”的多重积分中，雅可比行列式应用于换元积分的时候。积分的思想是将空间割成许多个微小的体积元，称为积分元素，再将每个体积元上的函数值乘以体积元的体积后相加。将一个积分元素换为另一个积分元素时，实际上作了一次对空间中体积的度量方式的改变：分划体积元的方式不同了。譬如在二维空间中，将直角坐标积分换为极坐标积分时，面积元素由方块区域变成扇形区域。因此，要测量这种体积度量方式的改变，可以将这种变换看成一个非线性的变换函数（实际上是一个微分同胚）：formula_371。而它在每一点的影响可以通过雅可比行列式来体现。
运用雅可比行列式的还有非线性方程组的数值求解。对于一般的非线性方程组，不存在求解公式，-{只}-能够用数值分析的方法求近似解。求近似解的基本思想也是将非线性问题在局部的地方逐步线性化，化归为线性方程组来求解。设有方程组：
其中formula_373是连续可微函数，并在解的附近雅可比行列式不为零，那么可以用牛顿法迭代求得近似解。迭代程序为：
其中的formula_375是第k次迭代时的解的近似数值。每次迭代时先求解关于线性方程组 然后计算新的近似值
在实际应用中，还需要考虑带有参数的非线性方程组：
其中的formula_350可以代表温度、外力等环境因素。当环境改变时，方程解上的雅可比行列式可能从非零变为零。雅可比行列式为零的点称为临界点或分支点，是方程的解改变性质的地方。和线性方程组类似，当雅可比行列式的值为零时，方程组会出现局部多值的情况。寻找分支点和分支方向的研究是非线性方程求解的一大问题。