let T be non empty normal TopSpace; :: thesis: for A, B being closed Subset of T st A <> {} & A misses B holds
for G being Rain of A,B ex F being Function of DOM,(bool the carrier of T) st
for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) )

let A, B be closed Subset of T; :: thesis: ( A <> {} & A misses B implies for G being Rain of A,B ex F being Function of DOM,(bool the carrier of T) st
for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) ) )

assume A1: ( A <> {} & A misses B ) ; :: thesis: for G being Rain of A,B ex F being Function of DOM,(bool the carrier of T) st
for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) )

let G be Rain of A,B; :: thesis: ex F being Function of DOM,(bool the carrier of T) st
for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) )

defpred S1[ Element of DOM , set ] means ( ( $1 in halfline 0 implies $2 = {} ) & ( $1 in right_open_halfline 1 implies $2 = the carrier of T ) & ( $1 in DYADIC implies for n being Nat st $1 in dyadic n holds
$2 = (G . n) . $1 ) );
A2: for x being Element of DOM ex y being Subset of T st S1[x,y]
proof
reconsider a = 0 , b = 1 as R_eal by XXREAL_0:def 1;
let x be Element of DOM ; :: thesis: ex y being Subset of T st S1[x,y]
A3: ( x in (halfline 0) \/ DYADIC or x in right_open_halfline 1 ) by URYSOHN1:def 3, XBOOLE_0:def 3;
per cases ( x in halfline 0 or x in DYADIC or x in right_open_halfline 1 ) by A3, XBOOLE_0:def 3;
suppose A8: x in DYADIC ; :: thesis: ex y being Subset of T st S1[x,y]
A9: not x in halfline 0 A11: not x in right_open_halfline 1 ex s being Subset of T st
for n being Nat st x in dyadic n holds
s = (G . n) . x by A1, A8, Th9;
hence ex y being Subset of T st S1[x,y] by A11, A9; :: thesis: verum
end;
suppose A13: x in right_open_halfline 1 ; :: thesis: ex y being Subset of T st S1[x,y]
A14: ( not x in halfline 0 & not x in DYADIC ) the carrier of T c= the carrier of T ;
then reconsider s = the carrier of T as Subset of T ;
s = s ;
hence ex y being Subset of T st S1[x,y] by A14; :: thesis: verum
end;
end;
end;
ex F being Function of DOM,(bool the carrier of T) st
for x being Element of DOM holds S1[x,F . x] from FUNCT_2:sch 3(A2);
then consider F being Function of DOM,(bool the carrier of T) such that
A17: for x being Element of DOM holds S1[x,F . x] ;
take F ; :: thesis: for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) )

thus for x being Real st x in DOM holds
( ( x in halfline 0 implies F . x = {} ) & ( x in right_open_halfline 1 implies F . x = the carrier of T ) & ( x in DYADIC implies for n being Nat st x in dyadic n holds
F . x = (G . n) . x ) ) by A17; :: thesis: verum