reserve X1, X2, Y for non empty RelStr,
  f for Function of [:X1, X2:], Y,
  x for Element of X1,
  y for Element of X2;

theorem :: Lemma 2.9 p. 116  (1) => (2)
  for R, S, T being LATTICE, f being Function of [:R,S:], T, a being
Element of R, b being Element of S st f is directed-sups-preserving holds Proj
  (f, a) is directed-sups-preserving & Proj (f, b) is directed-sups-preserving
proof
  let R, S, T be LATTICE, f be Function of [:R,S:], T, a be Element of R, b be
  Element of S;
  assume
A1: f is directed-sups-preserving;
A2: for X being Subset of S st X is non empty directed holds Proj (f, a)
  preserves_sup_of X
  proof
    reconsider Y9 = {a} as non empty directed Subset of R by WAYBEL_0:5;
    let X be Subset of S;
    assume X is non empty directed;
    then reconsider X9 = X as non empty directed Subset of S;
    Proj (f, a) preserves_sup_of X
    proof
A3:   sup Y9 = a by YELLOW_0:39;
A4:   f preserves_sup_of [:Y9, X9:] by A1;
A5:   Proj (f, a).:X = f.:[:Y9, X9:] by Th15;
A6:   ex_sup_of Y9, R by YELLOW_0:38;
      assume
A7:   ex_sup_of X, S;
      then
A8:   ex_sup_of [:Y9, X9:], [:R, S:] by A6,YELLOW_3:39;
      sup (Proj (f, a).:X) = sup (f.:[:Y9, X9:]) by Th15
        .= f.(sup [:Y9, X9:]) by A8,A4
        .= f.(sup Y9, sup X9) by A7,A6,YELLOW_3:43
        .= Proj (f, a).sup X by A3,Th7;
      hence thesis by A8,A4,A5;
    end;
    hence thesis;
  end;
  for X being Subset of R st X is non empty directed holds Proj (f, b)
  preserves_sup_of X
  proof
    reconsider Y9 = {b} as non empty directed Subset of S by WAYBEL_0:5;
    let X be Subset of R;
    assume X is non empty directed;
    then reconsider X9 = X as non empty directed Subset of R;
    Proj (f, b) preserves_sup_of X
    proof
A9:   sup Y9 = b by YELLOW_0:39;
A10:  f preserves_sup_of [:X9, Y9:] by A1;
A11:  Proj (f, b).:X = f.:[:X9, Y9:] by Th14;
A12:  ex_sup_of Y9, S by YELLOW_0:38;
      assume
A13:  ex_sup_of X, R;
      then
A14:  ex_sup_of [:X9, Y9:], [:R, S:] by A12,YELLOW_3:39;
      sup (Proj (f, b).:X) = sup (f.:[:X9, Y9:]) by Th14
        .= f.(sup [:X9, Y9:]) by A14,A10
        .= f.(sup X9, sup Y9) by A13,A12,YELLOW_3:43
        .= Proj (f, b).sup X by A9,Th8;
      hence thesis by A14,A10,A11;
    end;
    hence thesis;
  end;
  hence thesis by A2;
end;
