reconsider e = {} (bool {}), tE = {({} {})} as Subset-Family of {} ;
reconsider E = {} (bool (bool {})) as empty Subset-Family of (bool {}) ;
let X be set ; :: thesis: for O being Subset-Family of (bool X) ex B being Subset-Family of X st
( B = UniCl (FinMeetCl (union O)) & TopStruct(# X,B #) is TopSpace & ( for o being Subset-Family of X st o in O holds
TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) ) & ( for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #) ) )

let O be Subset-Family of (bool X); :: thesis: ex B being Subset-Family of X st
( B = UniCl (FinMeetCl (union O)) & TopStruct(# X,B #) is TopSpace & ( for o being Subset-Family of X st o in O holds
TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) ) & ( for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #) ) )

reconsider B = UniCl (FinMeetCl (union O)) as Subset-Family of X ;
take B ; :: thesis: ( B = UniCl (FinMeetCl (union O)) & TopStruct(# X,B #) is TopSpace & ( for o being Subset-Family of X st o in O holds
TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) ) & ( for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #) ) )

thus B = UniCl (FinMeetCl (union O)) ; :: thesis: ( TopStruct(# X,B #) is TopSpace & ( for o being Subset-Family of X st o in O holds
TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) ) & ( for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #) ) )

reconsider dT = TopStruct(# {},tE #) as discrete TopStruct by TDLAT_3:def 1, ZFMISC_1:1;
A1: {{},{}} = tE by ENUMSET1:29;
A2: FinMeetCl tE = {{},{}} by YELLOW_9:11;
A3: now :: thesis: ( X is empty implies ( ( union O = e or union O = tE ) & FinMeetCl (union E) = the topology of dT & TopStruct(# X,B #) is TopSpace ) )
assume A4: X is empty ; :: thesis: ( ( union O = e or union O = tE ) & FinMeetCl (union E) = the topology of dT & TopStruct(# X,B #) is TopSpace )
hence A5: ( union O = e or union O = tE ) by ZFMISC_1:1, ZFMISC_1:33; :: thesis: ( FinMeetCl (union E) = the topology of dT & TopStruct(# X,B #) is TopSpace )
thus FinMeetCl (union E) = the topology of dT by YELLOW_9:17; :: thesis: TopStruct(# X,B #) is TopSpace
hence TopStruct(# X,B #) is TopSpace by A2, A1, A4, A5, YELLOW_9:11; :: thesis: verum
end;
hence TopStruct(# X,B #) is TopSpace by CANTOR_1:15; :: thesis: ( ( for o being Subset-Family of X st o in O holds
TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) ) & ( for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #) ) )

reconsider TT = TopStruct(# X,B #) as TopSpace by A3, CANTOR_1:15;
hereby :: thesis: for T being TopSpace st the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) holds
T is TopExtension of TopStruct(# X,B #)
let o be Subset-Family of X; :: thesis: ( o in O implies TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) )
set S = TopStruct(# X,o #);
A6: FinMeetCl (union O) c= B by CANTOR_1:1;
assume o in O ; :: thesis: TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #)
then A7: o c= union O by ZFMISC_1:74;
union O c= FinMeetCl (union O) by CANTOR_1:4;
then o c= FinMeetCl (union O) by A7;
then the topology of TopStruct(# X,o #) c= the topology of TT by A6;
hence TopStruct(# X,B #) is TopExtension of TopStruct(# X,o #) by YELLOW_9:def 5; :: thesis: verum
end;
let T be TopSpace; :: thesis: ( the carrier of T = X & ( for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ) implies T is TopExtension of TopStruct(# X,B #) )

assume that
A8: the carrier of T = X and
A9: for o being Subset-Family of X st o in O holds
T is TopExtension of TopStruct(# X,o #) ; :: thesis: T is TopExtension of TopStruct(# X,B #)
thus the carrier of T = the carrier of TopStruct(# X,B #) by A8; :: according to YELLOW_9:def 5 :: thesis: the topology of TopStruct(# X,B #) c= the topology of T
A10: ( X <> {} implies not T is empty ) by A8;
now :: thesis: for a being set st a in O holds
a c= the topology of T
let a be set ; :: thesis: ( a in O implies a c= the topology of T )
assume A11: a in O ; :: thesis: a c= the topology of T
then reconsider o = a as Subset-Family of X ;
T is TopExtension of TopStruct(# X,o #) by A9, A11;
hence a c= the topology of T by YELLOW_9:def 5; :: thesis: verum
end;
then union O c= the topology of T by ZFMISC_1:76;
then FinMeetCl (union O) c= FinMeetCl the topology of T by A8, CANTOR_1:14;
then A12: B c= UniCl (FinMeetCl the topology of T) by A8, CANTOR_1:9;
X in the topology of T by A8, PRE_TOPC:def 1;
hence the topology of TopStruct(# X,B #) c= the topology of T by A12, A10, CANTOR_1:7; :: thesis: verum