set X = F1();
set F = { A where A is Subset of F1() : P1[A] } ;
{ A where A is Subset of F1() : P1[A] } c= bool F1()
proof
let a be set ; :: according to TARSKI:def 3 :: thesis: ( not a in { A where A is Subset of F1() : P1[A] } or a in bool F1() )
assume a in { A where A is Subset of F1() : P1[A] } ; :: thesis: a in bool F1()
then ex B being Subset of F1() st
( a = B & P1[B] ) ;
hence a in bool F1() ; :: thesis: verum
end;
then reconsider F = { A where A is Subset of F1() : P1[A] } as Subset-Family of F1() ;
set T = TopStruct(# F1(),(COMPLEMENT F) #);
( {} c= F1() & F1() c= F1() ) by XBOOLE_1:2;
then A4: ( {} in F & F1() in F ) by A1;
A5: for A, B being set st A in F & B in F holds
A \/ B in F
proof
let A, B be set ; :: thesis: ( A in F & B in F implies A \/ B in F )
assume A in F ; :: thesis: ( not B in F or A \/ B in F )
then consider A' being Subset of F1() such that
A6: ( A = A' & P1[A'] ) ;
assume B in F ; :: thesis: A \/ B in F
then consider B' being Subset of F1() such that
A7: ( B = B' & P1[B'] ) ;
P1[A' \/ B'] by A2, A6, A7;
hence A \/ B in F by A6, A7; :: thesis: verum
end;
A8: for G being Subset-Family of F1() st G c= F holds
Intersect G in F
proof
let G be Subset-Family of F1(); :: thesis: ( G c= F implies Intersect G in F )
assume A9: G c= F ; :: thesis: Intersect G in F
now
let A be set ; :: thesis: ( A in G implies P1[A] )
assume A in G ; :: thesis: P1[A]
then A in F by A9;
then ex B being Subset of F1() st
( A = B & P1[B] ) ;
hence P1[A] ; :: thesis: verum
end;
then P1[ Intersect G] by A3;
hence Intersect G in F ; :: thesis: verum
end;
then reconsider T = TopStruct(# F1(),(COMPLEMENT F) #) as strict TopSpace by A4, A5, Th4;
take T ; :: thesis: ( the carrier of T = F1() & ( for A being Subset of T holds
( A is closed iff P1[A] ) ) )

thus the carrier of T = F1() ; :: thesis: for A being Subset of T holds
( A is closed iff P1[A] )

let A be Subset of T; :: thesis: ( A is closed iff P1[A] )
( ( A in F implies ex B being Subset of F1() st
( A = B & P1[B] ) ) & ( ex B being Subset of F1() st
( A = B & P1[B] ) implies A in F ) & ( A is closed implies A in F ) & ( A in F implies A is closed ) ) by A4, A5, A8, Th4;
hence ( A is closed iff P1[A] ) ; :: thesis: verum