Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 92a7171

Browse files
committed
feat(measure_theory/interval_integral): generalize add_adjacent_intervals to n-ary sum (#8050)
1 parent 6666ba2 commit 92a7171

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

src/measure_theory/interval_integral.lean

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ noncomputable theory
145145
open topological_space (second_countable_topology)
146146
open measure_theory set classical filter
147147

148-
open_locale classical topological_space filter ennreal
148+
open_locale classical topological_space filter ennreal big_operators
149149

150150
variables {α β 𝕜 E F : Type*} [linear_order α] [measurable_space α]
151151
[measurable_space E] [normed_group E]
@@ -229,6 +229,14 @@ by split; simp
229229
⟨(hab.1.union hbc.1).mono_set Ioc_subset_Ioc_union_Ioc,
230230
(hbc.2.union hab.2).mono_set Ioc_subset_Ioc_union_Ioc⟩
231231

232+
lemma trans_iterate {a : ℕ → α} {n : ℕ} (hint : ∀ k < n, interval_integrable f μ (a k) (a $ k+1)) :
233+
interval_integrable f μ (a 0) (a n) :=
234+
begin
235+
induction n with n hn,
236+
{ simp },
237+
{ exact (hn (λ k hk, hint k (hk.trans n.lt_succ_self))).trans (hint n n.lt_succ_self) }
238+
end
239+
232240
lemma neg [borel_space E] (h : interval_integrable f μ a b) : interval_integrable (-f) μ a b :=
233241
⟨h.1.neg, h.2.neg⟩
234242

@@ -652,6 +660,18 @@ lemma integral_add_adjacent_intervals (hab : interval_integrable f μ a b)
652660
∫ x in a..b, f x ∂μ + ∫ x in b..c, f x ∂μ = ∫ x in a..c, f x ∂μ :=
653661
by rw [← add_neg_eq_zero, ← integral_symm, integral_add_adjacent_intervals_cancel hab hbc]
654662

663+
lemma sum_integral_adjacent_intervals {a : ℕ → α} {n : ℕ}
664+
(hint : ∀ k < n, interval_integrable f μ (a k) (a $ k+1)) :
665+
∑ (k : ℕ) in finset.range n, ∫ x in (a k)..(a $ k+1), f x ∂μ = ∫ x in (a 0)..(a n), f x ∂μ :=
666+
begin
667+
induction n with n hn,
668+
{ simp },
669+
{ rw [finset.sum_range_succ, hn (λ k hk, hint k (hk.trans n.lt_succ_self))],
670+
exact integral_add_adjacent_intervals
671+
(interval_integrable.trans_iterate $ λ k hk, hint k (hk.trans n.lt_succ_self))
672+
(hint n n.lt_succ_self) }
673+
end
674+
655675
lemma integral_interval_sub_left (hab : interval_integrable f μ a b)
656676
(hac : interval_integrable f μ a c) :
657677
∫ x in a..b, f x ∂μ - ∫ x in a..c, f x ∂μ = ∫ x in c..b, f x ∂μ :=

0 commit comments

Comments
 (0)