Definition sumF {X} `{Finite X} (f : X -> nat) : nat :=
list_sum (map f enum).
Definition sumFQ {X} `{Finite X} (f : X -> Q) : Q :=
Qsum(map f enum).

Lemma Q_of_nat_plus (x y : nat) :
Q_of_nat (x + y)%nat =
Q_of_nat x + Q_of_nat y.