
theorem :: stolen (generalized) from WAYBEL_3:33
  for I being non empty set for J being Poset-yielding non-Empty
  ManySortedSet of I st for i being Element of I holds J.i is up-complete
lower-bounded for x,y being Element of product J holds x << y iff (for i being
Element of I holds x .i << y.i) & ex K being finite Subset of I st for i being
  Element of I st not i in K holds x .i = Bottom (J.i)
proof
  let I be non empty set;
  let J be Poset-yielding non-Empty ManySortedSet of I;
  set L = product J;
  assume
A1: for i being Element of I holds J.i is up-complete lower-bounded;
  then reconsider L9 = L as up-complete non empty Poset by Th11;
  let x,y be Element of L;
  hereby
    assume
A2: x << y;
    hereby
      let i be Element of I;
      thus x .i << y.i
      proof
        let Di be non empty directed Subset of J.i such that
A3:     y.i <= sup Di;
        set di = the Element of Di;
        set D = {y+*(i,z) where z is Element of J.i: z in Di};
        reconsider di as Element of J.i;
A4:     dom y = I by WAYBEL_3:27;
        D c= the carrier of L
        proof
          let a be object;
          assume a in D;
          then consider z being Element of J.i such that
A5:       a = y+*(i,z) and
          z in Di;
A6:       now
            let j be Element of I;
            i = j or i <> j;
            then (y+*(i,z)).j = z & i = j or (y+*(i,z)).j = y.j by A4,
FUNCT_7:31,32;
            hence (y+*(i,z)).j is Element of J.j;
          end;
          dom (y+*(i,z)) = I by A4,FUNCT_7:30;
          then a is Element of L by A5,A6,WAYBEL_3:27;
          hence thesis;
        end;
        then reconsider D as Subset of L;
A7:     y+*(i,di) in D;
        then reconsider D as non empty Subset of L;
        D is directed
        proof
          let z1,z2 be Element of L;
          assume z1 in D;
          then consider a1 being Element of J.i such that
A8:       z1 = y+*(i,a1) and
A9:       a1 in Di;
          assume z2 in D;
          then consider a2 being Element of J.i such that
A10:      z2 = y+*(i,a2) and
A11:      a2 in Di;
          consider a being Element of J.i such that
A12:      a in Di and
A13:      a >= a1 and
A14:      a >= a2 by A9,A11,WAYBEL_0:def 1;
          y+*(i,a) in D by A12;
          then reconsider z = y+*(i,a) as Element of L;
          take z;
          thus z in D by A12;
A15:      dom y = I by WAYBEL_3:27;
          now
            let j be Element of I;
            i = j or i <> j;
            then
            z.j = a & z1.j = a1 & i = j or z.j = y.j & z1.j = y.j by A8,A15,
FUNCT_7:31,32;
            hence z.j >= z1.j by A13,YELLOW_0:def 1;
          end;
          hence z >= z1 by WAYBEL_3:28;
          now
            let j be Element of I;
            i = j or i <> j;
            then
            z.j = a & z2.j = a2 & i = j or z.j = y.j & z2.j = y.j by A10,A15,
FUNCT_7:31,32;
            hence z.j >= z2.j by A14,YELLOW_0:def 1;
          end;
          hence thesis by WAYBEL_3:28;
        end;
        then reconsider D as non empty directed Subset of L;
A16:    dom y = I by WAYBEL_3:27;
        now
A17:      Di c= pi(D,i)
          proof
            let a be object;
            assume
A18:        a in Di;
            then reconsider a as Element of J.i;
            y+*(i,a) in D by A18;
            then (y+*(i,a)).i in pi(D,i) by CARD_3:def 6;
            hence thesis by A16,FUNCT_7:31;
          end;
          let j be Element of I;
A19:      J.i is up-complete non empty Poset & J.j is up-complete non
          empty Poset by A1;
          pi(D,i) is non empty directed by YELLOW16:35;
          then
A20:      ex_sup_of pi(D,i),J.i by A19,WAYBEL_0:75;
          ex_sup_of Di,J.i by A19,WAYBEL_0:75;
          then
A21:      sup Di <= sup pi(D,i) by A20,A17,YELLOW_0:34;
          ex_sup_of D, L9 by WAYBEL_0:75;
          then
A22:      (sup D).j = sup pi(D,j) by YELLOW16:33;
A23:      now
            assume j <> i;
            then (y+*(i,di)).j = y.j by FUNCT_7:32;
            hence y.j in pi(D,j) by A7,CARD_3:def 6;
          end;
          pi(D,j) is non empty directed by YELLOW16:35;
          then ex_sup_of pi(D,j),J.j by A19,WAYBEL_0:75;
          then (sup D).j is_>=_than pi(D, j) by A22,YELLOW_0:30;
          hence (sup D).j >= y.j by A3,A21,A22,A23,YELLOW_0:def 2;
        end;
        then sup D >= y by WAYBEL_3:28;
        then consider d being Element of L such that
A24:    d in D and
A25:    d >= x by A2;
        consider z being Element of J.i such that
