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 H being Subgroup of G
  holds Centralizer H is strict normal Subgroup of Normalizer H
proof
  let G be Group;
  let H be Subgroup of G;

  (Centralizer H) is normal Subgroup of Normalizer H
  proof
    reconsider Z=Centralizer H as strict Subgroup of Normalizer H by Lm8;
    set N = Normalizer H;
    B60: for z being Element of N
    holds (for n being Element of N st n in H holds z*n = n*z) iff
          z is Element of Z
    proof
      let z be Element of N;
      reconsider z1=z as Element of G by GROUP_2:42;
      C1: z is Element of Z implies (for n being Element of N st n in H
                                     holds z*n = n*z)
      proof
        assume D1: z is Element of Z;
        let n be Element of N;
        assume D2: n in H;
        reconsider n1=n as Element of G by GROUP_2:42;
        z1*n1 = n1*z1 by D1,D2,Th60
             .= n*z by GROUP_2:43;
        hence z*n = n*z by GROUP_2:43;
      end;
      not (z is Element of Z) implies not (for n being Element of N st n in H
      holds z*n = n*z)
      proof
        assume not z is Element of Z;
        then consider g being Element of G such that
        D1: g in H & g*z1 <> z1 * g by Th60;
        H is Subgroup of Normalizer H by Th80;
        then g in Normalizer H by D1, GROUP_2:41;
        then reconsider n=g as Element of N;
        D2: g*z1 = n*z by GROUP_2:43;
        take n;
        thus thesis by D1,D2,GROUP_2:43;
      end;
      hence (for n being Element of N st n in H holds z*n = n*z) implies
      z is Element of Z;
      thus z is Element of Z implies (for n being Element of N st n in H
      holds z*n = n*z) by C1;
    end;
    B1: for z,n,h being Element of N
    st z in Z & n in N & h in H
    holds h |^ (z |^ n) = h
    proof
      let z,n,h be Element of N;
      assume C1: z in Z;
      assume n in N;
      assume C2: h in H;
      C3: h |^ (z |^ n) = (z" |^ n) * h * (z |^ n) by GROUP_3:26
      .= ((n" * z") * n) * h * (n" * (z * n)) by GROUP_1:def 3
      .= ((n" * z") * n) * (h * (n" * (z * n))) by GROUP_1:def 3
      .= (n" * z") * (n * (h * (n" * (z * n)))) by GROUP_1:def 3
      .= (n" * z") * (n * h * (n" * (z * n))) by GROUP_1:def 3
      .= (n" * z") * (((n * h) * n") * (z * n)) by GROUP_1:def 3
      .= (n" * z") * ((n * h) * n") * (z * n) by GROUP_1:def 3
      .= (n" * z") * (n * h * n") * (z * n);
      C4: for a,b being Element of G
      holds a in N & b in H & b in N implies a*b*a" in H & a*b*a" in N
      proof
        let a,b be Element of G;
        assume D1: a in N;
        assume D2: b in H;
        assume b in N; then
        D4: a*b in N by D1,GROUP_2:50;
        D5: a" in N & b in H by D1,D2,GROUP_2:51;
        then b |^ a" in H by Th79;
        hence a*b*a" in H;
        thus a*b*a" in N by D4,D5,GROUP_2:50;
      end;
      n * h * n" in H
      proof
        reconsider h1=h,n1=n as Element of G by GROUP_2:42;
        n1" = n" by GROUP_2:48;
        then h1*n1" = h*n" by GROUP_2:43;
        then n1*(h1*n1") = n*(h*n") by GROUP_2:43
                        .= n*h*n" by GROUP_1:def 3;
        then D1: n1*h1*n1" = n*h*n" by GROUP_1:def 3;
        h1 in N & n1 in N & h1 in H by C2;
        hence thesis by C4,D1;
      end;
      then consider h2 being Element of N such that
      C5: n * h * n" = h2 & h2 in H;
      z*h2 = h2*z by B60,C1,C5;
      then (z" * z) * h2 = z" * (h2 * z) by GROUP_1:def 3
                        .= (z" * h2) * z by GROUP_1:def 3;
      then (z" * h2) * z = 1_N * h2 by GROUP_1:def 5
                        .= h2 by GROUP_1:def 4;
      then C6: h2 * z" = (z" * h2) * (z * z") by GROUP_1:def 3
                      .= (z" * h2) * 1_N by GROUP_1:def 5
                      .= z" * h2 by GROUP_1:def 4;
      h |^ (z |^ n) = (n" * z") * (n * h * n") * (z * n) by C3
                   .= (n" * z") * h2 * (z * n) by C5
                   .= (n" * z") * (h2 * (z * n)) by GROUP_1:def 3
                   .= n" * (z" * (h2 * (z * n))) by GROUP_1:def 3
                   .= n" * ((z" * h2) * (z * n)) by GROUP_1:def 3
                   .= n" * ((h2 * z") * (z * n)) by C6
                   .= n" * (h2 * (z" * (z * n))) by GROUP_1:def 3
                   .= n" * (h2 * ((z" * z) * n)) by GROUP_1:def 3
                   .= n" * (h2 * (1_N * n)) by GROUP_1:def 5
                   .= n" * (h2 * n) by GROUP_1:def 4
                   .= n" * h2 * n by GROUP_1:def 3
                   .= (n * h * n") |^ n by C5
                   .= (h |^ n") |^ n
                   .= h by GROUP_3:25;
      hence h |^ (z |^ n) = h;
    end;
    B2: for z,n,h being Element of N
    st z in Z & h in H
    holds (z |^ n)*h = h*(z |^ n)
    proof
      let z,n,h be Element of N;
      assume C1: z in Z;
      assume C2: h in H;
      n in N;
      then h |^ (z |^ n) = h by C1,C2,B1;
      hence (z |^ n)*h = h*(z |^ n) by GROUP_3:22;
    end;
    B3: for n being Element of N
    for z being Element of N st z in Z holds (z |^ n) in Z
    proof
      let n,z be Element of N;
      assume C1: z in Z;
      set g = z |^ n;
      for h being Element of N st h in H holds g*h = h*g by C1,B2;
      then g is Element of Z by B60;
      hence thesis;
    end;
    for n being Element of Normalizer H
    holds Z is Subgroup of Z |^ n
    proof
      let n be Element of Normalizer H;
      for z being Element of N st z in Z holds z in Z |^ n
      proof
        let z be Element of N;
        assume z in Z;
        then (z |^ n") |^ n in (Z |^ n) by B3,GROUP_3:58;
        hence z in Z |^ n by GROUP_3:25;
      end;
      hence Z is Subgroup of Z |^ n by GROUP_2:58;
    end;
    hence thesis by GROUP_3:121;
  end;
  hence thesis;
end;
