(** ** Scalar multiplication of a polynomial

  - [pscalar n p] is the polynomial [p] where all coefficients have been multiplied by [n].
*)

Definition pscalar_mon (n:nat)(m:mon) : mon :=
  (n * fst m, snd m).Definition pscalar (n:nat)(p:pol) : pol :=
  (fst p, map (pscalar_mon n) (snd p)).

Lemma map_pscalar_mon n ml l : plusl (map (fun m => peval_mon (pscalar_mon n m) l) ml) = n * plusl (map (fun m => peval_mon m l) ml).