reserve U for Universe;
reserve x for Element of U;

theorem
  for X being finite set st X c= FinSETS holds X in FinSETS
  proof
    let X be finite set;
    consider p be Function such that
A1: rng p = X and
A2: dom p in omega by FINSET_1:def 1;
    defpred P[object,object] means $2 = {p.$1};
A3: for x be object st x in dom p holds ex y be object st P[x,y];
    consider g be Function such that
A4: dom g = dom p and
A5: for x be object st x in dom p holds P[x,g.x] from CLASSES1:sch 1(A3);
    assume
A6: X c= FinSETS;
A7: rng g c= FinSETS
    proof
      let x be object;
      assume x in rng g;
      then consider y be object such that
A8:   y in dom g and
A9:   x = g.y by FUNCT_1:def 3;
A10:  x = {p.y} by A4,A9,A8,A5;
      p.y in rng p by A8,A4,FUNCT_1:def 3;
      hence thesis by A6,A1,A10,CLASSES2:57;
    end;
    union rng g = X
    proof
      thus union rng g c= X
      proof
        let x be object;
        reconsider x9=x as set by TARSKI:1;
        assume x in union rng g;
        then consider y be set such that
A11:    x9 in y and
A12:    y in rng g by TARSKI:def 4;
        consider z be object such that
A13:    z in dom g and
A14:    y = g.z by A12,FUNCT_1:def 3;
        y = {p.z} by A13,A14,A4,A5;
        then x9 = p.z by A11,TARSKI:def 1;
        hence x in X by A1,A13,A4,FUNCT_1:def 3;
      end;
      let x be object;
      assume x in X;
      then consider y be object such that
A15:  y in dom p and
A16:  x = p.y by A1,FUNCT_1:def 3;
      g.y = {x} by A15,A16,A5; then
      x in {x} in rng g by TARSKI:def 1,A15,A4,FUNCT_1:def 3;
      hence x in union rng g by TARSKI:def 4;
    end;
    hence thesis by A7,A2,A4,CLASSES4:5,43;
  end;
