 reserve X,Y for set,
         n,m,k,i for Nat,
         r for Real,
         R for Element of F_Real,
         K for Field,
         f,f1,f2,g1,g2 for FinSequence,
         rf,rf1,rf2 for real-valued FinSequence,
         cf,cf1,cf2 for complex-valued FinSequence,
         F for Function;
reserve f,f1,f2 for n-element real-valued FinSequence,
        p,p1,p2 for Point of TOP-REAL n,
        M,M1,M2 for Matrix of n,m,F_Real,
        A,B for Matrix of n,F_Real;

theorem
  for A be Matrix of n,k,F_Real,
      B be Matrix of n,m,F_Real
   st n = 0 implies k+m = 0
   holds (Mx2Tran(A^^B)).f = (Mx2Tran A).f^(Mx2Tran B).f
proof
  let A be Matrix of n,k,F_Real,B be Matrix of n,m,F_Real;
  set L=LineVec2Mx(@f);
  set MAB=(Mx2Tran(A^^B)).f,MA=(Mx2Tran A).f,MB=(Mx2Tran B).f;
  A1: len MA=k by CARD_1:def 7;
  assume A2: n=0 implies k+m=0;
  then n=0 implies k=0;
  then A3: width A=k by MATRIX13:1;
  n=0 implies m=0 by A2;
  then A4: width B=m by MATRIX13:1;
  A5: len MB=m by CARD_1:def 7;
  then A6: len(MA^MB)=k+m by A1,FINSEQ_1:22;
  A7: for i st 1<=i & i<=k+m holds(MA^MB).i=MAB.i
  proof
   let i;
   assume that
    A8: 1<=i and
    A9: i<=k+m;
   A10: i in dom(MA^MB) by A6,A8,A9,FINSEQ_3:25;
   A11: MAB.i=@f"*"Col(A^^B,i) by A2,A3,A4,A8,A9,Th18;
   per cases by A10,FINSEQ_1:25;
   suppose A12: i in dom MA;
    then i<=k by A1,FINSEQ_3:25;
    then A13: MA.i=@f"*"Col(A,i) by A2,A8,Th18;
    i in Seg width A & (MA^MB).i=MA.i by A3,A1,A12,FINSEQ_1:def 3,def 7;
    hence (MA^MB).i=MAB.i by A11,A13,MATRIX15:16;
   end;
   suppose ex j be Nat st j in dom MB & i=len MA+j;
    then consider j be Nat such that
     A14: j in dom MB and
     A15: i=len MA+j;
    1<=j & j<=m by A5,A14,FINSEQ_3:25;
    then A16: MB.j=@f"*"Col(B,j) by A2,Th18;
    j in Seg width B & (MA^MB).i=MB.j by A4,A5,A14,A15,FINSEQ_1:def 3,def 7;
    hence (MA^MB).i=MAB.i by A3,A1,A11,A15,A16,MATRIX15:17;
   end;
  end;
  len MAB=k+m by A3,A4,CARD_1:def 7;
  hence thesis by A6,A7;
end;
