let S1, S2, S3 be non empty ManySortedSign ; :: thesis: for f1, g1 being Function st f1,g1 form_morphism_between S1,S2 holds
for f2, g2 being Function st f2,g2 form_morphism_between S2,S3 holds
for A being MSAlgebra of S3 holds A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1
let f1, g1 be Function; :: thesis: ( f1,g1 form_morphism_between S1,S2 implies for f2, g2 being Function st f2,g2 form_morphism_between S2,S3 holds
for A being MSAlgebra of S3 holds A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1 )
assume A1:
f1,g1 form_morphism_between S1,S2
; :: thesis: for f2, g2 being Function st f2,g2 form_morphism_between S2,S3 holds
for A being MSAlgebra of S3 holds A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1
let f2, g2 be Function; :: thesis: ( f2,g2 form_morphism_between S2,S3 implies for A being MSAlgebra of S3 holds A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1 )
assume A2:
f2,g2 form_morphism_between S2,S3
; :: thesis: for A being MSAlgebra of S3 holds A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1
let A be MSAlgebra of S3; :: thesis: A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1
A3:
f2 * f1,g2 * g1 form_morphism_between S1,S3
by A1, A2, PUA2MSS1:30;
A4: the Sorts of ((A | S2,f2,g2) | S1,f1,g1) =
the Sorts of (A | S2,f2,g2) * f1
by A1, Def3
.=
(the Sorts of A * f2) * f1
by A2, Def3
.=
the Sorts of A * (f2 * f1)
by RELAT_1:55
;
the Charact of ((A | S2,f2,g2) | S1,f1,g1) =
the Charact of (A | S2,f2,g2) * g1
by A1, Def3
.=
(the Charact of A * g2) * g1
by A2, Def3
.=
the Charact of A * (g2 * g1)
by RELAT_1:55
;
hence
A | S1,(f2 * f1),(g2 * g1) = (A | S2,f2,g2) | S1,f1,g1
by A3, A4, Def3; :: thesis: verum