Fixpoint getNats s n :=
  match n with 
    | O => nil
    | S n' => (s + n')%nat :: (getNats s n')
  end.

Theorem sumList_subset_le : forall (A : Set){eqd: EqDec A}(ls1 ls2 : list A)(f : A -> Rat), NoDup ls1 -> NoDup ls2 -> (forall a, In a ls1 -> In a ls2) -> sumList ls1 f <= sumList ls2 f.