
theorem Th21:
  for X,Y being non empty set, T being non empty Poset for S1
  being full non empty SubRelStr of (T|^Y)|^X for S2 being full non empty
SubRelStr of T|^[:X,Y:] for F being Function of S2, S1 st F is currying holds F
  is monotone
proof
  let X,Y be non empty set, T be non empty Poset;
  let S1 be full non empty SubRelStr of (T|^Y)|^X;
  let S2 be full non empty SubRelStr of T|^[:X,Y:];
  let F be Function of S2, S1 such that
  for x being set st x in dom F holds x is Function & proj1 x is Relation and
A1: for f being Function st f in dom F holds F.f = curry f;
  let f,g be Element of S2;
  reconsider a = f, b = g as Element of T|^[:X,Y:] by YELLOW_0:58;
A2: dom F = the carrier of S2 by FUNCT_2:def 1;
  then
A3: F.g = curry b by A1;
  reconsider Fa = F.f, Fb = F.g as Element of (T|^Y)|^X by YELLOW_0:58;
  assume f <= g;
  then
A4: a <= b by YELLOW_0:59;
A5: the carrier of T|^Y = Funcs(Y, the carrier of T) by YELLOW_1:28;
  then
A6: the carrier of (T|^Y)|^X = Funcs(X, Funcs(Y, the carrier of T)) by
YELLOW_1:28;
A7: F.f = curry a by A2,A1;
  now
    let x be Element of X;
    now
      let y be Element of Y;
      reconsider xy = [x,y] as Element of [:X,Y:];
      Fa.x is Function of Y, the carrier of T by A5,FUNCT_2:66;
      then
A8:   dom (Fa.x) = Y by FUNCT_2:def 1;
      Fa is Function of X, Funcs(Y, the carrier of T) by A6,FUNCT_2:66;
      then dom Fa = X by FUNCT_2:def 1;
      then Fa.x.y = a.(x,y) by A8,A7,FUNCT_5:31;
      then
A9:   Fa.x.y = a.xy;
      Fb.x is Function of Y, the carrier of T by A5,FUNCT_2:66;
      then
A10:  dom (Fb.x) = Y by FUNCT_2:def 1;
      Fb is Function of X, Funcs(Y, the carrier of T) by A6,FUNCT_2:66;
      then dom Fb = X by FUNCT_2:def 1;
      then Fb.x.y = b.(x,y) by A10,A3,FUNCT_5:31;
      hence Fa.x.y <= Fb.x.y by A9,A4,Th14;
    end;
    hence Fa.x <= Fb.x by Th14;
  end;
  then Fa <= Fb by Th14;
  hence thesis by YELLOW_0:60;
end;
