theorem Th32:
  (A |^ n) ^^ A = A ^^ (A |^ n)
proof
  defpred P[Nat] means (A |^ $1) ^^ A = A ^^ (A |^ $1);
A1: now
    let n;
    assume
A2: P[n];
    (A |^ (n + 1)) ^^ A = ((A |^ n) ^^ A) ^^ A by Th23
      .= A ^^ ((A |^ n) ^^ A) by A2,Th18
      .= A ^^ (A |^ (n + 1)) by Th23;
    hence P[n + 1];
  end;
  (A |^ 0) ^^ A = {<%>E} ^^ A by Th24
    .= A by Th13
    .= A ^^ {<%>E} by Th13
    .= A ^^ (A |^ 0) by Th24;
  then
A3: P[0];
  for n holds P[n] from NAT_1:sch 2(A3, A1);
  hence thesis;
end;
