reserve d,i,j,k,m,n,p,q,x,k1,k2 for Nat,
  a,c,i1,i2,i3,i5 for Integer;

theorem Th32:
  p is prime & i divides p |^ n implies
  i = 1 or ex k being Element of NAT st i = p*k
proof
  defpred P[Nat] means i divides p |^ $1 implies i = 1 or (ex k being Element
  of NAT st i = p*k);
  assume
A1: p is prime;
  then
A2: p <> 0 by INT_2:def 4;
A3: for n holds P[n] implies P[n+1]
  proof
    let n;
    assume
A4: P[n];
    now
      assume i divides p |^ (n+1);
      then consider u1 being Nat such that
A5:   p |^ (n+1) = i*u1 by NAT_D:def 3;
      p*(p |^ n) = i*u1 by A5,NEWTON:6;
      then
A6:   p divides i*u1;
      now
        per cases by A1,A6,NEWTON:80;
        suppose
          p divides i;
          then consider w1 being Nat such that
A7:       i = p*w1 by NAT_D:def 3;
          w1 in NAT by ORDINAL1:def 12;
          hence thesis by A7;
        end;
        suppose
          p divides u1;
          then consider w2 being Nat such that
A8:       u1 = p*w2 by NAT_D:def 3;
          p*(p |^ n) = p*(i*w2) by A5,A8,NEWTON:6;
          then p |^ n = p*(i*w2) div p by A2,NAT_D:18;
          then p |^ n = i*w2 by A2,NAT_D:18;
          hence thesis by A4,NAT_D:def 3;
        end;
      end;
      hence thesis;
    end;
    hence thesis;
  end;
A9: P[0]
  proof
    now
      assume i divides p |^ 0;
      then i divides 1 by NEWTON:4;
      then ex t being Nat st 1 = i*t by NAT_D:def 3;
      hence thesis by NAT_1:15;
    end;
    hence thesis;
  end;
  for n holds P[n] from NAT_1:sch 2(A9,A3);
  hence thesis;
end;
