(* Now we can define the optimized version of Buchberger *)
 
Definition genOCPf : list (poly A0 eqA ltM) -> list (poly A0 eqA ltM).

(* Specifications: *)
Theorem genOCPf_stable : forall (a : poly A0 eqA ltM) (P : list (poly A0 eqA ltM)), In a (genOCPf P) -> Cb A A0 eqA plusA multA eqA_dec n ltM ltM_dec a P.