
theorem Th4:
  for S,T being Semilattice, f being Function of S,T st f is meet-preserving &
  for X being filtered non empty Subset of S holds f preserves_inf_of X
  for X being non empty Subset of S holds f preserves_inf_of X
proof
  let S,T be Semilattice, f be Function of S,T such that
A1: f is meet-preserving and
A2: for X being non empty filtered Subset of S holds f preserves_inf_of X;
  let X be non empty Subset of S such that
A3: ex_inf_of X,S;
  defpred P[object] means
  ex Y being non empty finite Subset of X st ex_inf_of Y, S & $1 = "/\"(Y,S);
  consider Z being set such that
A4: for x being object holds x in Z iff x in the carrier of S & P[x]
  from XBOOLE_0:sch 1;
  set a = the Element of X;
  reconsider a9 = a as Element of S;
A5: ex_inf_of {a}, S by YELLOW_0:38;
A6: inf {a9} = a by YELLOW_0:39;
  Z c= the carrier of S
  by A4;
  then reconsider Z as non empty Subset of S by A4,A5,A6;
A7: now
    let Y be finite Subset of X;
    Y is Subset of S by XBOOLE_1:1;
    hence Y <> {} implies ex_inf_of Y, S by YELLOW_0:55;
  end;
A8: now
    let Y be finite Subset of X;
    reconsider Y9 = Y as Subset of S by XBOOLE_1:1;
    assume
A9: Y <> {};
    then ex_inf_of Y9, S by YELLOW_0:55;
    hence "/\"(Y,S) in Z by A4,A9;
  end;
A10: now
    let x be Element of S;
    assume x in Z;
    then ex Y being non empty finite Subset of X st ex_inf_of Y,S & x = "/\"
    (Y,S) by A4;
    hence ex Y being finite Subset of X st ex_inf_of Y,S & x = "/\"(Y,S);
  end;
  then
A11: Z is filtered by A7,A8,WAYBEL_0:56;
A12: ex_inf_of Z, S by A3,A7,A8,A10,WAYBEL_0:58;
A13: f preserves_inf_of Z by A2,A11;
  then
A14: ex_inf_of f.:Z,T by A12;
A15: inf (f.:Z) = f.inf Z by A12,A13;
A16: inf Z = inf X by A3,A7,A8,A10,WAYBEL_0:59;
  X c= Z
  proof
    let x be object;
    assume
A17: x in X;
    then reconsider Y = {x} as finite Subset of X by ZFMISC_1:31;
    reconsider x as Element of S by A17;
    Y is Subset of S by XBOOLE_1:1;
    then
A18: ex_inf_of Y, S by YELLOW_0:55;
    x = "/\"(Y,S) by YELLOW_0:39;
    hence thesis by A4,A18;
  end;
  then
A19: f.:X c= f.:Z by RELAT_1:123;
A20: f.:Z is_>=_than f.inf X by A14,A15,A16,YELLOW_0:31;
A21: f.:X is_>=_than f.inf X
  by A19,A20;
A22: now
    let b be Element of T;
    assume
A23: f.:X is_>=_than b;
    f.:Z is_>=_than b
    proof
      let a be Element of T;
      assume a in f.:Z;
      then consider x being object such that
      x in dom f and
A24:  x in Z and
A25:  a = f.x by FUNCT_1:def 6;
      consider Y being non empty finite Subset of X such that
A26:  ex_inf_of Y, S and
A27:  x = "/\"(Y,S) by A4,A24;
      reconsider Y as Subset of S by XBOOLE_1:1;
A28:  f.:Y c= f.:X by RELAT_1:123;
A29:  f preserves_inf_of Y by A1,Th2;
A30:  b is_<=_than f.:Y by A23,A28;
A31:  a = "/\"(f.:Y,T) by A25,A26,A27,A29;
      ex_inf_of f.:Y, T by A26,A29;
      hence thesis by A30,A31,YELLOW_0:def 10;
    end;
    hence f.inf X >= b by A14,A15,A16,YELLOW_0:31;
  end;
  hence ex_inf_of f.:X,T by A21,YELLOW_0:16;
  hence inf (f.:X) = f.inf X by A21,A22,YELLOW_0:def 10;
end;
