 reserve m,n for Nat;
 reserve i,j for Integer;
 reserve S for non empty multMagma;
 reserve r,r1,r2,s,s1,s2,t for Element of S;
 reserve G for Group-like non empty multMagma;
 reserve e,h for Element of G;
 reserve G for Group;
 reserve f,g,h for Element of G;

theorem Th19:
  g * h = h * g iff g * h" = h" * g
proof
  thus g * h = h * g implies g * h" = h" * g
  proof
    assume
A1: g * h = h * g;
    (g * h") * (g" * h) = g * h" * g" * h by Def3
      .= g * (h" * g") * h by Def3
      .= g * (g" * h") * h by A1,Th18
      .= g * g" * h" * h by Def3
      .= 1_G * h" * h by Def5
      .= h" * h by Def4
      .= 1_G by Def5;
    then g * h" = (g" * h)" by Th11
      .= h" * g"" by Th16;
    hence thesis;
  end;
  assume g * h" = h" * g;
  then g * (h" * h) = h" * g * h by Def3;
  then g * 1_G = h" * g * h by Def5;
  then g = h" * g * h by Def4;
  then g = h" * (g * h) by Def3;
  then h * g = h * h" * (g * h) by Def3;
  then h * g = 1_G * (g * h) by Def5;
  hence thesis by Def4;
end;
