equal
deleted
inserted
replaced
3392 have "(\<Sum>i<n. f (i + k)) = (\<Sum>i<n. (f \<circ> (\<lambda>i. i + k)) i)" |
3392 have "(\<Sum>i<n. f (i + k)) = (\<Sum>i<n. (f \<circ> (\<lambda>i. i + k)) i)" |
3393 by simp |
3393 by simp |
3394 also have "\<dots> = (\<Sum>i\<in>(\<lambda>i. i + k) ` {..<n}. f i)" |
3394 also have "\<dots> = (\<Sum>i\<in>(\<lambda>i. i + k) ` {..<n}. f i)" |
3395 by (subst sum.reindex) auto |
3395 by (subst sum.reindex) auto |
3396 also have "\<dots> \<le> sum f {..<n + k}" |
3396 also have "\<dots> \<le> sum f {..<n + k}" |
3397 by (intro sum_mono3) (auto simp: f) |
3397 by (intro sum_mono2) (auto simp: f) |
3398 finally show "(\<Sum>i<n. f (i + k)) \<le> sum f {..<n + k}" . |
3398 finally show "(\<Sum>i<n. f (i + k)) \<le> sum f {..<n + k}" . |
3399 qed |
3399 qed |
3400 qed |
3400 qed |
3401 |
3401 |
3402 lemma sums_suminf_ereal: "f sums x \<Longrightarrow> (\<Sum>i. ereal (f i)) = ereal x" |
3402 lemma sums_suminf_ereal: "f sums x \<Longrightarrow> (\<Sum>i. ereal (f i)) = ereal x" |