本节是选学内容. 不学本节不影响理解任何必学内容 (也就是, 未被声明为选学内容的节).
或许, (方) 阵的行列式与阵的积的定义是较复杂的, 跟阵的转置、加、减、数乘比. 不过, 它们有不平凡的关系.
设 A 是一个 m×n 阵, 且 B 是一个 n×m 阵. 根据阵的积的定义, BA 是一个 n 级阵, 故它有行列式.
设 A, B 分别是 m×n, n×m 阵.
(1) 若 n>m, 则 det(BA)=0.
(2) 若 n⩽m, 则det(BA)=1⩽j1<j2<⋯<jn⩽m∑det(B(j1,j2,…,jn1,2,…,n))det(A(1,2,…,nj1,j2,…,jn)).特别地, 若 n=m, 则因适合条件 1⩽j1<j2<⋯<jn⩽m 的 j1, j2, …, jn, 是, 且只能是, 1, 2, …, n, 故det(BA)=det(B(1,2,…,n1,2,…,n))det(A(1,2,…,n1,2,…,n))=det(B)det(A).
我用二个例助您理解, 此定理在说什么.
设A=[123456],B=⎣⎡789101112⎦⎤.不难算出, AB=[76100103136],BA=⎣⎡27303361687595106117⎦⎤.直接计算, 可知det(AB)=76⋅136−100⋅103=36,而det(BA)==+27⋅68⋅117+30⋅75⋅95+33⋅61⋅106−27⋅75⋅106−30⋅61⋅117−33⋅68⋅950.
或许, 前面的计算是较复杂的. 我们试用 Binet–Cauchy 公式, 再计算它们.
因为 A, B 的尺寸分别是 2×3, 3×2, 而 3>2, 根据 (1), det(BA)=0 (注意, BA 是 3 级阵).
因为 2⩽3, 故, 根据 (2), =det(AB)+det(A(1,21,2))det(B(1,21,2))+det(A(1,31,2))det(B(1,21,3))+det(A(2,31,2))det(B(1,22,3)).这里, 注意, 适合条件 “1⩽j1<j2⩽3” 的 (j1,j2) 恰有三个: (1,2), (1,3), (2,3). 不难写出A(1,21,2)=[1234],B(1,21,2)=[781011];A(1,31,2)=[1256],B(1,21,3)=[791012];A(2,31,2)=[3456],B(1,22,3)=[891112].从而det(AB)=(−2)⋅(−3)+(−4)⋅(−6)+(−2)⋅(−3)=36.
设A=[31027],B=[51149].不难算出AB=[3712730103],BA=[551233885].可以看到, AB=BA.
不过, det(AB)=det(BA). 一方面, 我们可直接验证: det(AB)=37⋅103−127⋅30=1,det(BA)=55⋅85−123⋅38=1.另一方面, Binet–Cauchy 公式指出, det(AB)===det(A)det(B)det(B)det(A)det(BA).毕竟, 数的乘法是可换的.
为简单地论证公式, 我们要三个新事实; 为证明这三个新事实的前二个, 我们要一些老的公式.
设 A 是 n 级阵 (n⩾1). 设 j1, j2, …, jn 是不超过 n 的正整数, 且互不相同. 则=det(A)1⩽i1,i2,…,in⩽ni1,i2,…,in互不相同∑s(i1,i2,…,in)s(j1,j2,…,jn)[A]i1,j1[A]i2,j2…[A]in,jn.特别地, 取 j1, j2, …, jn 为 1, 2, …, n, 并注意, s(1,2,…,n)=1, 得det(A)=1⩽i1,i2,…,in⩽ni1,i2,…,in互不相同∑s(i1,i2,…,in)[A]i1,1[A]i2,2…[A]in,n.
设 n 级阵 A 的列 1, 2, …, n 分别为 a1, a2, …, an. 设 ℓ1, ℓ2, …, ℓn 是不超过 n 的正整数, 且互不相同. 则det[aℓ1,aℓ2,…,aℓn]=s(ℓ1,ℓ2,…,ℓn)det(A).
现在, 我要开始展现三个新事实了.
设 C 为 n×m 阵, 且 m⩾n. 设 C 的列 1, 2, …, m 分别为 c1, c2, …, cm. 设 k1, k2, …, kn 是不超过 m 的正整数, 且互不相同. 设 j1, j2, …, jn 是 k1, k2, …, kn 的自然排列. 则det[ck1,ck2,…,ckn]=s(k1,k2,…,kn)det[cj1,cj2,…,cjn].
证. 设 kt 在 k1, k2, …, kn 的自然排列 j1, j2, …, jn 里的位置为 f(kt) (t=1, 2, …, n). 注意, f(jt)=t. 并且, 若 kt<kv, 必有 f(kt)<f(kv). 反过来, 若 f(kt)<f(kv), 必有 kt<kv. (我用一个简单的例助您理解. 设 m=9, n=3. 设 k1, k2, k3 分别为 8, 9, 6. 那么, k1, k2, k3 的自然排列 j1, j2, j3 是 6, 8, 9. 故 f(k1)=f(j2)=f(8)=2, f(k2)=f(j3)=f(9)=3, 且 f(k3)=f(j1)=f(6)=1.) 从而 sgn(kv−kt)=sgn(f(kv)−f(kt)).
作阵
G=[cj1,cj2,…,cjn]. 设
G 的列
1,
2,
…,
n 分别是
g1,
g2,
…,
gn. 则
[ck1,ck2,…,ckn]=[gf(k1),gf(k2),…,gf(kn)].故
det[ck1,ck2,…,ckn]===det[gf(k1),gf(k2),…,gf(kn)]s(f(k1),f(k2),…,f(kn))det[g1,g2,…,gn]s(k1,k2,…,kn)det[cj1,cj2,…,cjn]. 设 D 为 m×n 阵, 且 m⩾n. 设 i1, i2, …, in 是不超过 m 的正整数, 且 i1<i2<⋯<in. 则=det(D(1,2,…,ni1,i2,…,in))k1,k2,…,kn是i1,i2,…,in的排列∑s(k1,k2,…,kn)[D]k1,1[D]k2,2…[D]kn,n.
证. 设H=D(1,2,…,ni1,i2,…,in).不难看出, [H]u,v=[D]iu,v.
记
f(it)=t (
t=1,
2,
…,
n). 设
k1,
k2,
…,
kn 是
i1,
i2,
…,
in 的一个排列. 那么,
f(k1),
f(k2),
…,
f(kn) 是
1,
2,
…,
n 的一个排列. 反过来, 若
v1,
v2,
…,
vn 是
1,
2,
…,
n 的一个排列, 则
iv1,
iv2,
…,
ivn 是
i1,
i2,
…,
in 的一个排列. 并且, 若
kt<kv, 必有
f(kt)<f(kv). 反过来, 若
f(kt)<f(kv), 必有
kt<kv. 从而
sgn(kv−kt)=sgn(f(kv)−f(kt)). 故
===det(D(1,2,…,ni1,i2,…,in))det(H)k1,k2,…,kn是i1,i2,…,in的排列∑s(f(k1),f(k2),…,f(kn))[H]f(k1),1[H]f(k2),2…[H]f(kn),nk1,k2,…,kn是i1,i2,…,in的排列∑s(k1,k2,…,kn)[D]k1,1[D]k2,2…[D]kn,n. 设 n⩽m. 设数 f(k1,k2,…,kn) (其中 k1, k2, …, kn 过 1, 2, …, m) 适合: 若 kp=kq (1⩽p<q⩽n), 则 f(k1,k2,…,kn)=0. 那么==1⩽k1,k2,…,kn⩽m∑f(k1,k2,…,kn)1⩽k1,k2,…,kn⩽mk1,k2,…,kn互不相同∑f(k1,k2,…,kn)1⩽j1<j2<⋯<jn⩽m∑k1,k2,…,kn是j1,j2,…,jn的排列∑f(k1,k2,…,kn).
证. 由
f 的性质可知, 前一个等式成立. 后一个等式也不难. 注意, 要从
m 个不同的数里有前后次序地选
n 个不同的数
k1,
k2,
…,
kn, 我们可以先从小到大地从这
m 个数里选
n 个不同的数
j1,
j2,
…,
jn, 且再有前后次序地作这
n 个数的排列
k1,
k2,
…,
kn. 所以, 后一个等式也成立.
现在, 我们证明 Binet–Cauchy 公式.
证. 设 B 的列 1, 2, …, m 分别是 b1, b2, …, bm. 设 A 的列 1, 2, …, n 分别是 a1, a2, …, an. 那么BA==[Ba1,Ba2,…,Ban][k1=1∑m[A]k1,1bk1,k2=1∑m[A]k2,2bk2,…,kn=1∑m[A]kn,nbkn].利用行列式的多线性, 有=====det(BA)det[k1=1∑m[A]k1,1bk1,k2=1∑m[A]k2,2bk2,…,kn=1∑m[A]kn,nbkn]k1=1∑m[A]k1,1det[bk1,k2=1∑m[A]k2,2bk2,…,kn=1∑m[A]kn,nbkn]k1=1∑mk2=1∑m[A]k1,1[A]k2,2det[bk1,bk2,…,kn=1∑m[A]kn,nbkn]…1⩽k1,k2,…,kn⩽m∑[A]k1,1[A]k2,2…[A]kn,ndet[bk1,bk2,…,bkn].
记 f(k1,k2,…,kn)=[A]k1,1[A]k2,2…[A]kn,ndet[bk1,bk2,…,bkn]. 根据行列式的交错性, 当 k1, k2, …, kn 中有二个数相同时, f(k1,k2,…,kn)=0.
(1) 若 n>m, 则 k1, k2, …, kn 中总有二个相同 (抽屉原理). 所以, 每一项都是 0. 故 det(BA)=0.
(2) 若
n⩽m, 那么
det(BA) 等于
1⩽j1<j2<⋯<jn⩽m∑k1,k2,…,kn是j1,j2,…,jn的排列∑[A]k1,1[A]k2,2…[A]kn,ndet[bk1,bk2,…,bkn].因为
1⩽j1<j2<⋯<jn⩽m, 且
k1,
k2,
…,
kn 是
j1,
j2,
…,
jn 的排列, 故
det[bk1,bk2,…,bkn]=s(k1,k2,…,kn)det[bj1,bj2,…,bjn],从而
det(BA) 等于
1⩽j1<j2<⋯<jn⩽m∑det[bj1,bj2,…,bjn]k1,k2,…,kn是j1,j2,…,jn的排列∑s(k1,k2,…,kn)[A]k1,1[A]k2,2…[A]kn,n.注意,
k1,k2,…,kn是j1,j2,…,jn的排列∑s(k1,k2,…,kn)[A]k1,1[A]k2,2…[A]kn,n=det(A(1,2,…,nj1,j2,…,jn)).再注意, 因为
1⩽j1<j2<⋯<jn⩽m, 故, 由子阵的记号的定义,
[bj1,bj2,…,bjn]=B(j1,j2,…,jn1,2,…,n).从而
det(BA)=1⩽j1<j2<⋯<jn⩽m∑det(B(j1,j2,…,jn1,2,…,n))det(A(1,2,…,nj1,j2,…,jn)).