A26:    d = y+*(i,z) and
A27:    z in Di by A24;
        take z;
        d.i = z by A4,A26,FUNCT_7:31;
        hence thesis by A25,A27,WAYBEL_3:28;
      end;
    end;
    set K = {i where i is Element of I: x .i <> Bottom (J.i)};
    K c= I
    proof
      let a be object;
      assume a in K;
      then ex i being Element of I st a = i & x . i <> Bottom (J.i);
      hence thesis;
    end;
    then reconsider K as Subset of I;
    deffunc F(Element of I) = Bottom (J.$1);
    consider f being ManySortedSet of I such that
A28: for i being Element of I holds f.i = F(i) from PBOOLE:sch 5;
A29: now
      let i be Element of I;
      f.i = Bottom (J.i) by A28;
      hence f.i is Element of J.i;
    end;
A30: dom f = I by PARTFUN1:def 2;
    then reconsider f as Element of product J by A29,WAYBEL_3:27;
    set X = the set of all f+*(y|a) where a is finite Subset of I;
    X c= the carrier of L
    proof
      let a be object;
      assume a in X;
      then consider b being finite Subset of I such that
A31:  a = f+*(y|b);
      dom y = I by WAYBEL_3:27;
      then
A32:  dom (y|b) = b by RELAT_1:62;
A33:  now
        let i be Element of I;
        (f+*(y|b)).i = f.i or (f+*(y|b)).i = (y|b).i & (y|b).i = y.i by A32,
FUNCT_1:47,FUNCT_4:11,13;
        hence (f+*(y|b)).i is Element of J.i;
      end;
      I = I \/ dom (y|b) by A32,XBOOLE_1:12
        .= dom (f+*(y|b)) by A30,FUNCT_4:def 1;
      then a is Element of L by A31,A33,WAYBEL_3:27;
      hence thesis;
    end;
    then reconsider X as Subset of L;
    f+*(y|({}I qua finite Subset of I)) in X;
    then reconsider X as non empty Subset of L;
    X is directed
    proof
      let z1,z2 be Element of L;
      assume z1 in X;
      then consider a1 being finite Subset of I such that
A34:  z1 = f+*(y|a1);
      assume z2 in X;
      then consider a2 being finite Subset of I such that
A35:  z2 = f+*(y|a2);
      reconsider a = a1 \/ a2 as finite Subset of I;
      f+*(y|a) in X;
      then reconsider z = f+*(y|a) as Element of L;
      take z;
      thus z in X;
A36:  dom y = I by WAYBEL_3:27;
      then
A37:  dom (y|a) = a by RELAT_1:62;
A38:  dom (y|a1) = a1 by A36,RELAT_1:62;
      now
        let i be Element of I;
A39:    f.i = Bottom (J.i) by A28;
        J.i is up-complete lower-bounded non empty Poset by A1;
        then
A40:    Bottom (J.i) <= y.i by YELLOW_0:44;
        per cases by XBOOLE_0:def 3;
        suppose
A41:      not i in a1 & i in a;
          then z.i = (y|a).i & (y|a).i = y.i by A37,FUNCT_1:47,FUNCT_4:13;
          hence z.i >= z1.i by A34,A38,A40,A39,A41,FUNCT_4:11;
        end;
        suppose
          not i in a & not i in a1;
          then z.i = f.i & z1.i = f.i by A34,A37,A38,FUNCT_4:11;
          hence z.i >= z1.i by YELLOW_0:def 1;
        end;
        suppose
A42:      i in a1 & i in a;
          then
A43:      z.i = (y|a).i & (y|a).i = y.i by A37,FUNCT_1:47,FUNCT_4:13;
          z1.i = (y|a1).i & (y|a1).i = y. i by A34,A38,A42,FUNCT_1:47
,FUNCT_4:13;
          hence z.i >= z1.i by A43,YELLOW_0:def 1;
        end;
      end;
      hence z >= z1 by WAYBEL_3:28;
A44:  dom (y|a2) = a2 by A36,RELAT_1:62;
      now
        let i be Element of I;
A45:    f.i = Bottom (J.i) by A28;
        J.i is up-complete lower-bounded non empty Poset by A1;
        then
A46:    Bottom (J.i) <= y.i by YELLOW_0:44;
        per cases by XBOOLE_0:def 3;
        suppose
A47:      not i in a2 & i in a;
          then z.i = (y|a).i & (y|a).i = y.i by A37,FUNCT_1:47,FUNCT_4:13;
          hence z.i >= z2.i by A35,A44,A46,A45,A47,FUNCT_4:11;
        end;
        suppose
          not i in a & not i in a2;
          then z.i = f.i & z2.i = f.i by A35,A37,A44,FUNCT_4:11;
          hence z.i >= z2.i by YELLOW_0:def 1;
        end;
        suppose
A48:      i in a2 & i in a;
          then
A49:      z.i = (y|a).i & (y|a).i = y.i by A37,FUNCT_1:47,FUNCT_4:13;
          z2.i = (y|a2).i & (y|a2).i = y. i by A35,A44,A48,FUNCT_1:47
