
theorem Th16:
  for T being non empty normal TopSpace, A,B being closed Subset
  of T st A <> {} & A misses B holds for G being Rain of A,B holds for r being
Real st r in DYADIC \/ (right_open_halfline 1) & 0 < r holds for p being Point
  of T holds p in (Tempest G).r implies (Thunder G).p <= r
proof
  let T be non empty normal TopSpace;
  let A,B be closed Subset of T;
  assume
A1: A <> {} & A misses B;
  let G be Rain of A,B;
  let r be Real;
  assume that
A2: r in DYADIC \/ (right_open_halfline 1) and
A3: 0 < r;
  let p be Point of T;
  assume
A4: p in (Tempest G).r;
  per cases by A2,XBOOLE_0:def 3;
  suppose
A5: r in DYADIC;
    then r in halfline 0 \/ DYADIC by XBOOLE_0:def 3;
    then
A6: r in DOM by URYSOHN1:def 3,XBOOLE_0:def 3;
    now
      per cases;
      case
        Rainbow(p,G) = {};
        hence thesis by A3,Def6;
      end;
      case
        Rainbow(p,G) <> {};
        then reconsider S = Rainbow(p,G) as non empty Subset of ExtREAL;
        reconsider er = r as R_eal by XXREAL_0:def 1;
        for r1 being ExtReal holds r1 in S implies r1 <= er
        proof
          let r1 be ExtReal;
          assume
A7:       r1 in S;
          assume
A8:       not r1 <= er;
A9:       S c= DYADIC by Th13;
          then r1 in DYADIC by A7;
          then reconsider p1 = r1 as Real;
          per cases;
          suppose
A10:        inf_number_dyadic(r) <= inf_number_dyadic(p1);
            set n = inf_number_dyadic(p1);
            r in dyadic(n) by A5,A10,Th6;
            then
A11:        (Tempest G).r = (G.n).r by A1,A5,A6,Def4;
            reconsider D = G.n as Drizzle of A,B,n by A1,Def2;
            p1 in halfline 0 \/ DYADIC by A7,A9,XBOOLE_0:def 3;
            then
A12:        p1 in DOM by URYSOHN1:def 3,XBOOLE_0:def 3;
            p1 in dyadic(n) by A7,A9,Th5;
            then
A13:        (Tempest G).p1 = (G.n).p1 by A1,A7,A9,A12,Def4;
            reconsider r,p1 as Element of dyadic(n) by A5,A7,A9,A10,Th6;
            Cl(D.r) c= D.p1 & D.r c= Cl(D.r) by A1,A8,Def1,PRE_TOPC:18;
            then D.r c= D.p1;
            hence thesis by A4,A7,A11,A13,Def5;
          end;
          suppose
            inf_number_dyadic(p1) <= inf_number_dyadic(r);
            then
A14:        dyadic(inf_number_dyadic(p1)) c= dyadic(inf_number_dyadic(r))
            by URYSOHN2:29;
            set n = inf_number_dyadic(r);
            reconsider D = G.n as Drizzle of A,B,n by A1,Def2;
A15:        p1 in dyadic(inf_number_dyadic(p1)) by A7,A9,Th5;
            p1 in halfline 0 \/ DYADIC by A7,A9,XBOOLE_0:def 3;
            then p1 in DOM by URYSOHN1:def 3,XBOOLE_0:def 3;
            then
A16:        (Tempest G).p1 = (G.n).p1 by A1,A7,A9,A15,A14,Def4;
            r in dyadic(n) by A5,Th6;
            then
A17:        (Tempest G).r = (G.n).r by A1,A5,A6,Def4;
            reconsider p1 as Element of dyadic(n) by A15,A14;
            reconsider r as Element of dyadic(n) by A5,Th6;
            Cl(D.r) c= D.p1 & D.r c= Cl(D.r) by A1,A8,Def1,PRE_TOPC:18;
            then D.r c= D.p1;
            hence thesis by A4,A7,A17,A16,Def5;
          end;
        end;
        then r is UpperBound of S by XXREAL_2:def 1;
        then sup S <= er by XXREAL_2:def 3;
        hence thesis by Def6;
      end;
    end;
    hence thesis;
  end;
  suppose
    r in right_open_halfline 1;
    then
A18: 1 < r by XXREAL_1:235;
    now
      per cases;
      case
        Rainbow(p,G) = {};
        hence thesis by A18,Def6;
      end;
      case
A19:    Rainbow(p,G) <> {};
        reconsider e1 = 1 as R_eal by XXREAL_0:def 1;
        consider S being non empty Subset of ExtREAL such that
A20:    S = Rainbow(p,G) by A19;
        sup S <= e1 & (Thunder G).p = sup S by A20,Def6,Th14;
        hence thesis by A18,XXREAL_0:2;
      end;
    end;
    hence thesis;
  end;
end;
