set T = the Sorts of U1;
defpred S1[ set ] means ex msf being ManySortedFunction of U1,U1 st
( $1 = msf & msf is_isomorphism U1,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();
A2: id the Sorts of U1 in product (MSFuncs the Sorts of U1,the Sorts of U1) by Th22;
ex F being ManySortedFunction of U1,U1 st
( id the Sorts of U1 = F & F is_isomorphism U1,U1 ) by MSUALG_3:16;
then reconsider X = X as non empty set by A1, A2;
X is MSFunctionSet of the Sorts of U1,the Sorts of U1
proof
thus the Sorts of U1 is_transformable_to the Sorts of U1 ; :: according to AUTALG_1:def 6 :: thesis: for x being set st x in X holds
x is ManySortedFunction of the Sorts of U1,the Sorts of U1

let q be set ; :: thesis: ( q in X implies q is ManySortedFunction of the Sorts of U1,the Sorts of U1 )
assume q in X ; :: thesis: q is ManySortedFunction of the Sorts of U1,the Sorts of U1
then ( q in product (MSFuncs the Sorts of U1,the Sorts of U1) & ex msf being ManySortedFunction of U1,U1 st
( q = msf & msf is_isomorphism U1,U1 ) ) by A1;
hence q is ManySortedFunction of the Sorts of U1,the Sorts of U1 ; :: thesis: verum
end;
then reconsider X = X as MSFunctionSet of the Sorts of U1,the Sorts of U1 ;
take X ; :: thesis: for h being ManySortedFunction of U1,U1 holds
( h in X iff h is_isomorphism U1,U1 )

let h be ManySortedFunction of U1,U1; :: thesis: ( h in X iff h is_isomorphism U1,U1 )
hereby :: thesis: ( h is_isomorphism U1,U1 implies h in X )
assume h in X ; :: thesis: h is_isomorphism U1,U1
then ( h in product (MSFuncs the Sorts of U1,the Sorts of U1) & ex msf being ManySortedFunction of U1,U1 st
( h = msf & msf is_isomorphism U1,U1 ) ) by A1;
hence h is_isomorphism U1,U1 ; :: thesis: verum
end;
assume A3: h is_isomorphism U1,U1 ; :: thesis: h in X
h in product (MSFuncs the Sorts of U1,the Sorts of U1) by Th22;
hence h in X by A1, A3; :: thesis: verum