intros P p H'; elim H'; auto.
intros a p0 H'0 H'1; red in |- *; intros H'2; inversion H'2.
Qed.

(* Specifications: *)
Theorem inPolySet_inv1 :
forall (P : list (poly A0 eqA ltM)) (p : list (Term A n)),
inPolySet p P -> exists q : poly A0 eqA ltM, In q P /\ p = s2p q.