 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 Th47:
  Mx2Tran M is continuous
proof
  set Tn=TOP-REAL n;
  set Tm=TOP-REAL m;
  set TM=Mx2Tran M;
  consider L be Real such that
   A1: L>0 and
   A2: for f be n-element real-valued FinSequence holds|.TM.f.|<=L*|.f.|
    by Th45;
  let x being Point of Tn,U being a_neighborhood of TM.x;
  reconsider TMx=TM.x as Point of Tm;
  reconsider tmx=TMx as Point of Euclid m by EUCLID:67;
  reconsider X=x as Point of Euclid n by EUCLID:67;
  tmx in Int(U) by CONNSP_2:def 1;
  then consider r be Real such that
   A3: r>0 and
   A4: Ball(tmx,r)c=U by GOBOARD6:5;
  reconsider B=Ball(X,r/L) as Subset of Tn by EUCLID:67;
  r/L>0 by A3,A1,XREAL_1:139;
  then x in Int B by GOBOARD6:5;
  then reconsider Bx=B as a_neighborhood of x by CONNSP_2:def 1;
  take Bx;
  let y be object;
  assume y in TM.:Bx;
  then consider p be object such that
   p in dom TM and
   A5: p in Bx and
   A6: TM.p=y by FUNCT_1:def 6;
  reconsider p as Point of Tn by A5;
  A7: r/L*L=r by A1,XCMPLX_1:87;
  reconsider TMp=TM.p as Point of Tm;
  reconsider tmp=TMp as Point of Euclid m by EUCLID:67;
  dist(tmx,tmp)=|.TM.x-TM.p.| by SPPOL_1:39
   .=|.TM.(x-p).| by Th28;
  then A8: dist(tmx,tmp)<=L*|.x-p.| by A2;
  reconsider P=p as Point of Euclid n by EUCLID:67;
  dist(X,P)<r/L by A5,METRIC_1:11;
  then A9: dist(X,P)*L<r/L*L by A1,XREAL_1:68;
  dist(X,P)=|.x-p.| by SPPOL_1:39;
  then dist(tmx,tmp)<r by A9,A7,A8,XXREAL_0:2;
  then tmp in Ball(tmx,r) by METRIC_1:11;
  hence thesis by A4,A6;
end;
