reserve a, I for set,
  S for non empty non void ManySortedSign;
reserve A, M for ManySortedSet of I,
  B, C for non-empty ManySortedSet of I;

theorem
  for F being ManySortedFunction of A, [|B,C|] st F is "onto" holds Mpr2
  F is "onto"
proof
  let F be ManySortedFunction of A, [|B,C|] such that
A1: F is "onto";
  let i be set;
  assume
A2: i in I;
  then reconsider m = (Mpr2 F).i as Function of A.i, C.i by PBOOLE:def 15;
  rng m = C.i
  proof
    thus rng m c= C.i;
    let a be object such that
A3: a in C.i;
    consider z be object such that
A4: z in [|B,C|].i by A2,XBOOLE_0:def 1;
    set p = [z`1,a];
    z in [:B.i,C.i:] by A2,A4,PBOOLE:def 16;
    then
A5: p`1 in B.i by MCART_1:10;
    p`2 in C.i by A3;
    then p in [:B.i,C.i:] by A5,ZFMISC_1:def 2;
    then
A6: p in [|B,C|].i by A2,PBOOLE:def 16;
A7: dom m = A.i by A2,FUNCT_2:def 1;
A8: (F.i) is Function of A.i, [|B,C|].i by A2,PBOOLE:def 15;
    then
A9: dom (F.i) = A.i by A2,FUNCT_2:def 1;
    rng (F.i) = [|B,C|].i by A1,A2;
    then consider b be object such that
A10: b in A.i and
A11: (F.i).b = p by A8,A6,FUNCT_2:11;
    m.b = (pr2 (F.i)).b by A2,Def2
      .= p`2 by A10,A11,A9,MCART_1:def 13
      .= a;
    hence thesis by A10,A7,FUNCT_1:def 3;
  end;
  hence thesis;
end;
