induction 1; intuition; simpl in *.
eapply IHPermutation.
eapply ratAdd_eqRat_compat; intuition.
rewrite fold_add_body_eq.
eapply eqRat_refl.
rewrite ratAdd_assoc.
rewrite (ratAdd_comm (f y)).
rewrite <- ratAdd_assoc.
intuition.
eapply ratAdd_eqRat_compat; intuition.
eapply ratAdd_eqRat_compat; intuition.
intuition.
eapply eqRat_trans.
eapply IHPermutation1.
eapply H1.
eapply IHPermutation2.
intuition.
Qed.

(* Specifications: *)
Lemma sumList_permutation : forall (A : Set)(f : A -> Rat) ls1 ls2,
Permutation ls1 ls2 ->
sumList ls1 f == sumList ls2 f.