:: URYSOHN3 semantic presentation

registration
let c1 be non empty Subset of REAL ;
cluster -> real Element of a1;
coherence
for b1 being Element of c1 holds b1 is real
;
end;

Lemma1: for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
ex b4 being Function of dyadic 0, bool the carrier of b1 st
( b2 c= b4 . 0 & b3 = ([#] b1) \ (b4 . 1) & ( for b5, b6 being Element of dyadic 0 st b5 < b6 holds
( b4 . b5 is open & b4 . b6 is open & Cl (b4 . b5) c= b4 . b6 ) ) )
proof end;

theorem Th1: :: URYSOHN3:1
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Nat ex b5 being Function of dyadic b4, bool the carrier of b1 st
( b2 c= b5 . 0 & b3 = ([#] b1) \ (b5 . 1) & ( for b6, b7 being Element of dyadic b4 st b6 < b7 holds
( b5 . b6 is open & b5 . b7 is open & Cl (b5 . b6) c= b5 . b7 ) ) )
proof end;

definition
let c1 be non empty TopSpace;
let c2, c3 be Subset of c1;
let c4 be Nat;
assume E3: ( c1 is_T4 & c2 <> {} & c2 is closed & c3 is closed & c2 misses c3 ) ;
mode Drizzle of c2,c3,c4 -> Function of dyadic a4, bool the carrier of a1 means :Def1: :: URYSOHN3:def 1
( a2 c= a5 . 0 & a3 = ([#] a1) \ (a5 . 1) & ( for b1, b2 being Element of dyadic a4 st b1 < b2 holds
( a5 . b1 is open & a5 . b2 is open & Cl (a5 . b1) c= a5 . b2 ) ) );
existence
ex b1 being Function of dyadic c4, bool the carrier of c1 st
( c2 c= b1 . 0 & c3 = ([#] c1) \ (b1 . 1) & ( for b2, b3 being Element of dyadic c4 st b2 < b3 holds
( b1 . b2 is open & b1 . b3 is open & Cl (b1 . b2) c= b1 . b3 ) ) )
by E3, Th1;
end;

:: deftheorem Def1 defines Drizzle URYSOHN3:def 1 :
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Nat st b1 is_T4 & b2 <> {} & b2 is closed & b3 is closed & b2 misses b3 holds
for b5 being Function of dyadic b4, bool the carrier of b1 holds
( b5 is Drizzle of b2,b3,b4 iff ( b2 c= b5 . 0 & b3 = ([#] b1) \ (b5 . 1) & ( for b6, b7 being Element of dyadic b4 st b6 < b7 holds
( b5 . b6 is open & b5 . b7 is open & Cl (b5 . b6) c= b5 . b7 ) ) ) );

theorem Th2: :: URYSOHN3:2
canceled;

theorem Th3: :: URYSOHN3:3
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Nat
for b5 being Drizzle of b2,b3,b4 ex b6 being Drizzle of b2,b3,b4 + 1 st
for b7 being Element of dyadic (b4 + 1) st b7 in dyadic b4 holds
b6 . b7 = b5 . b7
proof end;

definition
let c1, c2 be non empty set ;
let c3 be Function of NAT , PFuncs c1,c2;
let c4 be Nat;
redefine func . as c3 . c4 -> PartFunc of a1,a2;
correctness
coherence
c3 . c4 is PartFunc of c1,c2
;
proof end;
end;

theorem Th4: :: URYSOHN3:4
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Nat
for b5 being Drizzle of b2,b3,b4 holds b5 is Element of PFuncs DYADIC ,(bool the carrier of b1)
proof end;

definition
let c1, c2 be non empty set ;
let c3 be Function of NAT , PFuncs c1,c2;
let c4 be Nat;
redefine func . as c3 . c4 -> Element of PFuncs a1,a2;
coherence
c3 . c4 is Element of PFuncs c1,c2
by FUNCT_2:7;
end;

theorem Th5: :: URYSOHN3:5
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
ex b4 being Functional_Sequence of DYADIC , bool the carrier of b1 st
for b5 being Nat holds
( b4 . b5 is Drizzle of b2,b3,b5 & ( for b6 being Element of dom (b4 . b5) holds (b4 . b5) . b6 = (b4 . (b5 + 1)) . b6 ) )
proof end;

definition
let c1 be non empty TopSpace;
let c2, c3 be Subset of c1;
assume E7: ( c1 is_T4 & c2 <> {} & c2 is closed & c3 is closed & c2 misses c3 ) ;
mode Rain of c2,c3 -> Functional_Sequence of DYADIC , bool the carrier of a1 means :Def2: :: URYSOHN3:def 2
for b1 being Nat holds
( a4 . b1 is Drizzle of a2,a3,b1 & ( for b2 being Element of dom (a4 . b1) holds (a4 . b1) . b2 = (a4 . (b1 + 1)) . b2 ) );
existence
ex b1 being Functional_Sequence of DYADIC , bool the carrier of c1 st
for b2 being Nat holds
( b1 . b2 is Drizzle of c2,c3,b2 & ( for b3 being Element of dom (b1 . b2) holds (b1 . b2) . b3 = (b1 . (b2 + 1)) . b3 ) )
by E7, Th5;
end;

:: deftheorem Def2 defines Rain URYSOHN3:def 2 :
for b1 being non empty TopSpace
for b2, b3 being Subset of b1 st b1 is_T4 & b2 <> {} & b2 is closed & b3 is closed & b2 misses b3 holds
for b4 being Functional_Sequence of DYADIC , bool the carrier of b1 holds
( b4 is Rain of b2,b3 iff for b5 being Nat holds
( b4 . b5 is Drizzle of b2,b3,b5 & ( for b6 being Element of dom (b4 . b5) holds (b4 . b5) . b6 = (b4 . (b5 + 1)) . b6 ) ) );

definition
let c1 be Real;
assume E8: c1 in DYADIC ;
func inf_number_dyadic c1 -> Nat means :Def3: :: URYSOHN3:def 3
( ( a1 in dyadic 0 implies a2 = 0 ) & ( a2 = 0 implies a1 in dyadic 0 ) & ( for b1 being Nat st a1 in dyadic (b1 + 1) & not a1 in dyadic b1 holds
a2 = b1 + 1 ) );
existence
ex b1 being Nat st
( ( c1 in dyadic 0 implies b1 = 0 ) & ( b1 = 0 implies c1 in dyadic 0 ) & ( for b2 being Nat st c1 in dyadic (b2 + 1) & not c1 in dyadic b2 holds
b1 = b2 + 1 ) )
proof end;
uniqueness
for b1, b2 being Nat holds
not ( ( c1 in dyadic 0 implies b1 = 0 ) & ( b1 = 0 implies c1 in dyadic 0 ) & ( for b3 being Nat st c1 in dyadic (b3 + 1) & not c1 in dyadic b3 holds
b1 = b3 + 1 ) & ( c1 in dyadic 0 implies b2 = 0 ) & ( b2 = 0 implies c1 in dyadic 0 ) & ( for b3 being Nat st c1 in dyadic (b3 + 1) & not c1 in dyadic b3 holds
b2 = b3 + 1 ) & not b1 = b2 )
proof end;
end;

:: deftheorem Def3 defines inf_number_dyadic URYSOHN3:def 3 :
for b1 being Real st b1 in DYADIC holds
for b2 being Nat holds
( b2 = inf_number_dyadic b1 iff ( ( b1 in dyadic 0 implies b2 = 0 ) & ( b2 = 0 implies b1 in dyadic 0 ) & ( for b3 being Nat st b1 in dyadic (b3 + 1) & not b1 in dyadic b3 holds
b2 = b3 + 1 ) ) );

theorem Th6: :: URYSOHN3:6
for b1 being Real st b1 in DYADIC holds
b1 in dyadic (inf_number_dyadic b1)
proof end;

theorem Th7: :: URYSOHN3:7
for b1 being Real st b1 in DYADIC holds
for b2 being Nat st inf_number_dyadic b1 <= b2 holds
b1 in dyadic b2
proof end;

theorem Th8: :: URYSOHN3:8
for b1 being Real
for b2 being Nat st b1 in dyadic b2 holds
inf_number_dyadic b1 <= b2
proof end;

theorem Th9: :: URYSOHN3:9
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Real st b5 in DYADIC holds
for b6 being Nat holds (b4 . (inf_number_dyadic b5)) . b5 = (b4 . ((inf_number_dyadic b5) + b6)) . b5
proof end;

theorem Th10: :: URYSOHN3:10
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Real st b5 in DYADIC holds
ex b6 being Subset of b1 st
for b7 being Nat st b5 in dyadic b7 holds
b6 = (b4 . b7) . b5
proof end;

theorem Th11: :: URYSOHN3:11
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3 ex b5 being Function of DOM , bool the carrier of b1 st
for b6 being Real st b6 in DOM holds
( ( b6 in R<0 implies b5 . b6 = {} ) & ( b6 in R>1 implies b5 . b6 = the carrier of b1 ) & ( b6 in DYADIC implies for b7 being Nat st b6 in dyadic b7 holds
b5 . b6 = (b4 . b7) . b6 ) )
proof end;

definition
let c1 be non empty TopSpace;
let c2, c3 be Subset of c1;
assume E15: ( c1 is_T4 & c2 <> {} & c2 is closed & c3 is closed & c2 misses c3 ) ;
let c4 be Rain of c2,c3;
func Tempest c4 -> Function of DOM , bool the carrier of a1 means :Def4: :: URYSOHN3:def 4
for b1 being Real st b1 in DOM holds
( ( b1 in R<0 implies a5 . b1 = {} ) & ( b1 in R>1 implies a5 . b1 = the carrier of a1 ) & ( b1 in DYADIC implies for b2 being Nat st b1 in dyadic b2 holds
a5 . b1 = (a4 . b2) . b1 ) );
existence
ex b1 being Function of DOM , bool the carrier of c1 st
for b2 being Real st b2 in DOM holds
( ( b2 in R<0 implies b1 . b2 = {} ) & ( b2 in R>1 implies b1 . b2 = the carrier of c1 ) & ( b2 in DYADIC implies for b3 being Nat st b2 in dyadic b3 holds
b1 . b2 = (c4 . b3) . b2 ) )
by E15, Th11;
uniqueness
for b1, b2 being Function of DOM , bool the carrier of c1 st ( for b3 being Real st b3 in DOM holds
( ( b3 in R<0 implies b1 . b3 = {} ) & ( b3 in R>1 implies b1 . b3 = the carrier of c1 ) & ( b3 in DYADIC implies for b4 being Nat st b3 in dyadic b4 holds
b1 . b3 = (c4 . b4) . b3 ) ) ) & ( for b3 being Real st b3 in DOM holds
( ( b3 in R<0 implies b2 . b3 = {} ) & ( b3 in R>1 implies b2 . b3 = the carrier of c1 ) & ( b3 in DYADIC implies for b4 being Nat st b3 in dyadic b4 holds
b2 . b3 = (c4 . b4) . b3 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def4 defines Tempest URYSOHN3:def 4 :
for b1 being non empty TopSpace
for b2, b3 being Subset of b1 st b1 is_T4 & b2 <> {} & b2 is closed & b3 is closed & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Function of DOM , bool the carrier of b1 holds
( b5 = Tempest b4 iff for b6 being Real st b6 in DOM holds
( ( b6 in R<0 implies b5 . b6 = {} ) & ( b6 in R>1 implies b5 . b6 = the carrier of b1 ) & ( b6 in DYADIC implies for b7 being Nat st b6 in dyadic b7 holds
b5 . b6 = (b4 . b7) . b6 ) ) );

definition
let c1 be non empty set ;
let c2 be TopSpace;
let c3 be Function of c1, bool the carrier of c2;
let c4 be Element of c1;
redefine func . as c3 . c4 -> Subset of a2;
correctness
coherence
c3 . c4 is Subset of c2
;
proof end;
end;

theorem Th12: :: URYSOHN3:12
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Real
for b6 being Subset of b1 st b6 = (Tempest b4) . b5 & b5 in DOM holds
b6 is open
proof end;

theorem Th13: :: URYSOHN3:13
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5, b6 being Real st b5 in DOM & b6 in DOM & b5 < b6 holds
for b7 being Subset of b1 st b7 = (Tempest b4) . b5 holds
Cl b7 c= (Tempest b4) . b6
proof end;

theorem Th14: :: URYSOHN3:14
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3
for b5 being Point of b1 ex b6 being Subset of ExtREAL st
for b7 being set holds
( b7 in b6 iff ( b7 in DYADIC & ( for b8 being Real st b8 = b7 holds
not b5 in (Tempest b4) . b8 ) ) )
proof end;

definition
let c1 be non empty TopSpace;
let c2, c3 be Subset of c1;
let c4 be Rain of c2,c3;
let c5 be Point of c1;
func Rainbow c5,c4 -> Subset of ExtREAL means :Def5: :: URYSOHN3:def 5
for b1 being set holds
( b1 in a6 iff ( b1 in DYADIC & ( for b2 being Real st b2 = b1 holds
not a5 in (Tempest a4) . b2 ) ) );
existence
ex b1 being Subset of ExtREAL st
for b2 being set holds
( b2 in b1 iff ( b2 in DYADIC & ( for b3 being Real st b3 = b2 holds
not c5 in (Tempest c4) . b3 ) ) )
by Th14;
uniqueness
for b1, b2 being Subset of ExtREAL st ( for b3 being set holds
( b3 in b1 iff ( b3 in DYADIC & ( for b4 being Real st b4 = b3 holds
not c5 in (Tempest c4) . b4 ) ) ) ) & ( for b3 being set holds
( b3 in b2 iff ( b3 in DYADIC & ( for b4 being Real st b4 = b3 holds
not c5 in (Tempest c4) . b4 ) ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def5 defines Rainbow URYSOHN3:def 5 :
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3
for b5 being Point of b1
for b6 being Subset of ExtREAL holds
( b6 = Rainbow b5,b4 iff for b7 being set holds
( b7 in b6 iff ( b7 in DYADIC & ( for b8 being Real st b8 = b7 holds
not b5 in (Tempest b4) . b8 ) ) ) );

definition
let c1, c2 be non empty TopSpace;
let c3 be Function of c1,c2;
let c4 be Point of c1;
redefine func . as c3 . c4 -> Point of a2;
correctness
coherence
c3 . c4 is Point of c2
;
proof end;
end;

theorem Th15: :: URYSOHN3:15
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3
for b5 being Point of b1 holds Rainbow b5,b4 c= DYADIC
proof end;

theorem Th16: :: URYSOHN3:16
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3 ex b5 being Function of b1,R^1 st
for b6 being Point of b1 holds
( ( Rainbow b6,b4 = {} implies b5 . b6 = 0 ) & ( for b7 being non empty Subset of ExtREAL st b7 = Rainbow b6,b4 holds
b5 . b6 = sup b7 ) )
proof end;

definition
let c1 be non empty TopSpace;
let c2, c3 be Subset of c1;
let c4 be Rain of c2,c3;
func Thunder c4 -> Function of a1,R^1 means :Def6: :: URYSOHN3:def 6
for b1 being Point of a1 holds
( ( Rainbow b1,a4 = {} implies a5 . b1 = 0 ) & ( for b2 being non empty Subset of ExtREAL st b2 = Rainbow b1,a4 holds
a5 . b1 = sup b2 ) );
existence
ex b1 being Function of c1,R^1 st
for b2 being Point of c1 holds
( ( Rainbow b2,c4 = {} implies b1 . b2 = 0 ) & ( for b3 being non empty Subset of ExtREAL st b3 = Rainbow b2,c4 holds
b1 . b2 = sup b3 ) )
by Th16;
uniqueness
for b1, b2 being Function of c1,R^1 st ( for b3 being Point of c1 holds
( ( Rainbow b3,c4 = {} implies b1 . b3 = 0 ) & ( for b4 being non empty Subset of ExtREAL st b4 = Rainbow b3,c4 holds
b1 . b3 = sup b4 ) ) ) & ( for b3 being Point of c1 holds
( ( Rainbow b3,c4 = {} implies b2 . b3 = 0 ) & ( for b4 being non empty Subset of ExtREAL st b4 = Rainbow b3,c4 holds
b2 . b3 = sup b4 ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def6 defines Thunder URYSOHN3:def 6 :
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3
for b5 being Function of b1,R^1 holds
( b5 = Thunder b4 iff for b6 being Point of b1 holds
( ( Rainbow b6,b4 = {} implies b5 . b6 = 0 ) & ( for b7 being non empty Subset of ExtREAL st b7 = Rainbow b6,b4 holds
b5 . b6 = sup b7 ) ) );

definition
let c1 be non empty TopSpace;
let c2 be Function of c1,R^1 ;
let c3 be Point of c1;
redefine func . as c2 . c3 -> Real;
correctness
coherence
c2 . c3 is Real
;
proof end;
end;

theorem Th17: :: URYSOHN3:17
for b1 being non empty TopSpace
for b2, b3 being Subset of b1
for b4 being Rain of b2,b3
for b5 being Point of b1
for b6 being non empty Subset of ExtREAL st b6 = Rainbow b5,b4 holds
for b7 being R_eal st b7 = 1 holds
( 0. <=' sup b6 & sup b6 <=' b7 )
proof end;

theorem Th18: :: URYSOHN3:18
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Element of DOM
for b6 being Point of b1 st (Thunder b4) . b6 < b5 holds
b6 in (Tempest b4) . b5
proof end;

theorem Th19: :: URYSOHN3:19
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Real st b5 in DYADIC \/ R>1 & 0 < b5 holds
for b6 being Point of b1 st b6 in (Tempest b4) . b5 holds
(Thunder b4) . b6 <= b5
proof end;

theorem Th20: :: URYSOHN3:20
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3
for b5 being Element of DOM st 0 < b5 holds
for b6 being Point of b1 st b5 < (Thunder b4) . b6 holds
not b6 in (Tempest b4) . b5
proof end;

theorem Th21: :: URYSOHN3:21
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
for b4 being Rain of b2,b3 holds
( Thunder b4 is continuous & ( for b5 being Point of b1 holds
( 0 <= (Thunder b4) . b5 & (Thunder b4) . b5 <= 1 & ( b5 in b2 implies (Thunder b4) . b5 = 0 ) & ( b5 in b3 implies (Thunder b4) . b5 = 1 ) ) ) )
proof end;

theorem Th22: :: URYSOHN3:22
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 <> {} & b2 misses b3 holds
ex b4 being Function of b1,R^1 st
( b4 is continuous & ( for b5 being Point of b1 holds
( 0 <= b4 . b5 & b4 . b5 <= 1 & ( b5 in b2 implies b4 . b5 = 0 ) & ( b5 in b3 implies b4 . b5 = 1 ) ) ) )
proof end;

theorem Th23: :: URYSOHN3:23
for b1 being non empty being_T4 TopSpace
for b2, b3 being closed Subset of b1 st b2 misses b3 holds
ex b4 being Function of b1,R^1 st
( b4 is continuous & ( for b5 being Point of b1 holds
( 0 <= b4 . b5 & b4 . b5 <= 1 & ( b5 in b2 implies b4 . b5 = 0 ) & ( b5 in b3 implies b4 . b5 = 1 ) ) ) )
proof end;

theorem Th24: :: URYSOHN3:24
for b1 being non empty compact being_T2 TopSpace
for b2, b3 being closed Subset of b1 st b2 misses b3 holds
ex b4 being Function of b1,R^1 st
( b4 is continuous & ( for b5 being Point of b1 holds
( 0 <= b4 . b5 & b4 . b5 <= 1 & ( b5 in b2 implies b4 . b5 = 0 ) & ( b5 in b3 implies b4 . b5 = 1 ) ) ) ) by Th23;