 reserve G, A for Group;
 reserve phi for Homomorphism of A,AutGroup(G);
 reserve G, A for Group;
 reserve phi for Homomorphism of A,AutGroup(G);
reserve G1,G2 for Group;

theorem Th108:
  for n being non zero Nat
  for g1 being Element of INT.Group n st g1 = 1
  for a2 being Element of INT.Group 2 st a2 = 1
  for x,y being Element of Dihedral_group n
  st x = <*g1,1_(INT.Group 2)*> & y = <*(1_(INT.Group n)),a2*>
  for z being Element of Dihedral_group n
  ex k being Nat st k < n & (z = (x |^ k)*y or z = x |^ k)
proof
  let n be non zero Nat;
  let g1 be Element of INT.Group n;
  assume A1: g1 = 1;
  let a2 be Element of INT.Group 2;
  assume A2: a2 = 1;
  let x,y be Element of Dihedral_group n;
  assume A3: x = <*g1,1_(INT.Group 2)*>;
  assume A4: y = <*(1_(INT.Group n)),a2*>;
  let z be Element of Dihedral_group n;
  consider k being Nat such that
  A5: z = (x |^ k)*y or z = x |^ k by A1,A2,A3,A4,Th107;
  reconsider k1 = k mod n as Nat;
  take k1;
  thus k1 < n by NAT_D:1;
  assume A6: not z = (x |^ k1)*y;
  k1 mod n = k mod n by NAT_D:65;
  then A7: g1 |^ k1 = g1 |^ k by A1, ThINTGroupOrd3;
  A8: x |^ k1 = <* g1 |^ k1, 1_(INT.Group 2) *> by A3, Th25
             .= <* g1 |^ k, 1_(INT.Group 2) *> by A7
             .= x |^ k by A3, Th25; then
  not z = (x |^ k)*y by A6;
  hence x |^ k1 = z by A8, A5;
end;
