reserve q,th,r for Real,
  a,b,p for Real,
  w,z for Complex,
  k,l,m,n,n1,n2 for Nat,
  seq,seq1,seq2,cq1 for Complex_Sequence,
  rseq,rseq1,rseq2 for Real_Sequence,
  rr for set,
  hy1 for 0-convergent non-zero Real_Sequence;
reserve d for Real;
reserve th,th1,th2 for Real;

theorem Th32:
  for z being Complex,
  k holds z|^ (2*k) = (z|^ k)|^ 2& z|^ (2*k)= (z|^ 2)|^ k
proof
  let z be Complex, k;
  defpred X[Nat] means
  z|^ (2*$1) = (z|^ $1)|^ 2 & z|^ (2*$1)= (z|^ 2)|^ $1;
A1: z|^ (2*0) =1*1 by NEWTON:4
    .= 1|^1*1
    .= 1|^(1+1)
    .= (z|^ 0)|^2 by NEWTON:4;
 z|^ (2*0) = 1 by NEWTON:4
    .= (z|^ 2)|^ 0 by NEWTON:4;
then A2: X[0] by A1;
A3: for k st X[k] holds X[k+1]
  proof
    let k;
    assume that
A4: z|^ (2*k) = (z|^ k)|^ 2 and
A5: z|^ (2*k)= (z|^ 2)|^ k;
A6: z|^ (2*(k+1))=z GeoSeq.(2*k+1+1) .=z GeoSeq.(2*k+1)*z by COMSEQ_3:def 1
      .=z|^ (2*k)*z*z by COMSEQ_3:def 1;
then A7: z|^ (2*(k+1)) =((z|^ k)GeoSeq.(1+1))*z*z by A4
      .=((z|^ k)GeoSeq.(0+1)*(z|^ k))*z*z by COMSEQ_3:def 1
      .=((z|^ k)GeoSeq.0*(z|^ k)*(z|^ k))*z*z by COMSEQ_3:def 1
      .=((1r)*(z|^ k)*(z|^ k))*z*z by COMSEQ_3:def 1
      .=(1r)*(z GeoSeq.k*z)*((z|^ k)*z)
      .=(1r)*(z GeoSeq.(k+1))*(z GeoSeq.k*z) by COMSEQ_3:def 1
      .=(1r)*(z|^(k+1))*(z GeoSeq.(k+1)) by COMSEQ_3:def 1
      .=((z|^(k+1))GeoSeq.0)*(z|^(k+1))*(z|^(k+1)) by COMSEQ_3:def 1
      .=((z|^(k+1))GeoSeq.(0+1))*(z|^(k+1)) by COMSEQ_3:def 1
      .=(z|^(k+1))GeoSeq.(0+1+1) by COMSEQ_3:def 1
      .=(z|^(k+1))|^ 2;
 z|^ (2*(k+1))= (z|^ 2)|^ k*(1r*z*z) by A5,A6
      .= (z|^ 2)|^ k*(z GeoSeq.0 *z*z) by COMSEQ_3:def 1
      .=(z|^ 2)|^ k*(z GeoSeq.(0+1) *z) by COMSEQ_3:def 1
      .=(z|^ 2)|^ k*z GeoSeq.(0+1+1) by COMSEQ_3:def 1
      .= (z|^ 2)|^ (k+1) by COMSEQ_3:def 1;
    hence thesis by A7;
  end;
 for k holds X[k] from NAT_1:sch 2(A2,A3);
  hence thesis;
end;
