reserve S for non void non empty ManySortedSign,
  U1, U2, U3 for non-empty MSAlgebra over S,
  I for set,
  A for ManySortedSet of I,
  B, C for non-empty ManySortedSet of I;

theorem
  for A, B be ManySortedSet of I for F be ManySortedFunction of A, B
  holds F is "onto" iff rngs F = B
proof
  let A, B be ManySortedSet of I, F be ManySortedFunction of A, B;
A1: dom F = I by PARTFUN1:def 2;
  thus F is "onto" implies rngs F = B
  proof
    assume
A2: F is "onto";
    now
      let i be object;
      assume
A3:   i in I;
      then reconsider f = F.i as Function of A.i, B.i by PBOOLE:def 15;
      rng f = B.i by A2,A3;
      hence (rngs F).i = B.i by A1,A3,FUNCT_6:22;
    end;
    hence thesis;
  end;
  assume
A4: rngs F = B;
  let i be set;
  assume i in I;
  hence thesis by A1,A4,FUNCT_6:22;
end;
