reserve n,m,k for Nat,
  X,Y,Z for set,
  f for Function of X,Y,
  H for Subset of X;

theorem Th1:
  f is one-to-one & card n c= card X & X is non empty & Y is non empty
    implies
    the_subsets_of_card(n,f .: H) = (f||^n) .: the_subsets_of_card(n,H)
proof
  assume that
A1: f is one-to-one and
A2: card n c= card X and
A3: X is non empty and
A4: Y is non empty;
  consider f1 be Function such that
A5: n c= f1 .: X by A2,CARD_1:66;
  f in Funcs(X, Y) by A4,FUNCT_2:8;
  then
A6: ex f9 be Function st f=f9 & dom f9=X & rng f9 c= Y by FUNCT_2:def 2;
  then card X c= card Y by A1,CARD_1:10;
  then consider f2 be Function such that
A7: X c= f2 .: Y by CARD_1:66;
  f1 .: X c= f1 .:(f2 .: Y) by A7,RELAT_1:123;
  then n c= f1 .:(f2 .: Y) by A5;
  then n c= (f1*f2) .: Y by RELAT_1:126;
  then card n c= card Y by CARD_1:66;
  then the_subsets_of_card(n,Y) is non empty by A4,GROUP_10:1;
  then f||^n in Funcs(the_subsets_of_card(n,X), the_subsets_of_card(n,Y)) by
FUNCT_2:8;
  then
A8: ex fn be Function st f||^n=fn & dom fn= the_subsets_of_card(n,X) & rng
  fn c= the_subsets_of_card(n,Y) by FUNCT_2:def 2;
  for y being object holds y in the_subsets_of_card(n,f.:H) iff y in (f||^n)
  .:the_subsets_of_card(n,H)
  proof
    let y be object;
    hereby
A9:   f.:H c= rng f by RELAT_1:111;
      assume
A10:  y in the_subsets_of_card(n,f.:H);
      then
A11:  ex X9 be Subset of f.:H st y=X9 & card X9 = n;
      ex x being set st x in dom(f||^n) & x in the_subsets_of_card(n,H) &
      y = (f||^n).x
      proof
        reconsider yy=y as set by TARSKI:1;
        set x = f"yy;
        take x;
A12:    x c= dom f by RELAT_1:132;
A13:    f.:x = y by A10,A9,FUNCT_1:77,XBOOLE_1:1;
        then reconsider x9=x as Subset of H by A1,A10,A12,FUNCT_1:87;
A14:    card x9 = n by A11,A13,CARD_1:5,A1,A12,CARD_1:33;
        then
A15:    x in the_subsets_of_card(n,H);
A16:    the_subsets_of_card(n,H) c= the_subsets_of_card(n,X) by Lm1;
        hence x in dom(f||^n) by A8,A15;
        thus x in the_subsets_of_card(n,H) by A14;
        thus y = f.:x by A10,A9,FUNCT_1:77,XBOOLE_1:1
          .= (f||^n).x by A1,A2,A3,A4,A15,A16,Def2A;
      end;
      hence y in (f||^n).:the_subsets_of_card(n,H) by FUNCT_1:def 6;
    end;
    assume y in (f||^n).:the_subsets_of_card(n,H);
    then consider x be object such that
A17: x in dom(f||^n) and
A18: x in the_subsets_of_card(n,H) and
A19: y = (f||^n).x by FUNCT_1:def 6;
    reconsider x as Element of the_subsets_of_card(n,X) by A17;
A20: y = f .: x by A1,A2,A3,A4,A19,Def2A;
    then reconsider X9=y as Subset of f.:H by A18,RELAT_1:123;
    (ex x9 be Subset of H st x9=x & card x9 = n )& x, f.: x
    are_equipotent by A1,A6,A18,CARD_1:33,XBOOLE_1:1;
    then card X9 = n by A20,CARD_1:5;
    hence thesis;
  end;
  hence thesis by TARSKI:2;
end;
