intuition.
simpl.
eapply trans.
eapply rel_sumList_compat;
intuition.
eapply mult_proper.
eapply refl.
eapply eqRat_refl.
eapply H1.
trivial.
specialize (rel_sumList_factor_r (evalDist c) (getSupport c) v H); intuition.
eapply trans.
eapply H2.
eapply refl.
rewrite evalDist_lossless.
eapply ratMult_1_l.
trivial.
Qed.

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