
theorem Th31:
  for S1,S2 being non empty ManySortedSign for f,g being Function
st f,g form_morphism_between S1,S2 for A being MSAlgebra over S2 holds (id the
  Sorts of A)*f = id the Sorts of A|(S1,f,g)
proof
  let S1,S2 be non empty ManySortedSign;
  let f,g be Function such that
A1: f,g form_morphism_between S1,S2;
  dom f = the carrier of S1 & rng f c= the carrier of S2 by A1;
  then reconsider f as Function of the carrier of S1, the carrier of S2 by
FUNCT_2:def 1,RELSET_1:4;
  let A be MSAlgebra over S2;
  now
    let i be object;
    assume i in the carrier of S1;
    then reconsider s = i as SortSymbol of S1;
    thus ((id the Sorts of A)*f).i = (id the Sorts of A).(f.s) by FUNCT_2:15
      .= id ((the Sorts of A).(f.s)) by MSUALG_3:def 1
      .= id (((the Sorts of A)*f).s) by FUNCT_2:15
      .= id ((the Sorts of A|(S1,f,g)).s) by A1,Def3
      .= (id the Sorts of A|(S1,f,g)).i by MSUALG_3:def 1;
  end;
  hence thesis by PBOOLE:3;
end;
