induction ls; intuition; simpl in *; intuition.
eapply eqRat_trans.
eapply fold_add_body_eq; intuition.
rewrite <- ratAdd_0_r.
apply eqRat_refl.
apply eqRat_refl.
trivial.
Qed.

(* Specifications: *)
Lemma fold_add_eq_init_f : forall (A : Set)(ls : list A) f init,
(forall a, In a ls -> (f a) == 0) ->
fold_left (fun r a => r + (f a)) ls init == init.