let G1, G2 be ManySortedFunction of the Sorts of (FreeMSA (X * f)),the Sorts of ((FreeMSA X) | S1,f,g); :: thesis: ( G1 is_homomorphism FreeMSA (X * f),(FreeMSA X) | S1,f,g & ( for s being SortSymbol of S1
for x being Element of (X * f) . s holds (G1 . s) . (root-tree [x,s]) = root-tree [x,(f . s)] ) & G2 is_homomorphism FreeMSA (X * f),(FreeMSA X) | S1,f,g & ( for s being SortSymbol of S1
for x being Element of (X * f) . s holds (G2 . s) . (root-tree [x,s]) = root-tree [x,(f . s)] ) implies G1 = G2 )
assume that
A6:
G1 is_homomorphism FreeMSA (X * f),(FreeMSA X) | S1,f,g
and
A7:
for s being SortSymbol of S1
for x being Element of (X * f) . s holds (G1 . s) . (root-tree [x,s]) = root-tree [x,(f . s)]
and
A8:
G2 is_homomorphism FreeMSA (X * f),(FreeMSA X) | S1,f,g
and
A9:
for s being SortSymbol of S1
for x being Element of (X * f) . s holds (G2 . s) . (root-tree [x,s]) = root-tree [x,(f . s)]
; :: thesis: G1 = G2
set H1 = G1;
set H2 = G2;
reconsider A1 = (FreeMSA X) | S1,f,g as non-empty MSAlgebra of S1 by A1, Th23;
then
( G1 || (FreeGen (X * f)) = G2 || (FreeGen (X * f)) & A1 = (FreeMSA X) | S1,f,g )
by PBOOLE:3;
hence
G1 = G2
by A6, A8, EXTENS_1:18; :: thesis: verum