Theorem: intervalIntegral.sum_integral_adjacent_intervals_Ico
File: Mathlib/MeasureTheory/Integral/IntervalIntegral.lean

tactic: revert hint
state_before: ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
hint : ∀ (k : ℕ), k ∈ Ico m n → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ (∑ k in Finset.Ico m n, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a n, f x ∂μ

tactic: refine' Nat.le_induction _ _ n hmn
state_before: ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
⊢ (∀ (k : ℕ), k ∈ Ico m n → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m n, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a n, f x ∂μ

tactic: simp
state_before: case refine'_1
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
⊢ (∀ (k : ℕ), k ∈ Ico m m → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m m, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a m, f x ∂μ

tactic: intro p hmp IH h
state_before: case refine'_2
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
⊢ ∀ (n : ℕ),
    m ≤ n →
      ((∀ (k : ℕ), k ∈ Ico m n → IntervalIntegrable f μ (a k) (a (k + 1))) →
          (∑ k in Finset.Ico m n, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a n, f x ∂μ) →
        (∀ (k : ℕ), k ∈ Ico m (n + 1) → IntervalIntegrable f μ (a k) (a (k + 1))) →
          (∑ k in Finset.Ico m (n + 1), ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a (n + 1), f x ∂μ

tactic: rw [Finset.sum_Ico_succ_top hmp, IH, integral_add_adjacent_intervals]
state_before: case refine'_2
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ (∑ k in Finset.Ico m (p + 1), ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a (p + 1), f x ∂μ

tactic: refine IntervalIntegrable.trans_iterate_Ico hmp fun k hk => h k ?_
state_before: case refine'_2.hab
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ IntervalIntegrable (fun x => f x) μ (a m) (a p)

tactic: exact (Ico_subset_Ico le_rfl (Nat.le_succ _)) hk
state_before: case refine'_2.hab
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
k : ℕ
hk : k ∈ Ico m p
⊢ k ∈ Ico m (p + 1)

tactic: apply h
state_before: case refine'_2.hbc
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ IntervalIntegrable (fun x => f x) μ (a p) (a (p + 1))

tactic: simp [hmp]
state_before: case refine'_2.hbc.a
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ p ∈ Ico m (p + 1)

tactic: intro k hk
state_before: case refine'_2
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
⊢ ∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))

tactic: exact h _ (Ico_subset_Ico_right p.le_succ hk)
state_before: case refine'_2
ι : Type ?u.15491641
𝕜 : Type ?u.15491644
E : Type u_1
F : Type ?u.15491650
A : Type ?u.15491653
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
a✝ b c d : ℝ
f g : ℝ → E
μ : MeasureTheory.Measure ℝ
a : ℕ → ℝ
m n : ℕ
hmn : m ≤ n
p : ℕ
hmp : m ≤ p
IH :
  (∀ (k : ℕ), k ∈ Ico m p → IntervalIntegrable f μ (a k) (a (k + 1))) →
    (∑ k in Finset.Ico m p, ∫ (x : ℝ) in a k..a (k + 1), f x ∂μ) = ∫ (x : ℝ) in a m..a p, f x ∂μ
h : ∀ (k : ℕ), k ∈ Ico m (p + 1) → IntervalIntegrable f μ (a k) (a (k + 1))
k : ℕ
hk : k ∈ Ico m p
⊢ IntervalIntegrable f μ (a k) (a (k + 1))