
theorem
  for f being non-empty Function, X, Y being non empty set, i, j being object
  st i in dom f & j in dom f & (not X c= f.i or not f.j c= Y) &
    product (f +* (i,X)) c= product (f +* (j,Y))
  holds i = j & X c= Y
proof
  let f be non-empty Function, X, Y be non empty set, i, j be object;
  assume that
    A1: i in dom f & j in dom f and
    A2: not X c= f.i or not f.j c= Y and
    A3: product (f +* (i,X)) c= product (f +* (j,Y));
  a4: f +* (i,X) is non-empty & f +* (j,Y) is non-empty by A1, Th35;
  thus A5: i = j
  proof
    assume A6: i <> j;
    A7: i in dom(f +* (i,X)) & j in dom(f +* (i,X)) by A1, FUNCT_7:30;
    (f +* (i,X)).i c= (f +* (j,Y)).i by a4, A7, A3, PUA2MSS1:1;
    then a8: X c= (f +* (j,Y)).i by A1, FUNCT_7:31;
    (f +* (i,X)).j c= (f +* (j,Y)).j by a4, A7, A3, PUA2MSS1:1;
    then (f +* (i,X)).j c= Y by A1, FUNCT_7:31;
    hence contradiction by A2, a8, A6, FUNCT_7:32;
  end;
    let x be object;
    assume A9: x in X;
    set g = the Element of product f;
    A10: g +* (i,x) in product(f +* (i,X)) by A1, A9, Th37;
    i in dom(f +* (j,Y)) by A1, FUNCT_7:30;
    then (g +* (i,x)).i in (f +* (j,Y)).i by A3, A10, CARD_3:9;
    then A11: (g +* (i,x)).i in Y by A1, A5, FUNCT_7:31;
    i in dom g by A1, CARD_3:9;
    hence thesis by A11, FUNCT_7:31;
end;