,FUNCT_4:13;
          hence z.i >= z2.i by A49,YELLOW_0:def 1;
        end;
      end;
      hence thesis by WAYBEL_3:28;
    end;
    then reconsider X as non empty directed Subset of L;
    now
      let i be Element of I;
      reconsider a = {i} as finite Subset of I by ZFMISC_1:31;
A50:  f+*(y|a) in X;
      then reconsider z = f+*(y|a) as Element of L;
      ex_sup_of X, L9 by WAYBEL_0:75;
      then sup X is_>=_than X by YELLOW_0:30;
      then
A51:  z <= sup X by A50;
      dom y = I by WAYBEL_3:27;
      then
A52:  dom (y|a) = a by RELAT_1:62;
A53:  i in a by TARSKI:def 1;
      then (y|a).i = y.i by FUNCT_1:49;
      then z.i = y.i by A53,A52,FUNCT_4:13;
      hence (sup X).i >= y.i by A51,WAYBEL_3:28;
    end;
    then y <= sup X by WAYBEL_3:28;
    then consider d being Element of L such that
A54: d in X and
A55: x <= d by A2;
    consider a being finite Subset of I such that
A56: d = f+*(y|a) by A54;
    K c= a
    proof
      dom y = I by WAYBEL_3:27;
      then
A57:  dom (y|a) = a by RELAT_1:62;
      let j be object;
      assume j in K;
      then consider i being Element of I such that
A58:  j = i and
A59:  x .i <> Bottom (J.i);
      J.i is up-complete lower-bounded non empty Poset by A1;
      then
A60:  x .i >= Bottom (J.i) by YELLOW_0:44;
      assume not j in a;
      then
A61:  d.i = f.i by A56,A58,A57,FUNCT_4:11
        .= Bottom (J.i) by A28;
      x .i <= d.i by A55,WAYBEL_3:28;
      hence contradiction by A59,A61,A60,ORDERS_2:2;
    end;
    then reconsider K as finite Subset of I;
    take K;
    thus for i being Element of I st not i in K holds x .i = Bottom (J.i);
  end;
  defpred P[object,object] means
    ex i being Element of I, z being Element of L st $1
  = i & $2 = z & z.i >= x .i;
  assume
A62: for i being Element of I holds x .i << y.i;
  given K being finite Subset of I such that
A63: for i being Element of I st not i in K holds x .i = Bottom (J.i);
  let D be non empty directed Subset of L such that
A64: y <= sup D;
A65: now
    let k be object;
    assume k in K;
    then reconsider i = k as Element of I;
A66: pi(D,i) is directed
    proof
      let a,b be Element of J.i;
      assume a in pi(D,i);
      then consider f being Function such that
A67:  f in D and
A68:  a = f.i by CARD_3:def 6;
      assume b in pi(D,i);
      then consider g being Function such that
A69:  g in D and
A70:  b = g.i by CARD_3:def 6;
      reconsider f,g as Element of L by A67,A69;
      consider h being Element of L such that
A71:  h in D & h >= f & h >= g by A67,A69,WAYBEL_0:def 1;
      take h.i;
      thus thesis by A68,A70,A71,CARD_3:def 6,WAYBEL_3:28;
    end;
    ex_sup_of D, L9 by WAYBEL_0:75;
    then
A72: (sup D).i = sup pi(D,i) by YELLOW16:33;
    x .i << y.i & y.i <= (sup D).i by A62,A64,WAYBEL_3:28;
    then consider zi being Element of J.i such that
A73: zi in pi(D,i) and
A74: zi >= x .i by A66,A72;
    consider a being Function such that
A75: a in D and
A76: zi = a.i by A73,CARD_3:def 6;
    reconsider a as object;
    take a;
    thus a in D by A75;
    thus P[k,a] by A74,A75,A76;
  end;
  consider F being Function such that
A77: dom F = K & rng F c= D and
A78: for k being object st k in K holds P[k,F.k] from FUNCT_1:sch 6(A65);
  reconsider Y = rng F as finite Subset of D by A77,FINSET_1:8;
  consider d being Element of L such that
A79: d in D and
A80: d is_>=_than Y by WAYBEL_0:1;
  take d;
  thus d in D by A79;
  now
    let i be Element of I;
A81: J.i is up-complete lower-bounded non empty Poset by A1;
    per cases;
    suppose
A82:  i in K;
      then consider j being Element of I, z being Element of L such that
A83:  i = j and
A84:  F.i = z and
A85:  z.j >= x .j by A78;
      z in Y by A77,A82,A84,FUNCT_1:def 3;
      then d >= z by A80;
      then d.i >= z.i by WAYBEL_3:28;
      hence d.i >= x .i by A81,A83,A85,YELLOW_0:def 2;
    end;
    suppose
      not i in K;
      then x .i = Bottom (J.i) by A63;
      hence d.i >= x .i by A81,YELLOW_0:44;
    end;
  end;
  hence thesis by WAYBEL_3:28;
end;
