theorem Th8:
  X is closed_wrt_A1-A7 implies Funcs(fs,omega) c= X
proof
  defpred P[set] means Funcs($1,omega) c= X;
  assume
A1: X is closed_wrt_A1-A7;
  then Funcs({},omega)={{}} & {} in X by Th3,FUNCT_5:57;
  then
A2: P[{}] by ZFMISC_1:31;
A3: omega c= X by A1,Th7;
A4: for o,B being set st o in fs & B c= fs & P[B] holds P[B \/ {o}]
  proof
    let o,B be set;
    assume that
A5: o in fs and
    B c= fs and
A6: Funcs(B,omega) c= X;
    now
      let p be object;
      assume p in Funcs(B \/ {o},omega);
      then consider g such that
A7:   p=g and
A8:   dom g = B \/ {o} and
A9:   rng g c= omega by FUNCT_2:def 2;
      set A=g|B;
      rng A c= rng g by RELAT_1:70;
      then
A10:  rng A c= omega by A9;
      set C=g|{o};
A11:  dom C=(B \/ {o}) /\ {o} by A8,RELAT_1:61
        .={o} by XBOOLE_1:21;
      then
A12:  C={[o,C.o]} by GRFUNC_1:7;
      o in dom C by A11,TARSKI:def 1;
      then
A13:  C.o in rng C by FUNCT_1:def 3;
      rng C c= rng g by RELAT_1:70;
      then rng C c= omega by A9;
      then
A14:  C.o in omega by A13;
      o in omega by A5;
      then [o,C.o] in X by A1,A3,A14,Th6;
      then
A15:  C in X by A1,A12,Th2;
      dom A=(B \/ {o}) /\ B by A8,RELAT_1:61
        .=B by XBOOLE_1:21;
      then
A16:  A in Funcs(B,omega) by A10,FUNCT_2:def 2;
      g = (g|(B \/ {o})) by A8
        .= A \/ C by RELAT_1:78;
      hence p in X by A1,A6,A7,A16,A15,Th4;
    end;
    hence thesis by TARSKI:def 3;
  end;
A17: fs is finite;
  thus P[fs] from FINSET_1:sch 2(A17,A2,A4);
end;
