theorem Th41:
  for A be Matrix of len b1,len b2,K st len b1>0 & len b2>0 holds
  v1 in ker Mx2Tran(A,b1,b2) iff v1|--b1 in Space_of_Solutions_of (A@)
proof
  let A be Matrix of len b1,len b2,K such that
A1: len b1>0 and
A2: len b2>0;
  set AT=A@;
A3: width A=len b2 by A1,MATRIX_0:23;
  then
A4: len AT=len b2 by A2,MATRIX_0:54;
  set L=LineVec2Mx(v1|--b1);
  set M=Mx2Tran(A,b1,b2);
  set SA=Space_of_Solutions_of AT;
A5: width L=len (v1|--b1) by MATRIX_0:23;
 len (len b2|->0.K)=len b2 by CARD_1:def 7;
  then
A6: width LineVec2Mx(len b2|->0.K)=len b2 by MATRIX_0:23;
A7: width ColVec2Mx(len b2|->0.K)=1 by A2,MATRIX_0:23;
A8: len (v1|--b1) =len b1 by MATRLIN:def 7;
  then
A9: len ColVec2Mx(v1|--b1)=len (v1|--b1) & width ColVec2Mx(v1|--b1)=1 by A1,
MATRIX_0:23;
A10: len A=len b1 by A1,MATRIX_0:23;
  then
A11: width AT=0 implies len AT=0 by A1,A2,A3,MATRIX_0:54;
A12: width AT=len b1 by A2,A10,A3,MATRIX_0:54;
  thus v1 in ker M implies v1|--b1 in SA
  proof
    assume v1 in ker M;
    then M.v1 = 0.V2 by RANKNULL:10;
    then L * A = LineVec2Mx(0.V2|-- b2) by A1,Th32
      .= LineVec2Mx(len b2|->0.K ) by Th20;
    then ColVec2Mx(len b2|->0.K)= AT*ColVec2Mx(v1|--b1) by A2,A10,A3,A5,A8,
MATRIX_3:22;
    then
    ColVec2Mx(v1|--b1) in Solutions_of(AT,ColVec2Mx(len b2|->0.K)) by A12,A8
,A9,A7;
    then v1|--b1 in Solutions_of(AT,len b2|->0.K);
    then v1|--b1 in the carrier of SA by A4,A11,MATRIX15:def 5;
    hence thesis;
  end;
  assume v1|--b1 in SA;
  then v1|--b1 in the carrier of SA;
  then v1|--b1 in Solutions_of(AT,len b2|->0.K) by A4,A11,MATRIX15:def 5;
  then
  ex f be FinSequence of K st f=v1|--b1 & ColVec2Mx f in Solutions_of(AT,
  ColVec2Mx(len b2|->0.K));
  then ex X be Matrix of K st X = ColVec2Mx(v1|--b1) & len X = width AT &
  width X = width ColVec2Mx(len b2|->0.K) & ColVec2Mx(len b2|->0.K)=AT*X;
  then
A13: ColVec2Mx(len b2|->0.K)=(L*A)@ by A2,A10,A3,A5,A8,MATRIX_3:22;
  width (L*A)=width A by A10,A5,A8,MATRIX_3:def 4;
  then L*A = LineVec2Mx(len b2|->0.K) by A2,A3,A6,A13,MATRIX_0:56
    .= LineVec2Mx(0.V2|--b2) by Th20;
  then LineVec2Mx(0.V2|--b2)=LineVec2Mx(M.v1|-- b2) by A1,Th32;
  then 0.V2|--b2 = Line(LineVec2Mx(M.v1|-- b2),1) by MATRIX15:25
    .= M.v1|-- b2 by MATRIX15:25;
  then M.v1=0.V2 by MATRLIN:34;
  hence thesis by RANKNULL:10;
end;
