intuition.
unfold sumList.
rewrite <- fold_add_factor_constant_r.
eapply fold_add_body_eq.
eapply eqRat_symm.
eapply ratMult_0_l.
intuition.
Qed.

(* Specifications: *)
Lemma sumList_factor_constant_l:
forall (A : Set) (ls : list A) (f : A -> Rat) (c : Rat),
sumList ls (fun a : A => c * f a) == c * sumList ls f.