User:IssaRice/Linear algebra/Rank of polynomial matrix is constant everywhere except possibly at finitely many points: Difference between revisions

From Machinelearning
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 7: Line 7:
Proof:
Proof:


We first show that <math>x \mapsto \operatorname{rank} A(x)</math> takes on a maximum value, which we will call <math>r</math>. To show that <math>r</math> exists, we start at <math>r := \min\{m,n\}</math> (this is the largest rank that an <math>m \times n</math matrix can have, so it is safe to start here). If there exists some <math>x</math> such that <math>\operatorname{rank} A(x) = r</math>, then we have found our <math>r</math>. If not, we replace <math>r</math> by <math>r-1</math> and continue. After finitely many steps, we either return a value or hit <math>0</math> (because the rank of a matrix cannot be negative). So <math>r</math> exists.
We first show that <math>x \mapsto \operatorname{rank} A(x)</math> takes on a maximum value, which we will call <math>r</math>. To show that <math>r</math> exists, we start at <math>r := \min\{m,n\}</math> (this is the largest rank that an <math>m \times n</math> matrix can have, so it is safe to start here). If there exists some <math>x</math> such that <math>\operatorname{rank} A(x) = r</math>, then we have found our <math>r</math>. If not, we replace <math>r</math> by <math>r-1</math> and continue. After finitely many steps, we either return a value or hit <math>0</math> (because the rank of a matrix cannot be negative). So <math>r</math> exists.
 
Now we have two cases:
 
* <math>r=0</math>: For every <math>x</math>, we have <math>\operatorname{rank} A(x) \leq r = 0</math> from what we showed above. Since the rank of a matrix is a non-negative integer, we also know that <math>\operatorname{rank} A(x) \geq 0</math>. Combining these two, we must have <math>\operatorname{rank} A(x) = 0</math> for every <math>x</math>, so in this case <math>x \mapsto \operatorname{rank} A(x)</math> is identically zero.
* <math>r > 0</math>: Since <math>x \mapsto \operatorname{rank} A(x)</math> takes on the maximum value <math>r</math>, we can find some point <math>x_0</math> such that <math>\operatorname{rank} A(x_0) = r</math>. By Theorem 6.1, there exists an <math>r\times r</math> submatrix <math>B(x_0)</math> of <math>A(x_0)</math> with non-zero determinant, i.e. a non-zero minor of order <math>r</math>. Call this minor <math>M(x_0) = \det(B(x_0)) \ne 0</math>, and consider the corresponding submatrix <math>B(x)</math> and minor <math>M(x)</math> of <math>A(x)</math>. Since <math>M(x)</math> is the determinant of an <math>r \times r</math> polynomial matrix, we see that <math>x \mapsto M(x)</math> is a polynomial.
: We note that if <math>M(x) = 0</math>, then the submatrix <math>B(x)</math> is not invertible, so the rank of <math>A(x)</math> may be smaller than <math>r</math>. If <math>M(x) \ne 0</math>, then the submatrix <math>B(x)</math> is invertible, so the rank of <math>A(x)</math> must be at least <math>r</math> by Theorem 6.1 (and so it must be equal to <math>r</math>, since <math>r</math> was chosen as the maximum rank).
: Since <math>M(x_0) \ne 0</math>, the polynomial <math>x \mapsto M(x)</math> is not identically zero, so it can be zero only at finitely many points. Thus at finitely many points the rank of <math>A(x)</math> may be smaller than <math>r</math>, but everywhere else we must have <math>\operatorname{rank} A(x) = r</math>.

Latest revision as of 04:40, 16 December 2020

This is Corollary 6.2 in Linear Algebra Done Wrong.

I find the proof in the book pretty unclear, so I want to write up a clearer proof.

Corollary statement: Let A(x) be an m×n polynomial matrix (i.e. a matrix whose entries are polynomials of x). Then xrankA(x) is constant everywhere, except possibly at finitely many points, where the rank is smaller.

Proof:

We first show that xrankA(x) takes on a maximum value, which we will call r. To show that r exists, we start at r:=min{m,n} (this is the largest rank that an m×n matrix can have, so it is safe to start here). If there exists some x such that rankA(x)=r, then we have found our r. If not, we replace r by r1 and continue. After finitely many steps, we either return a value or hit 0 (because the rank of a matrix cannot be negative). So r exists.

Now we have two cases:

  • r=0: For every x, we have rankA(x)r=0 from what we showed above. Since the rank of a matrix is a non-negative integer, we also know that rankA(x)0. Combining these two, we must have rankA(x)=0 for every x, so in this case xrankA(x) is identically zero.
  • r>0: Since xrankA(x) takes on the maximum value r, we can find some point x0 such that rankA(x0)=r. By Theorem 6.1, there exists an r×r submatrix B(x0) of A(x0) with non-zero determinant, i.e. a non-zero minor of order r. Call this minor M(x0)=det(B(x0))0, and consider the corresponding submatrix B(x) and minor M(x) of A(x). Since M(x) is the determinant of an r×r polynomial matrix, we see that xM(x) is a polynomial.
We note that if M(x)=0, then the submatrix B(x) is not invertible, so the rank of A(x) may be smaller than r. If M(x)0, then the submatrix B(x) is invertible, so the rank of A(x) must be at least r by Theorem 6.1 (and so it must be equal to r, since r was chosen as the maximum rank).
Since M(x0)0, the polynomial xM(x) is not identically zero, so it can be zero only at finitely many points. Thus at finitely many points the rank of A(x) may be smaller than r, but everywhere else we must have rankA(x)=r.