theorem Th24:
  for M1 be Matrix of n,k,D, M2 be Matrix of m,k,D st
  width M1 = width M2 holds width (M1^M2) = width M1
proof
  let M1 be Matrix of n,k,D;
  let M2 be Matrix of m,k,D such that
A1: width M1 = width M2;
  consider n such that
A2: for x st x in rng (M1^M2) ex P be FinSequence of D st x = P & len P
  = n by MATRIX_0:9;
  per cases;
  suppose
A3: len (M1^M2) = 0;
    then len M1 + len M2 = 0 by FINSEQ_1:22;
    then
A4: len M1 = 0;
    width (M1^M2) = 0 by A3,MATRIX_0:def 3
      .= width M1 by A4,MATRIX_0:def 3;
    hence thesis;
  end;
  suppose
A5: len (M1^M2) > 0;
    then
A6: len M1 + len M2 > 0+0 by FINSEQ_1:22;
    consider s be FinSequence such that
A7: s in rng (M1^M2) and
A8: len s = width (M1^M2) by A5,MATRIX_0:def 3;
A9: ex P be FinSequence of D st s = P & len P = n by A2,A7;
    per cases by A6;
    suppose
      len M1 > 0;
      then consider s1 be FinSequence such that
A10:  s1 in rng M1 and
A11:  len s1 = width M1 by MATRIX_0:def 3;
      rng M1 c= rng (M1^M2) by FINSEQ_1:29;
      then ex P1 be FinSequence of D st s1 = P1 & len P1 = n by A2,A10;
      hence thesis by A8,A9,A11;
    end;
    suppose
      len M2 > 0;
      then consider s2 be FinSequence such that
A12:  s2 in rng M2 and
A13:  len s2 = width M2 by MATRIX_0:def 3;
      rng M2 c= rng (M1^M2) by FINSEQ_1:30;
      then ex P2 be FinSequence of D st s2 = P2 & len P2 = n by A2,A12;
      hence thesis by A1,A8,A9,A13;
    end;
  end;
end;
