Linear independence of rows in partitioned matrices #
This file proves that the rows of a column-partitioned matrix [A | B] are linearly independent
as soon as the rows of one of its blocks are: two distinct combinations of the rows already
differ on the columns of that block, so no nontrivial combination of the rows vanishes.
The main instance is a block that is an identity matrix, whose rows are linearly independent by
Matrix.linearIndependent_row_one. Consequently a matrix in systematic form has full row rank,
which is what turns a row count into a dimension: over a field, [I | A] has as many rows as the
dimension of the code it generates, and [B | I] has as many rows as the codimension of the code
it checks.
Main declarations #
Matrix.linearIndependent_row_fromCols_of_left,Matrix.linearIndependent_row_fromCols_of_right: the rows of[A | B]are linearly independent when those ofA, respectivelyB, are.Matrix.linearIndependent_row_one_fromCols: the rows of[I | A]are linearly independent.Matrix.linearIndependent_row_fromCols_one: the rows of[B | I]are linearly independent.
If the rows of the left block A are linearly independent, so are the rows of [A | B].
If the rows of the right block B are linearly independent, so are the rows of [A | B].
The rows of a systematic matrix [I | A] are linearly independent.
The rows of a systematic matrix [B | I] are linearly independent.