
theorem Th31:
  for X,Y being non empty TopSpace, M being non empty set for f
  being continuous Function of X, M-TOP_prod (M --> Y) holds commute f is
  Function of M, the carrier of oContMaps(X, Y)
proof
  let X,Y be non empty TopSpace, M be non empty set;
  let f be continuous Function of X, M-TOP_prod (M --> Y);
A1: rng f c= Funcs(M, the carrier of Y)
  proof
    let g be object;
    assume
A2: g in rng f;
A3: dom (M --> the carrier of Y) = M by FUNCOP_1:13;
    the carrier of M-TOP_prod (M --> Y) = product Carrier (M --> Y) by
WAYBEL18:def 3
      .= product (M --> the carrier of Y) by Th30;
    then consider h being Function such that
A4: g = h and
A5: dom h = M and
A6: for x being object st x in M holds h.x in (M --> the carrier of Y).x
    by A2,A3,CARD_3:def 5;
    rng h c= the carrier of Y
    proof
      let y be object;
      assume y in rng h;
      then consider x being object such that
A7:   x in dom h and
A8:   y = h.x by FUNCT_1:def 3;
      (M --> the carrier of Y).x = the carrier of Y by A5,A7,FUNCOP_1:7;
      hence thesis by A5,A6,A7,A8;
    end;
    hence thesis by A4,A5,FUNCT_2:def 2;
  end;
  dom f = the carrier of X by FUNCT_2:def 1;
  then f in Funcs(the carrier of X, Funcs(M, the carrier of Y)) by A1,
FUNCT_2:def 2;
  then
A9: commute f in Funcs(M, Funcs(the carrier of X, the carrier of Y)) by
FUNCT_6:55;
A10: rng commute f c= the carrier of oContMaps(X, Y)
  proof
    let g be object;
    assume g in rng commute f;
    then consider i being object such that
A11: i in dom commute f and
A12: g = (commute f).i by FUNCT_1:def 3;
    ex h being Function st commute f = h & dom h = M & rng h c= Funcs(the
    carrier of X, the carrier of Y) by A9,FUNCT_2:def 2;
    then reconsider i as Element of M by A11;
A13: (M --> Y).i = Y by FUNCOP_1:7;
    g = proj(M --> Y, i)*f by A12,Th29;
    then g is continuous Function of X,Y by A13,WAYBEL18:6;
    then g is Element of oContMaps(X,Y) by Th2;
    hence thesis;
  end;
  ex g being Function st commute f = g & dom g = M & rng g c= Funcs(the
  carrier of X, the carrier of Y) by A9,FUNCT_2:def 2;
  hence thesis by A10,FUNCT_2:2;
end;
