reserve X for set;
reserve G for Group;
reserve H for Subgroup of G;
reserve h,x,y for object;
reserve f for Endomorphism of G;
reserve phi for Automorphism of G;
reserve K for characteristic Subgroup of G;

theorem
  for G being Group
  for N being normal Subgroup of G
  holds Centralizer N is normal Subgroup of G
proof
  let G be Group;
  let N be normal Subgroup of G;

  A1: for g,n being Element of G st n in N holds n |^ g in N
  proof
    let g,n be Element of G;
    assume B1: n in N;
    B2: the multMagma of N = the multMagma of (N |^ g) by GROUP_3:def 13;
    n |^ g in N |^ g by B1,GROUP_3:58;
    hence thesis by B2;
  end;

  A2: for g,x,n being Element of G st x in Centralizer N & n in N
  holds (x |^ g)*n = n*(x |^ g)
  proof
    let g,x,n be Element of G;
    assume B1: x in Centralizer N;
    assume B2: n in N;
    consider n2 being Element of G such that
    B3: n2 = g * n * g";
    B4: n2 = n |^ g" by B3;
    then (x * n2) |^ g = (n2 * x) |^ g by B1,B2,A1,Th60
                      .= (n2 |^ g) * (x |^ g) by GROUP_3:23;
    then (x |^ g) * (n2 |^ g) = (n2 |^ g) * (x |^ g) by GROUP_3:23
                             .= n * (x |^ g) by B4,GROUP_3:25;
    hence (x |^ g) * n = n * (x |^ g) by B4,GROUP_3:25;
  end;

  A3: for g,z being Element of G st z in Centralizer N
  holds z |^ g in Centralizer N
  proof
    let g,z be Element of G;
    assume z in Centralizer N;
    then for n being Element of G st n in N holds
    (z |^ g)*n = n*(z |^ g) by A2;
    then (z |^ g) is Element of Centralizer N by Th60;
    hence z |^ g in Centralizer N;
  end;
  for g being Element of G holds (Centralizer N) |^ g = Centralizer N
  proof
    let g be Element of G;
    for z being Element of G
    holds z in (Centralizer N) |^ g iff z in (Centralizer N)
    proof
      let z be Element of G;
      hereby
        assume z in (Centralizer N) |^ g;
        then (z |^ g") in ((Centralizer N) |^ g) |^ g" by GROUP_3:58;
        then (z |^ g") in Centralizer N by GROUP_3:62;
        then (z |^ g") |^ g in Centralizer N by A3;
        hence z in (Centralizer N) by GROUP_3:25;
      end;
      assume z in (Centralizer N);
      then (z |^ g") |^ g in (Centralizer N) |^ g by A3,GROUP_3:58;
      hence z in (Centralizer N) |^ g by GROUP_3:25;
    end;
    hence (Centralizer N) |^ g = Centralizer N;
  end;
  hence Centralizer N is normal Subgroup of G by GROUP_3:def 13;
end;
