reserve i,j,m,n,k for Nat,
  x,y for set,
  K for Field,
  a for Element of K;
reserve V for non trivial VectSp of K,
  V1,V2 for VectSp of K,
  f for linear-transformation of V1,V1,
  v,w for Vector of V,
  v1 for Vector of V1,
  L for Scalar of K;
reserve S for 1-sorted,
  F for Function of S,S;

theorem
  for f be linear-transformation of V1,V2 for A be Subset of V1,B be
Subset of V2 st f.:A = B holds f.:(the carrier of Lin A) = the carrier of Lin B
proof
  let f be linear-transformation of V1,V2;
A1: dom f=[#]V1 by FUNCT_2:def 1;
  let A be Subset of V1,B be Subset of V2 such that
A2: f.:A = B;
  thus f.:(the carrier of Lin A) c= the carrier of Lin B
  proof
    let y be object;
    assume y in f.:(the carrier of Lin A);
    then consider x being object such that
    x in dom f and
A3: x in the carrier of Lin A and
A4: f.x=y by FUNCT_1:def 6;
    x in Lin A by A3;
    then consider L be Linear_Combination of A such that
A5: x=Sum L by VECTSP_7:7;
    consider F be FinSequence of V1 such that
    F is one-to-one and
A6: rng F=Carrier L and
A7: x= Sum(L (#) F) by A5,VECTSP_6:def 6;
    set LF=L(#)F;
    consider g be sequence of the carrier of V1 such that
A8: x = g.(len LF) and
A9: g.0 = 0.V1 and
A10: for j be Nat, v be Vector of V1 st j < len LF & v = LF
    .(j+1) holds g.(j+1) = g.j + v by A7,RLVECT_1:def 12;
    defpred P[Nat] means $1 <= len F implies f.(g.$1) in Lin B;
A11: len LF=len F by VECTSP_6:def 5;
    then
A12: dom LF=dom F by FINSEQ_3:29;
A13: for n st P[n] holds P[n+1]
    proof
      let n such that
A14:  P[n];
      reconsider N=n as Element of NAT by ORDINAL1:def 12;
      reconsider gn=g.N as Vector of V1;
      set N1=N+1;
      assume
A15:  n+1<=len F;
      then
A16:  N<len F by NAT_1:13;
A17:  Carrier L c= A & dom f=[#]V1 by FUNCT_2:def 1,VECTSP_6:def 4;
      1<=n+1 by NAT_1:14;
      then
A18:  n+1 in dom F by A15,FINSEQ_3:25;
      then F/.N1= F.N1 & F.N1 in Carrier L by A6,FUNCT_1:def 3,PARTFUN1:def 6;
      then f.(F/.N1) in B by A2,A17,FUNCT_1:def 6;
      then
A19:  L.(F/.N1)*f.(F/.N1) in Lin B by VECTSP_4:21,VECTSP_7:8;
      LF.N1=L.(F/.N1)*(F/.N1) by A12,A18,VECTSP_6:def 5;
      then g.N1=gn+L.(F/.N1)*(F/.N1) by A11,A10,A16;
      then f.(g.(n+1)) = f.(gn)+f.(L.(F/.N1)*(F/.N1))
       by VECTSP_1:def 20
        .= f.(gn)+L.(F/.N1)*f.(F/.N1) by MOD_2:def 2;
      hence thesis by A14,A15,A19,NAT_1:13,VECTSP_4:20;
    end;
    f.(0.V1)=0.V2 by RANKNULL:9;
    then
A20: P[0] by A9,VECTSP_4:17;
    for n holds P[n] from NAT_1:sch 2(A20,A13);
    then P[len F];
    hence thesis by A4,A11,A8,STRUCT_0:def 5;
  end;
  let x be object;
  assume x in the carrier of Lin B;
  then x in Lin B;
  then consider L be Linear_Combination of B such that
A21: x=Sum L by VECTSP_7:7;
  Carrier L c= B by VECTSP_6:def 4;
  then consider M be Linear_Combination of A such that
A22: f.(Sum M)=Sum L by A2,Th41;
  Sum M in Lin A by VECTSP_7:7;
  then Sum M in the carrier of Lin A;
  hence thesis by A21,A22,A1,FUNCT_1:def 6;
end;
