@@ -13,20 +13,18 @@ import measure_theory.lebesgue_measure
13
13
14
14
Integrate a function over a subset of a measure space.
15
15
16
- ## Main definition
16
+ ## Main definitions
17
17
18
18
`measurable_on`, `integrable_on`, `integral_on`
19
19
20
- ## Tags
20
+ ## Notation
21
21
22
- indicator, characteristic
22
+ `∫ a in s, f a` is `measure_theory.integral (s.indicator f)`
23
23
-/
24
24
25
25
noncomputable theory
26
- open_locale classical topological_space
27
- open set lattice filter topological_space ennreal emetric measure_theory
28
-
29
- set_option class.instance_max_depth 50
26
+ open set filter topological_space measure_theory measure_theory.simple_func
27
+ open_locale classical topological_space interval
30
28
31
29
universes u v w
32
30
variables {α : Type u} {β : Type v} {γ : Type w}
@@ -35,17 +33,27 @@ section measurable_on
35
33
variables [measurable_space α] [measurable_space β] [has_zero β] {s : set α} {f : α → β}
36
34
37
35
/-- `measurable_on s f` means `f` is measurable over the set `s`. -/
38
- @[reducible]
39
- def measurable_on (s : set α) (f : α → β) : Prop := measurable (indicator s f)
36
+ def measurable_on (s : set α) (f : α → β) : Prop := measurable (s.indicator f)
40
37
41
- lemma measurable_on_empty : measurable_on ∅ f :=
38
+ @[simp] lemma measurable_on_empty (f : α → β) : measurable_on ∅ f :=
42
39
by { rw [measurable_on, indicator_empty], exact measurable_const }
43
40
44
- lemma measurable_on_univ (hf : measurable f) : measurable_on univ f :=
41
+ @[simp] lemma measurable. measurable_on_univ (hf : measurable f) : measurable_on univ f :=
45
42
hf.if is_measurable.univ measurable_const
46
43
47
- lemma measurable.measurable_on (hs : is_measurable s) (hf : measurable f) : measurable_on s f :=
48
- hf.if hs measurable_const
44
+ @[simp] lemma measurable_on_singleton {α} [topological_space α] [t1_space α] {a : α} {f : α → β} :
45
+ measurable_on {a} f :=
46
+ λ s hs, show is_measurable ((indicator {a} f)⁻¹' s),
47
+ begin
48
+ rw indicator_preimage,
49
+ refine is_measurable.union _ (is_measurable_singleton.compl.inter $ measurable_const.preimage hs),
50
+ by_cases h : a ∈ f⁻¹' s,
51
+ { rw inter_eq_self_of_subset_left,
52
+ { exact is_measurable_singleton },
53
+ rwa singleton_subset_iff },
54
+ rw [singleton_inter_eq_empty.2 h],
55
+ exact is_measurable.empty
56
+ end
49
57
50
58
lemma is_measurable.inter_preimage {B : set β}
51
59
(hs : is_measurable s) (hB : is_measurable B) (hf : measurable_on s f):
@@ -59,12 +67,15 @@ begin
59
67
exact hs.compl.inter (measurable_const.preimage hB)
60
68
end
61
69
70
+ lemma measurable.measurable_on (hs : is_measurable s) (hf : measurable f) : measurable_on s f :=
71
+ hf.if hs measurable_const
72
+
62
73
lemma measurable_on.subset {t : set α} (hs : is_measurable s) (h : s ⊆ t) (hf : measurable_on t f) :
63
74
measurable_on s f :=
64
75
begin
65
76
have : measurable_on s (indicator t f) := measurable.measurable_on hs hf,
66
77
simp only [measurable_on, indicator_indicator] at this ,
67
- rwa [inter_eq_self_of_subset_left h] at this ,
78
+ rwa [inter_eq_self_of_subset_left h] at this
68
79
end
69
80
70
81
lemma measurable_on.union {t : set α} {f : α → β}
@@ -79,48 +90,34 @@ begin
79
90
exact (hs.inter_preimage hB hsm).union (ht.inter_preimage hB htm)
80
91
end
81
92
82
- lemma measurable_on_singleton {α} [topological_space α] [t1_space α] {a : α} {f : α → β} :
83
- measurable_on {a} f :=
84
- λ s hs, show is_measurable ((indicator _ _)⁻¹' s),
85
- begin
86
- rw indicator_preimage,
87
- refine is_measurable.union _ (is_measurable_singleton.compl.inter $ measurable_const.preimage hs),
88
- by_cases h : a ∈ f⁻¹' s,
89
- { rw inter_eq_self_of_subset_left,
90
- { exact is_measurable_singleton },
91
- rwa singleton_subset_iff },
92
- rw [singleton_inter_eq_empty.2 h],
93
- exact is_measurable.empty
94
- end
95
-
96
93
end measurable_on
97
94
98
95
section integrable_on
99
96
variables [measure_space α] [normed_group β] {s t : set α} {f g : α → β}
100
97
101
98
/-- `integrable_on s f` means `f` is integrable over the set `s`. -/
102
- @[reducible]
103
- def integrable_on (s : set α) (f : α → β) : Prop := integrable (indicator s f)
99
+ def integrable_on (s : set α) (f : α → β) : Prop := integrable (s.indicator f)
104
100
105
101
lemma integrable_on_congr (h : ∀x, x ∈ s → f x = g x) : integrable_on s f ↔ integrable_on s g :=
106
102
by simp only [integrable_on, indicator_congr h]
107
103
108
- lemma integrable_on_congr_ae (h : ∀ₘx , x ∈ s → f x = g x) :
104
+ lemma integrable_on_congr_ae (h : ∀ₘ x , x ∈ s → f x = g x) :
109
105
integrable_on s f ↔ integrable_on s g :=
110
106
by { apply integrable_congr_ae, exact indicator_congr_ae h }
111
107
112
- lemma integrable_on_empty : integrable_on ∅ f :=
108
+ @[simp] lemma integrable_on_empty (f : α → β) : integrable_on ∅ f :=
113
109
by { simp only [integrable_on, indicator_empty], apply integrable_zero }
114
110
115
- lemma integrable_on_of_integrable (s : set α) (hf : integrable f) : integrable_on s f :=
111
+ lemma measure_theory.integrable.integrable_on (s : set α) (hf : integrable f) : integrable_on s f :=
116
112
by { refine integrable_of_le (λa, _) hf, apply norm_indicator_le_norm_self }
117
113
118
114
lemma integrable_on.subset (h : s ⊆ t) : integrable_on t f → integrable_on s f :=
119
115
by { apply integrable_of_le_ae, filter_upwards [] norm_indicator_le_of_subset h _ }
120
116
121
117
variables {𝕜 : Type *} [normed_field 𝕜] [normed_space 𝕜 β]
122
118
123
- lemma integrable_on.smul (s : set α) (c : 𝕜) {f : α → β} : integrable_on s f → integrable_on s (λa, c • f a) :=
119
+ lemma integrable_on.smul (s : set α) (c : 𝕜) {f : α → β} :
120
+ integrable_on s f → integrable_on s (λa, c • f a) :=
124
121
by { simp only [integrable_on, indicator_smul], apply integrable.smul }
125
122
126
123
lemma integrable_on.mul_left (s : set α) (r : ℝ) {f : α → ℝ} (hf : integrable_on s f) :
@@ -174,24 +171,33 @@ section integral_on
174
171
variables [measure_space α]
175
172
[normed_group β] [second_countable_topology β] [normed_space ℝ β] [complete_space β]
176
173
{s t : set α} {f g : α → β}
177
- {a b : ℝ} {h : ℝ → β}
174
+ open set
175
+
176
+ notation `∫` binders ` in ` s `, ` r:(scoped f, measure_theory.integral (set.indicator s f)) := r
177
+
178
+ lemma integral_on_undef (h : ¬ (measurable_on s f ∧ integrable_on s f)) : (∫ a in s, f a) = 0 :=
179
+ integral_undef h
180
+
181
+ lemma integral_on_non_measurable (h : ¬ measurable_on s f) : (∫ a in s, f a) = 0 :=
182
+ integral_non_measurable h
178
183
179
- notation `∫` binders ` in ` s `, ` r:(scoped f, integral (indicator s f)) := r
184
+ lemma integral_on_non_integrable (h : ¬ integrable_on s f) : (∫ a in s, f a) = 0 :=
185
+ integral_non_integrable h
180
186
181
187
variables (β)
182
188
@[simp] lemma integral_on_zero (s : set α) : (∫ a in s, (0 :β)) = 0 :=
183
189
by rw [indicator_zero, integral_zero]
184
190
variables {β}
185
191
186
- lemma integral_on_congr (h : ∀ x ∈ s, f x = g x ) : (∫ a in s, f a) = (∫ a in s, g a) :=
192
+ lemma integral_on_congr (h : ∀ a ∈ s, f a = g a ) : (∫ a in s, f a) = (∫ a in s, g a) :=
187
193
by simp only [indicator_congr h]
188
194
189
195
lemma integral_on_congr_of_ae_eq (hf : measurable_on s f) (hg : measurable_on s g)
190
- (h : ∀ₘ x, x ∈ s → f x = g x ) : (∫ a in s, f a) = (∫ a in s, g a) :=
196
+ (h : ∀ₘ a, a ∈ s → f a = g a ) : (∫ a in s, f a) = (∫ a in s, g a) :=
191
197
integral_congr_ae hf hg (indicator_congr_ae h)
192
198
193
199
lemma integral_on_congr_of_set (hsm : measurable_on s f) (htm : measurable_on t f)
194
- (h : ∀ₘ x, x ∈ s ↔ x ∈ t) : (∫ a in s, f a) = (∫ a in t, f a) :=
200
+ (h : ∀ₘ a, a ∈ s ↔ a ∈ t) : (∫ a in s, f a) = (∫ a in t, f a) :=
195
201
integral_congr_ae hsm htm $ indicator_congr_of_set h
196
202
197
203
variables (s t)
@@ -247,9 +253,21 @@ begin
247
253
have := integral_congr_ae _ _ (indicator_union_ae h f),
248
254
rw [this , integral_add hsm hsi htm hti],
249
255
{ exact hsm.union hs ht htm },
250
- { exact hsm .add htm }
256
+ { exact measurable .add hsm htm }
251
257
end
252
258
259
+ lemma integral_on_nonneg_of_ae {f : α → ℝ} (hf : ∀ₘ a, a ∈ s → 0 ≤ f a) : (0 :ℝ) ≤ (∫ a in s, f a) :=
260
+ integral_nonneg_of_ae $ by { filter_upwards [hf] λ a h, indicator_nonneg' h }
261
+
262
+ lemma integral_on_nonneg {f : α → ℝ} (hf : ∀ a, a ∈ s → 0 ≤ f a) : (0 :ℝ) ≤ (∫ a in s, f a) :=
263
+ integral_on_nonneg_of_ae $ univ_mem_sets' hf
264
+
265
+ lemma integral_on_nonpos_of_ae {f : α → ℝ} (hf : ∀ₘ a, a ∈ s → f a ≤ 0 ) : (∫ a in s, f a) ≤ 0 :=
266
+ integral_nonpos_of_nonpos_ae $ by { filter_upwards [hf] λ a h, indicator_nonpos' h }
267
+
268
+ lemma integral_on_nonpos {f : α → ℝ} (hf : ∀ a, a ∈ s → f a ≤ 0 ) : (∫ a in s, f a) ≤ 0 :=
269
+ integral_on_nonpos_of_ae $ univ_mem_sets' hf
270
+
253
271
lemma tendsto_integral_on_of_monotone {s : ℕ → set α} {f : α → β} (hsm : ∀i, is_measurable (s i))
254
272
(h_mono : monotone s) (hfm : measurable_on (Union s) f) (hfi : integrable_on (Union s) f) :
255
273
tendsto (λi, ∫ a in (s i), f a) at_top (nhds (∫ a in (Union s), f a)) :=
0 commit comments