defpred S1[ set ] means ex msf being ManySortedFunction of U1,U1 st
( $1 = msf & msf is_isomorphism U1,U1 );
set T = the Sorts of U1;
consider X being set such that
A1:
for x being set holds
( x in X iff ( x in product (MSFuncs ( the Sorts of U1, the Sorts of U1)) & S1[x] ) )
from XBOOLE_0:sch 1();
( id the Sorts of U1 in product (MSFuncs ( the Sorts of U1, the Sorts of U1)) & ex F being ManySortedFunction of U1,U1 st
( id the Sorts of U1 = F & F is_isomorphism U1,U1 ) )
by Th22, MSUALG_3:16;
then reconsider X = X as non empty set by A1;
X is MSFunctionSet of the Sorts of U1, the Sorts of U1
then reconsider X = X as MSFunctionSet of the Sorts of U1, the Sorts of U1 ;
take
X
; for h being ManySortedFunction of U1,U1 holds
( h in X iff h is_isomorphism U1,U1 )
let h be ManySortedFunction of U1,U1; ( h in X iff h is_isomorphism U1,U1 )
assume A2:
h is_isomorphism U1,U1
; h in X
h in product (MSFuncs ( the Sorts of U1, the Sorts of U1))
by Th22;
hence
h in X
by A1, A2; verum