reserve x,y,y1,y2,z,a,b for object, X,Y,Z,V1,V2 for set,
  f,g,h,h9,f1,f2 for Function,
  i for Nat,
  P for Permutation of X,
  D,D1,D2,D3 for non empty set,
  d1 for Element of D1,
  d2 for Element of D2,
  d3 for Element of D3;

theorem Th10:
  [:X,Y:] <> {} & f in Funcs([:X,Y:],Z) implies curry f in Funcs(X
  ,Funcs(Y,Z)) & curry' f in Funcs(Y,Funcs(X,Z))
proof
  assume
A1: [:X,Y:] <> {};
  assume f in Funcs([:X,Y:],Z);
  then
A2: ex g st f = g & dom g = [:X,Y:] & rng g c= Z by FUNCT_2:def 2;
  then rng curry f c= Funcs(Y,rng f) & Funcs(Y,rng f) c= Funcs(Y,Z) by
FUNCT_5:35,56;
  then
A3: rng curry f c= Funcs(Y,Z);
  rng curry' f c= Funcs(X,rng f) & Funcs(X,rng f) c= Funcs(X,Z) by A2,
FUNCT_5:35,56;
  then
A4: rng curry' f c= Funcs(X,Z);
  dom curry f = X & dom curry' f = Y by A1,A2,FUNCT_5:24;
  hence thesis by A3,A4,FUNCT_2:def 2;
end;
