Theorem: intervalIntegral.integrableOn_deriv_right_of_nonneg
File: Mathlib/MeasureTheory/Integral/FundThmCalculus.lean

tactic: by_cases hab : a < b
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
⊢ IntegrableOn g' (Ioc a b)

tactic: swap
state_before: case pos
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
⊢ IntegrableOn g' (Ioc a b)

case neg
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : ¬a < b
⊢ IntegrableOn g' (Ioc a b)

tactic: rw [integrableOn_Ioc_iff_integrableOn_Ioo]
state_before: case pos
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
⊢ IntegrableOn g' (Ioc a b)

tactic: have meas_g' : AEMeasurable g' (volume.restrict (Ioo a b)) := by
  apply (aemeasurable_derivWithin_Ioi g _).congr
  refine' (ae_restrict_mem measurableSet_Ioo).mono fun x hx => _
  exact (hderiv x hx).derivWithin (uniqueDiffWithinAt_Ioi _)
state_before: case pos
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
⊢ IntegrableOn g' (Ioo a b)

tactic: suffices H : (∫⁻ x in Ioo a b, ‖g' x‖₊) ≤ ENNReal.ofReal (g b - g a)
state_before: case pos
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
⊢ IntegrableOn g' (Ioo a b)

tactic: exact ⟨meas_g'.aestronglyMeasurable, H.trans_lt ENNReal.ofReal_lt_top⟩
state_before: case pos
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : (∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊) ≤ ENNReal.ofReal (g b - g a)
⊢ IntegrableOn g' (Ioo a b)

case H
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
⊢ (∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊) ≤ ENNReal.ofReal (g b - g a)

tactic: by_contra' H
state_before: case H
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
⊢ (∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊) ≤ ENNReal.ofReal (g b - g a)

tactic: obtain ⟨f, fle, fint, hf⟩ :
  ∃ f : SimpleFunc ℝ ℝ≥0,
    (∀ x, f x ≤ ‖g' x‖₊) ∧
      (∫⁻ x : ℝ in Ioo a b, f x) < ∞ ∧ ENNReal.ofReal (g b - g a) < ∫⁻ x : ℝ in Ioo a b, f x :=
  exists_lt_lintegral_simpleFunc_of_lt_lintegral H
state_before: case H
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
⊢ False

tactic: let F : ℝ → ℝ := (↑) ∘ f
state_before: case H.intro.intro.intro
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
⊢ False

tactic: have intF : IntegrableOn F (Ioo a b) := by
  refine' ⟨f.measurable.coe_nnreal_real.aestronglyMeasurable, _⟩
  simpa only [HasFiniteIntegral, comp_apply, NNReal.nnnorm_eq] using fint
state_before: case H.intro.intro.intro
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
⊢ False

tactic: have A : (∫⁻ x : ℝ in Ioo a b, f x) = ENNReal.ofReal (∫ x in Ioo a b, F x) :=
  lintegral_coe_eq_integral _ intF
state_before: case H.intro.intro.intro
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
intF : IntegrableOn F (Ioo a b)
⊢ False

tactic: rw [A] at hf
state_before: case H.intro.intro.intro
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
⊢ False

tactic: exact lt_irrefl _ (hf.trans_le (ENNReal.ofReal_le_ofReal B))
state_before: case H.intro.intro.intro
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
B : (∫ (x : ℝ) in Ioo a b, F x) ≤ g b - g a
⊢ False

tactic: simp [Ioc_eq_empty hab]
state_before: case neg
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : ¬a < b
⊢ IntegrableOn g' (Ioc a b)

tactic: apply (aemeasurable_derivWithin_Ioi g _).congr
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
⊢ AEMeasurable g'

tactic: refine' (ae_restrict_mem measurableSet_Ioo).mono fun x hx => _
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
⊢ (fun x => derivWithin g (Ioi x) x) =ᵐ[Measure.restrict volume (Ioo a b)] g'

tactic: exact (hderiv x hx).derivWithin (uniqueDiffWithinAt_Ioi _)
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝ : ℝ → E
g' g φ : ℝ → ℝ
f f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
x : ℝ
hx : x ∈ Ioo a b
⊢ (fun x => derivWithin g (Ioi x) x) x = g' x

tactic: refine' ⟨f.measurable.coe_nnreal_real.aestronglyMeasurable, _⟩
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
⊢ IntegrableOn F (Ioo a b)

tactic: simpa only [HasFiniteIntegral, comp_apply, NNReal.nnnorm_eq] using fint
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
hf : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
⊢ HasFiniteIntegral F

tactic: rw [← integral_Ioc_eq_integral_Ioo, ← intervalIntegral.integral_of_le hab.le]
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
⊢ (∫ (x : ℝ) in Ioo a b, F x) ≤ g b - g a

tactic: refine integral_le_sub_of_hasDeriv_right_of_le hab.le hcont hderiv ?_ fun x hx => ?_
state_before: ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
⊢ (∫ (x : ℝ) in a..b, F x) ≤ g b - g a

tactic: rwa [integrableOn_Icc_iff_integrableOn_Ioo]
state_before: case refine_1
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
⊢ IntegrableOn (fun x => F x) (Icc a b)

tactic: convert NNReal.coe_le_coe.2 (fle x)
state_before: case refine_2
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
x : ℝ
hx : x ∈ Ioo a b
⊢ F x ≤ g' x

tactic: simp only [Real.norm_of_nonneg (g'pos x hx), coe_nnnorm]
state_before: case h.e'_4
ι : Type ?u.1865205
𝕜 : Type ?u.1865208
E : Type ?u.1865211
F✝ : Type ?u.1865214
A✝ : Type ?u.1865217
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
f✝¹ : ℝ → E
g' g φ : ℝ → ℝ
f✝ f' : ℝ → E
a b : ℝ
hcont : ContinuousOn g (Icc a b)
hderiv : ∀ (x : ℝ), x ∈ Ioo a b → HasDerivWithinAt g (g' x) (Ioi x) x
g'pos : ∀ (x : ℝ), x ∈ Ioo a b → 0 ≤ g' x
hab : a < b
meas_g' : AEMeasurable g'
H : ENNReal.ofReal (g b - g a) < ∫⁻ (x : ℝ) in Ioo a b, ↑‖g' x‖₊
f : SimpleFunc ℝ ℝ≥0
fle : ∀ (x : ℝ), ↑f x ≤ ‖g' x‖₊
fint : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) < ⊤
F : ℝ → ℝ := NNReal.toReal ∘ ↑f
hf : ENNReal.ofReal (g b - g a) < ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
intF : IntegrableOn F (Ioo a b)
A : (∫⁻ (x : ℝ) in Ioo a b, ↑(↑f x)) = ENNReal.ofReal (∫ (x : ℝ) in Ioo a b, F x)
x : ℝ
hx : x ∈ Ioo a b
⊢ g' x = ↑‖g' x‖₊