reserve a, I for set,
  S for non empty non void ManySortedSign;

theorem
  for A being non-empty finite-yielding ManySortedSet of I ex F being
  ManySortedFunction of I --> NAT, A st F is "onto"
proof
  let A be non-empty finite-yielding ManySortedSet of I;
  defpred P[object,object] means
   ex f being sequence of  A.$1 st $2 = f & rng f = A.$1;
A1: for i being object st i in I ex j being object st P[i,j]
  proof
    let i be object;
    assume
A2: i in I;
    consider f being sequence of  A.i such that
A3: rng f = A.i by A2,CARD_3:96;
    take f;
    thus thesis by A3;
  end;
  consider F being ManySortedSet of I such that
A4: for i being object st i in I holds P[i,F.i] from PBOOLE:sch 3(A1);
  F is ManySortedFunction of I --> NAT, A
  proof
    let i be object;
    assume i in I;
    then (ex f being sequence of  A.i st F.i = f & rng f = A.i )& (I -->
    NAT).i = NAT by A4,FUNCOP_1:7;
    hence thesis;
  end;
  then reconsider F as ManySortedFunction of I --> NAT, A;
  take F;
  let i be set;
  assume i in I;
  then ex f being sequence of  A.i st F.i = f & rng f = A.i by A4;
  hence thesis;
end;
