reserve UA for Universal_Algebra;
reserve S for non void non empty ManySortedSign,
  U1 for non-empty MSAlgebra over S;

theorem Th15:
  for h be Homomorphism of UAEndMonoid UA, MSAEndMonoid (MSAlg UA)
  st for x be object st x in UAEnd UA
holds h.x = 0 .--> x holds h is bijective
proof
  reconsider e = id the Sorts of MSAlg UA as Element of MSAEnd MSAlg UA by Th7;
  set N = multLoopStr (# MSAEnd MSAlg UA, MSAEndComp MSAlg UA,e#);
  reconsider i = id the carrier of UA as Element of UAEnd UA by Th2;
  let h be Homomorphism of UAEndMonoid UA, MSAEndMonoid (MSAlg UA);
  set G = UAEndMonoid UA;
  set H = MSAEndMonoid MSAlg UA, M = multLoopStr (# UAEnd UA, UAEndComp UA,i#);
  1.M = i;
  then
A1: G = M by Def3;
  assume
A2: for x be object st x in UAEnd UA holds h.x = 0 .--> x;
  for a, b be Element of G st h.a = h.b holds a = b
  proof
    let a, b be Element of G;
    assume
A3: h.a = h.b;
A4: h.b = 0 .--> b by A2,A1
      .= [:{0}, {b}:];
    h.a = 0 .--> a by A2,A1
      .= [:{0}, {a}:];
    then {a} = {b} by A3,A4,ZFMISC_1:110;
    hence thesis by ZFMISC_1:3;
  end;
  then
A5: h is one-to-one by GROUP_6:1;
  1.N = e;
  then
A6: H = N by Def6;
  dom h = UAEnd UA by A1,FUNCT_2:def 1;
  then rng h = the carrier of MSAEndMonoid (MSAlg UA) by A2,A6,Lm3;
  then h is onto;
  hence h is bijective by A5;
end;
