induction ls; intuition; simpl in *.
econstructor.
intuition.
econstructor.
eapply IHls.
intuition.
eauto.
rewrite <- ratAdd_0_l.
intuition.
Qed.

(* Specifications: *)
Lemma sumList_rel_ls_intersect: forall (A : Set)(rel : A -> Rat -> Prop)(ls1 : list A) r,
sumList_rel rel ls1 r ->
forall ls2,
NoDup ls1 ->
NoDup ls2 ->
eq_dec A ->
(forall a r1 r2, In a ls1 -> rel a r1 -> rel a r2 -> r1 == r2) ->
(forall a, In a ls1 -> ~In a ls2 -> rel a 0) ->
(forall a, In a ls2 -> ~In a ls1 -> rel a 0) ->
sumList_rel rel ls2 r.