thus
( X <>{} implies ex Z1 being set st for x being object holds ( x in Z1 iff for Z being set st Z in X holds x in Z ) )
:: thesis: ( not X <>{} implies ex b1 being set st b1={} )
defpred S1[ object ] means for Z being set st Z in X holds $1 in Z; assume A1:
X <>{}
; :: thesis: ex Z1 being set st for x being object holds ( x in Z1 iff for Z being set st Z in X holds x in Z ) consider Y being set such that A2:
for x being object holds ( x in Y iff ( x inunion X & S1[x] ) )
fromXBOOLE_0:sch 1(); take
Y
; :: thesis: for x being object holds ( x in Y iff for Z being set st Z in X holds x in Z )
for x being object st ( for Z being set st Z in X holds x in Z ) holds x in Y