intros Q p q H'0; elim H'0; auto.
intros x y H' H'1 H'2.
apply CombLinear_comp with (p := y); auto.
apply (eqp_sym _ _ _ _ _ _ _ _ _ cs n); auto.
intros x y z H' H'1 H'2 H'3 H'4.
apply CombLinear_reduce with (q := y); auto.
apply H'2; auto.
apply canonical_reduce with (1 := cs) (3 := H'); auto.
Qed.

(* Specifications: *)
Theorem CombLinear_reducestar :
forall (Q : list (poly A0 eqA ltM)) (p q : list (Term A n)),
reducestar A A0 A1 eqA invA minusA multA divA eqA_dec n ltM ltM_dec Q p q ->
canonical A0 eqA ltM p -> CombLinear Q q -> CombLinear Q p.