
theorem Th33:
  for S1,S2 being non void non empty ManySortedSign for f,g being
Function st f,g form_morphism_between S1,S2 for A,B being MSAlgebra over S2 for
h2 being ManySortedFunction of A,B for h1 being ManySortedFunction of A|(S1,f,g
),B|(S1,f,g) st h1 = h2*f for o1 being OperSymbol of S1, o2 being OperSymbol of
  S2 st o2 = g.o1 & Args(o2,A) <> {} & Args(o2,B) <> {} for x2 being Element of
Args(o2,A) for x1 being Element of Args(o1,A|(S1,f,g)) st x2 = x1 holds h1#x1 =
  h2#x2
proof
  let S1,S2 be non void non empty ManySortedSign;
  let f,g be Function such that
A1: f,g form_morphism_between S1,S2;
  let A2,B2 be MSAlgebra over S2;
  set A1 = A2|(S1,f,g), B1 = B2|(S1,f,g);
  let h2 be ManySortedFunction of A2,B2;
  let h1 be ManySortedFunction of A1,B1 such that
A2: h1 = h2*f;
  let o1 be OperSymbol of S1, o2 be OperSymbol of S2 such that
A3: o2 = g.o1;
  assume that
A4: Args(o2,A2) <> {} and
A5: Args(o2,B2) <> {};
  let x2 be Element of Args(o2,A2);
  let x1 be Element of Args(o1,A1);
  assume
A6: x2 = x1;
  then reconsider f1 = x1, f2 = x2, g2 = h2#x2 as Function by A4,A5,MSUALG_6:1;
A7: Args(o2,A2) = Args(o1,A1) by A1,A3,Th24;
  then
A8: dom f1 = dom the_arity_of o1 by A4,MSUALG_3:6;
A9: dom f2 = dom the_arity_of o2 by A4,MSUALG_3:6;
A10: now
    let i be Nat;
    assume
A11: i in dom f1;
    dom f = the carrier of S1 by A1;
    then h1.((the_arity_of o1)/.i) = h2.(f.((the_arity_of o1)/.i)) by A2,
FUNCT_1:13
      .= h2.(f.((the_arity_of o1).i)) by A8,A11,PARTFUN1:def 6
      .= h2.((f*the_arity_of o1).i) by A8,A11,FUNCT_1:13
      .= h2.((the_arity_of o2).i) by A1,A3
      .= h2.((the_arity_of o2)/.i) by A6,A9,A11,PARTFUN1:def 6;
    hence g2.i = (h1.((the_arity_of o1)/.i)).(f1.i) by A4,A5,A6,A11,MSUALG_3:24
;
  end;
  Args(o2,B2) = Args(o1,B1) by A1,A3,Th24;
  hence thesis by A4,A5,A7,A10,MSUALG_3:24;
end;
