reserve i, j, k, c, m, n for Nat,
  a, x, y, z, X, Y for set,
  D, E for non empty set,
  R for Relation,
  f, g for Function,
  p, q for FinSequence;

theorem Th41:
  for f being Element of HFuncs D,
      F being with_the_same_arity FinSequence of HFuncs D holds
   dom (f*<:F:>) c= (arity F)-tuples_on D &
   rng (f*<:F:>) c= D & f*<:F:> in HFuncs D
proof
  set X = D;
  let f be Element of HFuncs X;
  let F be with_the_same_arity FinSequence of HFuncs X;
A1: dom (f*<:F:>) c=dom <:F:> by RELAT_1:25;
A2: (arity F)-tuples_on X c= X* by FINSEQ_2:142;
  dom <:F:> c=(arity F)-tuples_on X by Th40;
  hence dom (f*<:F:>) c= (arity F)-tuples_on X by A1;
  then
A3: dom (f*<:F:>) c= X* by A2;
  thus rng (f*<:F:>) c= X by RELAT_1:def 19;
  then f*<:F:> is PartFunc of X*, X by A3,RELSET_1:4;
  then f*<:F:> in PFuncs(X*, X) by PARTFUN1:45;
  hence thesis;
end;
