intros a b Q H' H'0; apply reduceplus_divp; auto.
inversion H'; auto.
Qed.

(* Specifications: *)
Theorem nf_divp :
forall (p : poly A0 eqA ltM) (L : list (poly A0 eqA ltM)),
~ zerop A A0 eqA n ltM p ->
~
zerop A A0 eqA n ltM
(nf A A0 A1 eqA plusA invA minusA multA divA cs eqA_dec n ltM ltM_dec os p
L) ->
exists q : poly A0 eqA ltM,
In q
(nf A A0 A1 eqA plusA invA minusA multA divA cs eqA_dec n ltM ltM_dec os
p L :: L) /\
divp A A0 eqA multA divA n ltM p q /\ ~ zerop A A0 eqA n ltM q.