src/HOL/Hyperreal/Integration.thy
changeset 20432 07ec57376051
parent 20256 5024ba0831a6
child 20563 44eda2314aab
equal deleted inserted replaced
20431:eef4e9081bea 20432:07ec57376051
   171 apply (simp (no_asm_simp) add: partition_le)
   171 apply (simp (no_asm_simp) add: partition_le)
   172 apply (rule order_trans)
   172 apply (rule order_trans)
   173  prefer 2 apply assumption
   173  prefer 2 apply assumption
   174 apply (subgoal_tac "psize D - n = Suc (psize D - Suc n)")
   174 apply (subgoal_tac "psize D - n = Suc (psize D - Suc n)")
   175  prefer 2 apply arith
   175  prefer 2 apply arith
   176 apply (drule_tac x = "psize D - Suc n" in spec)
   176 apply (drule_tac x = "psize D - Suc n" in spec, simp) 
   177 ML {* fast_arith_split_limit := 0; *}  (* FIXME *)
       
   178 apply simp
       
   179 ML {* fast_arith_split_limit := 9; *}  (* FIXME *)
       
   180 done
   177 done
   181 
   178 
   182 lemma partition_ub_lt: "[| partition(a,b) D; n < psize D |] ==> D(n) < b"
   179 lemma partition_ub_lt: "[| partition(a,b) D; n < psize D |] ==> D(n) < b"
   183 by (blast intro: partition_rhs [THEN subst] partition_gt)
   180 by (blast intro: partition_rhs [THEN subst] partition_gt)
   184 
   181 
   437 apply (rule order_trans)
   434 apply (rule order_trans)
   438 apply (auto simp add: abs_le_interval_iff)
   435 apply (auto simp add: abs_le_interval_iff)
   439 apply (simp add: right_diff_distrib)
   436 apply (simp add: right_diff_distrib)
   440 done
   437 done
   441 
   438 
   442 ML {* fast_arith_split_limit := 0; *}  (* FIXME: rewrite proof *)
       
   443 
       
   444 lemma FTC1: "[|a \<le> b; \<forall>x. a \<le> x & x \<le> b --> DERIV f x :> f'(x) |]
   439 lemma FTC1: "[|a \<le> b; \<forall>x. a \<le> x & x \<le> b --> DERIV f x :> f'(x) |]
   445              ==> Integral(a,b) f' (f(b) - f(a))"
   440              ==> Integral(a,b) f' (f(b) - f(a))"
   446 apply (drule order_le_imp_less_or_eq, auto) 
   441 apply (drule order_le_imp_less_or_eq, auto) 
   447 apply (auto simp add: Integral_def)
   442 apply (auto simp add: Integral_def)
   448 apply (rule ccontr)
   443 apply (rule ccontr)
   470 apply (rule_tac [2] setsum_right_distrib [THEN subst])
   465 apply (rule_tac [2] setsum_right_distrib [THEN subst])
   471 apply (auto simp add: partition_rhs partition_lhs partition_lb partition_ub
   466 apply (auto simp add: partition_rhs partition_lhs partition_lb partition_ub
   472           fine_def)
   467           fine_def)
   473 done
   468 done
   474 
   469 
   475 ML {* fast_arith_split_limit := 9; *}  (* FIXME *)
       
   476 
   470 
   477 lemma Integral_subst: "[| Integral(a,b) f k1; k2=k1 |] ==> Integral(a,b) f k2"
   471 lemma Integral_subst: "[| Integral(a,b) f k1; k2=k1 |] ==> Integral(a,b) f k2"
   478 by simp
   472 by simp
   479 
   473 
   480 lemma Integral_add:
   474 lemma Integral_add: