reserve n for Nat;

theorem divi1ad:
for R being domRing,
    p being non zero Polynomial of R
for a being Element of R,
    b being non zero Element of R
holds rpoly(1,a)`^n divides p iff rpoly(1,a)`^n divides (b * p)
proof
let R be domRing, p be non zero Polynomial of R;
let a be Element of R, b be non zero Element of R;
defpred P[Nat] means
  rpoly(1,a)`^($1) divides (b*p) implies rpoly(1,a)`^($1) divides p;
now assume rpoly(1,a)`^0 divides (b*p);
  rpoly(1,a)`^0 = 1_.(R) by POLYNOM5:15;
  then (rpoly(1,a)`^0) *' p = p;
  hence rpoly(1,a)`^0 divides p by RING_4:1;
  end;
then IA: P[0];
IS: now let k be Nat;
    assume AS: P[k];
    now assume rpoly(1,a)`^(k+1) divides (b*p);
      then consider r being Polynomial of R such that
      A1: (rpoly(1,a)`^(k+1)) *' r = b*p by RING_4:1;
      C: (rpoly(1,a)`^k) *' (rpoly(1,a) *' r)
            = ((rpoly(1,a)`^k) *' rpoly(1,a)) *' r by POLYNOM3:33
           .= b*p by A1,POLYNOM5:19;
      then consider r1 being Polynomial of R such that
      A2: (rpoly(1,a)`^k) *' r1 = p by AS,RING_4:1;
      reconsider r1 as non zero Polynomial of R by A2;
      (b*r1) *' (rpoly(1,a)`^k)
         = (rpoly(1,a) *' r) *' (rpoly(1,a)`^k) by C,A2,RATFUNC1:5;
      then b * r1 = rpoly(1,a) *' r by RATFUNC1:7;
      then rpoly(1,a) divides r1 by divi1b,RING_4:1;
      then consider r2 being Polynomial of R such that
      A3: rpoly(1,a) *' r2 = r1 by RING_4:1;
      p = ((rpoly(1,a)`^k) *' rpoly(1,a)) *' r2 by A2,A3,POLYNOM3:33
       .= (rpoly(1,a)`^(k+1)) *' r2 by POLYNOM5:19;
      hence rpoly(1,a)`^(k+1) divides p by RING_4:1;
      end;
    hence P[k+1];
    end;
for k being Nat holds P[k] from NAT_1:sch 2(IA,IS);
hence thesis by divi1;
end;
