diff -r 1559e9266280 -r 197e25f13f0c src/HOL/Big_Operators.thy --- a/src/HOL/Big_Operators.thy Wed Apr 03 22:26:04 2013 +0200 +++ b/src/HOL/Big_Operators.thy Wed Apr 03 22:26:04 2013 +0200 @@ -968,6 +968,15 @@ thus "setsum f (A - insert x F) = setsum f A - setsum f (insert x F)" by simp qed +lemma setsum_comp_morphism: + assumes "h 0 = 0" and "\x y. h (x + y) = h x + h y" + shows "setsum (h \ g) A = h (setsum g A)" +proof (cases "finite A") + case False then show ?thesis by (simp add: assms) +next + case True then show ?thesis by (induct A) (simp_all add: assms) +qed + subsubsection {* Cardinality as special case of @{const setsum} *}