reserve G for strict Group,
  a,b,x,y,z for Element of G,
  H,K for strict Subgroup of G,
  p for Element of NAT,
  A for Subset of G;
reserve G for Group;
reserve H, B, A for Subgroup of G,
  D for Subgroup of A;

theorem
  for G being strict cyclic Group for H being strict Subgroup of G holds
  H is cyclic Group
proof
  let G be strict cyclic Group;
  let H be strict Subgroup of G;
  per cases;
  suppose H = (1).G;
    hence thesis;
  end;
  suppose
A1: H <> (1).G;
    consider b being Element of G such that
A2: the multMagma of G = gr{b} by GR_CY_1:def 7;
    ex m being Nat st 0 < m & b |^m in H & for j being Nat st
    0 < j & b |^j in H holds m <= j
    proof
      defpred P[Nat] means 0 < $1 & b |^$1 in H;
      ex k being Nat st P[k] by A1,A2,Th24;
      then
A3:   ex k being Nat st P[k];
      ex m being Nat st P[m] & for j being Nat st P[j]
      holds m <= j from NAT_1:sch 5(A3);
      hence thesis;
    end;
    then consider m being Nat such that
A4: 0 < m and
A5: b |^m in H and
A6: for j being Nat st 0 < j & b |^ j in H holds m <= j;
    set c = b |^ m;
    reconsider c as Element of H by A5;
    for a being Element of H holds ex i being Integer st a = c |^ i
    proof
      let a be Element of H;
      ex t being Integer st b |^t in H & b|^t = a
      proof
A7:     a in G by GROUP_2:41;
A8:     a in gr{b} by A2,GROUP_2:41;
        a is Element of G by A7;
        then consider j1 being Integer such that
A9:     a = b |^ j1 by A8,GR_CY_1:5;
        b |^ j1 in H by A9;
        hence thesis by A9;
      end;
      then consider t being Integer such that
A10:  b |^ t in H and
A11:  b |^t = a;
      ex r,s being Integer st 0 <= s & s < m & t = m * r + s
      proof
        take t div m;
        take t mod m;
        thus thesis by A4,NEWTON:64,65,66;
      end;
      then consider r,s being Integer such that
A12:  0 <= s and
A13:  s < m and
A14:  t = m * r + s;
      reconsider s as Element of NAT by A12,INT_1:3;
A15:  b |^ t = b |^(m *r) * (b |^s) by A14,GROUP_1:33
        .= ((b |^m)|^ r) * (b |^ s) by GROUP_1:35;
A16:  (b |^m) |^r in H by A5,Th22;
      b |^s in H
      proof
        set u = b |^t;
        set v = (b |^m) |^ r;
A17:    v" * u = (v" * v) * b|^s by A15,GROUP_1:def 3
          .= 1_G * b |^ s by GROUP_1:def 5
          .= b |^ s by GROUP_1:def 4;
        v" in H by A16,GROUP_2:51;
        hence thesis by A10,A17,GROUP_2:50;
      end;
      then s = 0 by A6,A13;
      then b |^ s = 1_G by GROUP_1:25;
      then
A18:  b |^ t = (b |^ m) |^r by A15,GROUP_1:def 4;
      (b |^m)|^ r = (c) |^ r by GROUP_4:2;
      hence thesis by A11,A18;
    end;
    then H = gr{c} by GR_CY_2:5;
    hence thesis by GR_CY_2:4;
  end;
end;
