 reserve x,y,z for object,
   i,j,k,l,n,m for Nat,
   D,E for non empty set;
 reserve M for Matrix of D;
 reserve L for Matrix of E;
 reserve k,t,i,j,m,n for Nat,
   D for non empty set;
 reserve V for free Z_Module;
 reserve a for Element of INT.Ring,
   W for Element of V;
 reserve KL1,KL2,KL3 for Linear_Combination of V,
   X for Subset of V;
 reserve V for finite-rank free Z_Module,
   W for Element of V;
 reserve KL1,KL2,KL3 for Linear_Combination of V,
   X for Subset of V;
 reserve s for FinSequence,
   V1,V2,V3 for finite-rank free Z_Module,
   f,f1,f2 for Function of V1,V2,
   g for Function of V2,V3,
   b1 for OrdBasis of V1,
   b2 for OrdBasis of V2,
   b3 for OrdBasis of V3,
   v1,v2 for Vector of V2,
   v,w for Element of V1;
 reserve p2,F for FinSequence of V1,
   p1,d for FinSequence of INT.Ring,
   KL for Linear_Combination of V1;

theorem
  f1 is additive homogeneous & f2 is additive homogeneous &
  AutMt(f1,b1,b2) = AutMt(f2,b1,b2) & len b1 > 0 implies f1 = f2
  proof
    assume that
    A1: f1 is additive homogeneous & f2 is additive homogeneous and
    A2: AutMt(f1,b1,b2) = AutMt(f2,b1,b2) and
    A3: len b1 > 0;
    A4: rng b1 c= the carrier of V1;
    then
    A5: rng b1 c= dom f2 by FUNCT_2:def 1;
    rng b1 c= dom f1 by A4,FUNCT_2:def 1;
    then
    A6: dom (f1*b1) = dom b1 by RELAT_1:27
    .= dom (f2*b1) by A5,RELAT_1:27;
    now
      let x be object;
      assume
      A7: x in dom (f1*b1);
      then reconsider k = x as Nat;
      A8: dom (f1*b1) c= dom b1 by RELAT_1:25;
      then
      A9: f1.(b1/.k) |-- b2 = (AutMt(f2,b1,b2))/.k by A2,A7,Def8
      .= f2.(b1/.k) |-- b2 by A7,A8,Def8;
      thus (f1*b1).x = f1.(b1.x) by A7,FUNCT_1:12
      .= f1.(b1/.x) by A7,A8,PARTFUN1:def 6
      .= f2.(b1/.x) by A9,Th34
      .= f2.(b1.x) by A7,A8,PARTFUN1:def 6
      .= (f2*b1).x by A6,A7,FUNCT_1:12;
    end;
    hence thesis by A1,A3,A6,Th22,FUNCT_1:2;
  end;
