proposition: Theorem spoly_Reducestar_ppc : forall (Q : list (poly A0 eqA ltM)) (a b : Term A n), eqT (ppc (A:=A) A1 (n:=n) a b) (multTerm (A:=A) multA (n:=n) a b) -> forall (p q : list (Term A n)) (Cpxb : canonical A0 eqA ltM (pX b q)) (Cpxa : canonical A0 eqA ltM (pX a p)), inPolySet A A0 eqA n ltM (pX b q) Q -> inPolySet A A0 eqA n ltM (pX a p) Q -> reducestar A A0 A1 eqA invA minusA multA divA eqA_dec n ltM ltM_dec Q (spolyf A A0 A1 eqA invA minusA multA divA eqA_dec n ltM ltM_dec (pX a p) (pX b q) Cpxa Cpxb) (pO A n).
proof: Proof. Proof using plusA os cs. intros Q a b H' p q Cpxb Cpxa H'0 H'1. apply reducestar0; auto. apply spoly_Reducestar_pO; auto. apply pO_irreducible; auto. Qed.