intros Q p q H' H'0 H'1.
apply
rep_plus_zero_reduce
with
(s := pluspf (A:=A) A0 (eqA:=eqA) plusA eqA_dec (n:=n) (ltM:=ltM) ltM_dec
p q)
(t := pO A n); auto.
Qed.

(* Specifications: *)
Theorem red_minus_zero_reduce :
forall (Q : list (poly A0 eqA ltM)) (p q : list (Term A n)),
canonical A0 eqA ltM p ->
canonical A0 eqA ltM q ->
reduceplus Q
(minuspf A A0 A1 eqA invA minusA multA eqA_dec n ltM ltM_dec p q)
(pO A n) ->
exists r1 : list (Term A n), reduceplus Q p r1 /\ reduceplus Q q r1.