Remark CombLinear_trans1 :
 forall (a : list (Term A n)) (R : list (poly A0 eqA ltM)),
 CombLinear A A0 eqA plusA multA eqA_dec n ltM ltM_dec R a ->
 forall (b : poly A0 eqA ltM) (Q : list (poly A0 eqA ltM)),
 R = addEnd b Q ->
 CombLinear A A0 eqA plusA multA eqA_dec n ltM ltM_dec Q
   (s2p A A0 eqA n ltM b) ->
 CombLinear A A0 eqA plusA multA eqA_dec n ltM ltM_dec Q a.

(* Specifications: *)
Theorem Cb_trans : forall (a b : poly A0 eqA ltM) (Q : list (poly A0 eqA ltM)), Cb a (addEnd b Q) -> Cb b Q -> Cb a Q.
Theorem Cb_incl : forall (a : poly A0 eqA ltM) (P Q : list (poly A0 eqA ltM)), (forall a : poly A0 eqA ltM, In a P -> In a Q) -> Cb a P -> Cb a Q.
Theorem Cb_in1 : forall (a b : poly A0 eqA ltM) (Q : list (poly A0 eqA ltM)), Cb a Q -> Cb a (b :: Q).
Theorem Cb_in : forall (a b : poly A0 eqA ltM) (Q : list (poly A0 eqA ltM)), Cb a Q -> Cb a (addEnd b Q).
Theorem Cb_sp : forall (a b : poly A0 eqA ltM) (Q : list (poly A0 eqA ltM)), Cb a Q -> Cb b Q -> Cb (spolyp a b) Q.