
theorem :: Theorem 2.7, p. 60, (i)
:: The hint in CCL suggest employing the distributivity equations.
:: However, we prove it directly from the definition of continuity;
:: it seems easier to do so.
  for I being non empty set, J being RelStr-yielding non-Empty
reflexive-yielding ManySortedSet of I st for i being Element of I holds J.i is
  continuous complete LATTICE holds product J is continuous
proof
  let I be non empty set, J be RelStr-yielding non-Empty reflexive-yielding
  ManySortedSet of I such that
A1: for i being Element of I holds J.i is continuous complete LATTICE;
A2: for i being Element of I holds J.i is complete LATTICE by A1;
  set pJ = product J;
  reconsider pJ9 = pJ as complete LATTICE by A2,WAYBEL_3:31;
  hereby
    let x be Element of pJ;
    reconsider x9 = x as Element of pJ9;
    waybelow x9 is non empty;
    hence waybelow x is non empty;
    waybelow x9 is directed;
    hence waybelow x is directed;
  end;
  pJ9 is up-complete;
  hence pJ is up-complete;
  let x be Element of pJ;
  set swx = sup waybelow x;
  now
    thus dom x = I by WAYBEL_3:27;
    thus dom swx = I by WAYBEL_3:27;
    let i be object;
    assume i in I;
    then reconsider i9 = i as Element of I;
    now
      reconsider K = {i9} as finite Subset of I;
      deffunc F(Element of I) = Bottom (J.$1);
      let a be object;
      consider g being ManySortedSet of I such that
A3:   for i being Element of I holds g.i = F(i) from PBOOLE:sch 5;
      set f = g+*(i, a);
      hereby
        assume a in pi(waybelow x, i9);
        then consider f being Function such that
A4:     f in waybelow x and
A5:     a = f.i by CARD_3:def 6;
        reconsider f as Element of pJ by A4;
        f << x by A4,WAYBEL_3:7;
        then f.i9 << x.i9 by A2,WAYBEL_3:33;
        hence a in waybelow x.i9 by A5;
      end;
A6:   dom g = I by PARTFUN1:def 2;
      then
A7:   dom f = I by FUNCT_7:30;
      assume
A8:   a in waybelow x.i9;
      now
        let j be Element of I;
        per cases;
        suppose
          i9 = j;
          hence f.j is Element of J.j by A8,A6,FUNCT_7:31;
        end;
        suppose
          i9 <> j;
          then f.j = g.j by FUNCT_7:32
            .= Bottom (J.j) by A3;
          hence f.j is Element of J.j;
        end;
      end;
      then reconsider f as Element of pJ by A7,WAYBEL_3:27;
A9:   now
        let j be Element of I;
        per cases;
        suppose
A10:      i9 = j;
          f.i9 = a by A6,FUNCT_7:31;
          hence f.j << x.j by A8,A10,WAYBEL_3:7;
        end;
        suppose
A11:      i9 <> j;
A12:      J.j is complete LATTICE by A1;
          f.j = g.j by A11,FUNCT_7:32
            .= Bottom (J.j) by A3;
          hence f.j << x.j by A12,WAYBEL_3:4;
        end;
      end;
      now
        let j be Element of I;
        assume not j in K;
        then j <> i9 by TARSKI:def 1;
        hence f.j = g.j by FUNCT_7:32
          .= Bottom (J.j) by A3;
      end;
      then f << x by A2,A9,WAYBEL_3:33;
      then
A13:  f in waybelow x;
      a = f.i9 by A6,FUNCT_7:31;
      hence a in pi(waybelow x, i9) by A13,CARD_3:def 6;
    end;
    then
A14: pi(waybelow x, i9) = waybelow (x.i9) by TARSKI:2;
    swx.i9 = sup pi(waybelow x, i9) & J.i9 is
    satisfying_axiom_of_approximation by A1,A2,WAYBEL_3:32;
    hence x.i = swx.i by A14;
  end;
  hence thesis by FUNCT_1:2;
end;
