defpred S1[ object ] means ex B being MSSubset of U0 st
( B in SubSort A & $1 = B . s );
set C = bool (Union the Sorts of U0);
consider X being set such that
A1: for x being object holds
( x in X iff ( x in bool (Union the Sorts of U0) & S1[x] ) ) from XBOOLE_0:sch 1();
take X ; :: thesis: for x being object holds
( x in X iff ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) )

A2: bool (Union the Sorts of U0) = bool (union (rng the Sorts of U0)) by CARD_3:def 4;
for x being set holds
( x in X iff ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) )
proof
dom the Sorts of U0 = the carrier of S by PARTFUN1:def 2;
then the Sorts of U0 . s in rng the Sorts of U0 by FUNCT_1:def 3;
then A3: the Sorts of U0 . s c= union (rng the Sorts of U0) by ZFMISC_1:74;
let x be set ; :: thesis: ( x in X iff ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) )

thus ( x in X implies ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) ) by A1; :: thesis: ( ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) implies x in X )

given B being MSSubset of U0 such that A4: B in SubSort A and
A5: x = B . s ; :: thesis: x in X
B c= the Sorts of U0 by PBOOLE:def 18;
then B . s c= the Sorts of U0 . s ;
then x c= union (rng the Sorts of U0) by A5, A3;
hence x in X by A1, A2, A4, A5; :: thesis: verum
end;
hence for x being object holds
( x in X iff ex B being MSSubset of U0 st
( B in SubSort A & x = B . s ) ) ; :: thesis: verum