reserve k,m,n for Nat;
reserve R for commutative Ring,
        p,q for Polynomial of R,
        z0,z1 for Element of R;

theorem Th10:
  (<%0.R,0.R,1_R%>`^n).(2*n) = 1_R &
  for k st k <> 2*n holds (<%0.R,0.R,1_R%>`^n).k = 0.R
proof
  set x1=<%0.R,1_R%>;
  set x2=<%0.R,0.R,1_R%>;
  set 2n=2*n;
  defpred P[Nat] means x2`^$1 = x1`^(2*$1);
  x2`^0 = 1_.R = x1`^0 by POLYNOM5:15;
  then A1:P[0];
  A2:P[k] implies P[k+1]
  proof
    A3:x2=x1`^2 by Th6
    .= x1*'x1 by POLYNOM5:17;
    assume P[k];
    hence x2`^(k+1) = (x1`^(2*k))*'x2 by POLYNOM5:19
    .= (x1`^(2*k))*' x1*'x1 by A3,POLYNOM3:33
    .= (x1`^(2*k+1))*' x1 by POLYNOM5:19
    .= x1`^(2*k+1+1) by POLYNOM5:19
    .= x1`^(2*(k+1));
  end;
  P[k] from NAT_1:sch 2(A1,A2);
  then A4: x2`^n = x1`^(2*n);
  defpred Q[Nat] means (1_R) |^$1=1_R;
  A5:Q[0] by BINOM:8;
  A6:Q[k] implies Q[k+1]
  proof
    assume Q[k];
    hence (1_R) |^(k+1) = 1_R*1_R by GROUP_1:def 7
    .=1_R;
  end;
  Q[k] from NAT_1:sch 2(A5,A6);
  then A7:Q[2n];
  n=0 or n>0;
  hence (x2`^n).2n =1_R by A4,Th9,A7;
  let k;
  thus k<>2*n implies (x2`^n).k = 0.R by A4,Th9;
end;
