src/HOL/Set_Interval.thy
changeset 70817 dd675800469d
parent 70749 5d06b7bb9d22
child 71094 a197532693a5
equal deleted inserted replaced
70816:5bc338cee4a0 70817:dd675800469d
  2245 
  2245 
  2246 lemma sum_gp0:
  2246 lemma sum_gp0:
  2247   fixes x :: "'a::{comm_ring,division_ring}"
  2247   fixes x :: "'a::{comm_ring,division_ring}"
  2248   shows "(\<Sum>i\<le>n. x^i) = (if x = 1 then of_nat(n + 1) else (1 - x^Suc n) / (1 - x))"
  2248   shows "(\<Sum>i\<le>n. x^i) = (if x = 1 then of_nat(n + 1) else (1 - x^Suc n) / (1 - x))"
  2249   using sum_gp_basic[of x n]
  2249   using sum_gp_basic[of x n]
  2250   by (simp add: mult.commute divide_simps)
  2250   by (simp add: mult.commute field_split_simps)
  2251 
  2251 
  2252 lemma sum_power_add:
  2252 lemma sum_power_add:
  2253   fixes x :: "'a::{comm_ring,monoid_mult}"
  2253   fixes x :: "'a::{comm_ring,monoid_mult}"
  2254   shows "(\<Sum>i\<in>I. x^(m+i)) = x^m * (\<Sum>i\<in>I. x^i)"
  2254   shows "(\<Sum>i\<in>I. x^(m+i)) = x^m * (\<Sum>i\<in>I. x^i)"
  2255   by (simp add: sum_distrib_left power_add)
  2255   by (simp add: sum_distrib_left power_add)
  2262   by (auto simp: power_add algebra_simps)
  2262   by (auto simp: power_add algebra_simps)
  2263 
  2263 
  2264 lemma sum_gp_strict:
  2264 lemma sum_gp_strict:
  2265   fixes x :: "'a::{comm_ring,division_ring}"
  2265   fixes x :: "'a::{comm_ring,division_ring}"
  2266   shows "(\<Sum>i<n. x^i) = (if x = 1 then of_nat n else (1 - x^n) / (1 - x))"
  2266   shows "(\<Sum>i<n. x^i) = (if x = 1 then of_nat n else (1 - x^n) / (1 - x))"
  2267   by (induct n) (auto simp: algebra_simps divide_simps)
  2267   by (induct n) (auto simp: algebra_simps field_split_simps)
  2268 
  2268 
  2269 
  2269 
  2270 subsubsection \<open>The formulae for arithmetic sums\<close>
  2270 subsubsection \<open>The formulae for arithmetic sums\<close>
  2271 
  2271 
  2272 context comm_semiring_1
  2272 context comm_semiring_1