reserve F,G for Group;
reserve G1 for Subgroup of G;
reserve Gc for cyclic Group;
reserve H for Subgroup of Gc;
reserve f for Homomorphism of G,Gc;
reserve a,b for Element of G;
reserve g for Element of Gc;
reserve a1 for Element of G1;
reserve k,m,n,p,s for Element of NAT;
reserve i0,i,i1,i2 for Integer;
reserve j,j1 for Element of INT.Group;
reserve x,y,t for set;

theorem
  for G being strict finite Group st G is cyclic & card G = n holds for
p st p divides n holds ex G1 being strict Subgroup of G st card G1 = p & for G2
  being strict Subgroup of G st card G2 = p holds G2=G1
proof
  let G be strict finite Group;
  assume that
A1: G is cyclic and
A2: card G = n;
  let p such that
A3: p divides n;
  ex G1 being strict Subgroup of G st card G1 = p & for G2 being strict
  Subgroup of G st card G2=p holds G2=G1
  proof
    consider s be Nat such that
A4: n=p*s by A3,NAT_D:def 3;
    consider a being Element of G such that
A5: G= gr {a} by A1;
    take gr {a|^s};
A6: s in NAT by ORDINAL1:def 12;
    then
A7: ord (a|^s) = p by A2,A5,A4,Th8;
    then
A8: card gr {a|^s} = p by GR_CY_1:7;
    for G2 being strict Subgroup of G st card G2 = p holds G2=gr {a|^s}
    proof
      let G2 be strict Subgroup of G such that
A9:   card G2 = p;
      consider k such that
A10:  G2 = gr {a|^k} by A5,Th7;
      n divides k*p by A2,A5,A9,A10,Th11;
      then consider m be Nat such that
A11:  k*p=n*m by NAT_D:def 3;
      ex l be Nat st k=s*l
      proof
        take m;
        reconsider p1=p as Integer;
A12:    p<>0 by A2,A4;
        (1/p1)*p1 *k = (1/p1)*(p1*s*m) by A4,A11,XCMPLX_1:4;
        then 1*k = p1*(1/p1)*s*m by A12,XCMPLX_1:106;
        then k = 1*s*m by A12,XCMPLX_1:106;
        hence thesis;
      end;
      then s divides k by NAT_D:def 3;
      hence thesis by A6,A8,A9,A10,Th9,Th10;
    end;
    hence thesis by A7,GR_CY_1:7;
  end;
  hence thesis;
end;
