author nipkow Fri, 24 Aug 2018 13:08:53 +0200 changeset 68798 07714b60f653 parent 68794 63e84bd8e1f6 child 68799 c5d17ae788b2
tuned proofs
```--- a/src/HOL/Analysis/Bochner_Integration.thy	Thu Aug 23 16:45:19 2018 +0200
+++ b/src/HOL/Analysis/Bochner_Integration.thy	Fri Aug 24 13:08:53 2018 +0200
@@ -2009,55 +2009,17 @@
using \<open>0 \<le> r\<close> by (simp add: not_integrable_integral_eq)
qed

-lemma integrable_Min:
-  fixes f:: "_ \<Rightarrow> _ \<Rightarrow> real"
-  assumes "finite I" "I \<noteq> {}"
-          "\<And>i. i \<in> I \<Longrightarrow> integrable M (f i)"
-  shows "integrable M (\<lambda>x. Min {f i x|i. i \<in> I})"
-using assms apply (induct rule: finite_ne_induct) apply simp+
-proof -
-  fix j F assume H: "finite F" "F \<noteq> {}" "integrable M (\<lambda>x. Min {f i x |i. i \<in> F})"
-                    "(\<And>i. i = j \<or> i \<in> F \<Longrightarrow> integrable M (f i))"
-  have "{f i x |i. i = j \<or> i \<in> F} = insert (f j x) {f i x |i. i \<in> F}" for x by blast
-  then have "Min {f i x |i. i = j \<or> i \<in> F} = min (f j x) (Min {f i x |i. i \<in> F})" for x
-    using H(1) H(2) Min_insert by simp
-  moreover have "integrable M (\<lambda>x. min (f j x) (Min {f i x |i. i \<in> F}))"
-    by (rule integrable_min, auto simp add: H)
-  ultimately show "integrable M (\<lambda>x. Min {f i x |i. i = j \<or> i \<in> F})" by simp
-qed
-
lemma integrable_MIN:
fixes f:: "_ \<Rightarrow> _ \<Rightarrow> real"
-  assumes "finite I" "I \<noteq> {}"
-          "\<And>i. i \<in> I \<Longrightarrow> integrable M (f i)"
-  shows "integrable M (\<lambda>x. MIN i\<in>I. f i x)"
-using integrable_Min[of I M f, OF assms]
-
-lemma integrable_Max:
-  fixes f:: "_ \<Rightarrow> _ \<Rightarrow> real"
-  assumes "finite I" "I \<noteq> {}"
-          "\<And>i. i \<in> I \<Longrightarrow> integrable M (f i)"
-  shows "integrable M (\<lambda>x. Max {f i x|i. i \<in> I})"
-using assms apply (induct rule: finite_ne_induct) apply simp+
-proof -
-  fix j F assume H: "finite F" "F \<noteq> {}" "integrable M (\<lambda>x. Max {f i x |i. i \<in> F})"
-                    "(\<And>i. i = j \<or> i \<in> F \<Longrightarrow> integrable M (f i))"
-  have "{f i x |i. i = j \<or> i \<in> F} = insert (f j x) {f i x |i. i \<in> F}" for x by blast
-  then have "Max {f i x |i. i = j \<or> i \<in> F} = max (f j x) (Max {f i x |i. i \<in> F})" for x
-    using H(1) H(2) Max_insert by simp
-  moreover have "integrable M (\<lambda>x. max (f j x) (Max {f i x |i. i \<in> F}))"
-    by (rule integrable_max, auto simp add: H)
-  ultimately show "integrable M (\<lambda>x. Max {f i x |i. i = j \<or> i \<in> F})" by simp
-qed
+  shows "\<lbrakk> finite I;  I \<noteq> {}; \<And>i. i \<in> I \<Longrightarrow> integrable M (f i) \<rbrakk>
+   \<Longrightarrow> integrable M (\<lambda>x. MIN i\<in>I. f i x)"
+by (induct rule: finite_ne_induct) simp+

lemma integrable_MAX:
fixes f:: "_ \<Rightarrow> _ \<Rightarrow> real"
-  assumes "finite I" "I \<noteq> {}"
-          "\<And>i. i \<in> I \<Longrightarrow> integrable M (f i)"
-  shows "integrable M (\<lambda>x. MAX i\<in>I. f i x)"
-using integrable_Max[of I M f, OF assms]