let S be non empty non void ManySortedSign ; :: thesis: for U0 being MSAlgebra over S
for B being MSSubset of U0 st B = the Sorts of U0 holds
GenMSAlg B = MSAlgebra(# the Sorts of U0, the Charact of U0 #)

let U0 be MSAlgebra over S; :: thesis: for B being MSSubset of U0 st B = the Sorts of U0 holds
GenMSAlg B = MSAlgebra(# the Sorts of U0, the Charact of U0 #)

let B be MSSubset of U0; :: thesis: ( B = the Sorts of U0 implies GenMSAlg B = MSAlgebra(# the Sorts of U0, the Charact of U0 #) )
set W = GenMSAlg B;
reconsider B1 = the Sorts of () as MSSubset of U0 by Def9;
A1: the Charact of () = Opers (U0,B1) by Def9;
assume B = the Sorts of U0 ; :: thesis: GenMSAlg B = MSAlgebra(# the Sorts of U0, the Charact of U0 #)
then the Sorts of U0 is MSSubset of () by Def17;
then A2: the Sorts of U0 c= the Sorts of () by PBOOLE:def 18;
the Sorts of () is MSSubset of U0 by Def9;
then the Sorts of () c= the Sorts of U0 by PBOOLE:def 18;
then the Sorts of U0 = the Sorts of () by ;
hence GenMSAlg B = MSAlgebra(# the Sorts of U0, the Charact of U0 #) by ; :: thesis: verum