Theorem: MeasureTheory.lintegral_add_aux
File: Mathlib/MeasureTheory/Integral/Lebesgue.lean

tactic: simp only [iSup_eapprox_apply, hf, hg]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ∫⁻ (a : α), f a + g a ∂μ = ∫⁻ (a : α), (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a ∂μ
state_after: no goals

tactic: congr
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ∫⁻ (a : α), (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a ∂μ =
    ∫⁻ (a : α), ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ
state_after: case e_f
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ (fun a => (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a) = fun a => ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a

tactic: funext a
state_before: case e_f
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ (fun a => (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a) = fun a => ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a
state_after: case e_f.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a = ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a

tactic: rw [ENNReal.iSup_add_iSup_of_monotone]
state_before: case e_f.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ (⨆ n, ↑(eapprox f n) a) + ⨆ n, ↑(eapprox g n) a = ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a
state_after: case e_f.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ ⨆ a_1, ↑(eapprox f a_1) a + ↑(eapprox g a_1) a = ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a

case e_f.h.hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ Monotone fun n => ↑(eapprox f n) a

case e_f.h.hg
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ Monotone fun n => ↑(eapprox g n) a

tactic: simp only [Pi.add_apply]
state_before: case e_f.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ ⨆ a_1, ↑(eapprox f a_1) a + ↑(eapprox g a_1) a = ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a
state_after: no goals

tactic: intro i j h
state_before: case e_f.h.hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ Monotone fun n => ↑(eapprox f n) a
state_after: case e_f.h.hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
i j : ℕ
h : i ≤ j
⊢ (fun n => ↑(eapprox f n) a) i ≤ (fun n => ↑(eapprox f n) a) j

tactic: exact monotone_eapprox _ h a
state_before: case e_f.h.hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
i j : ℕ
h : i ≤ j
⊢ (fun n => ↑(eapprox f n) a) i ≤ (fun n => ↑(eapprox f n) a) j
state_after: no goals

tactic: intro i j h
state_before: case e_f.h.hg
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
⊢ Monotone fun n => ↑(eapprox g n) a
state_after: case e_f.h.hg
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
i j : ℕ
h : i ≤ j
⊢ (fun n => ↑(eapprox g n) a) i ≤ (fun n => ↑(eapprox g n) a) j

tactic: exact monotone_eapprox _ h a
state_before: case e_f.h.hg
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
a : α
i j : ℕ
h : i ≤ j
⊢ (fun n => ↑(eapprox g n) a) i ≤ (fun n => ↑(eapprox g n) a) j
state_after: no goals

tactic: rw [lintegral_iSup]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ∫⁻ (a : α), ⨆ n, (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = ⨆ n, (eapprox f n).lintegral μ + (eapprox g n).lintegral μ
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ⨆ n, ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = ⨆ n, (eapprox f n).lintegral μ + (eapprox g n).lintegral μ

case hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ∀ (n : ℕ), Measurable (↑(eapprox f n) + ↑(eapprox g n))

case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ Monotone fun n => ↑(eapprox f n) + ↑(eapprox g n)

tactic: congr
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ⨆ n, ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = ⨆ n, (eapprox f n).lintegral μ + (eapprox g n).lintegral μ
state_after: case e_s
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ (fun n => ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ) = fun n =>
    (eapprox f n).lintegral μ + (eapprox g n).lintegral μ

tactic: funext n
state_before: case e_s
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ (fun n => ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ) = fun n =>
    (eapprox f n).lintegral μ + (eapprox g n).lintegral μ
state_after: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
n : ℕ
⊢ ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = (eapprox f n).lintegral μ + (eapprox g n).lintegral μ

tactic: rw [← SimpleFunc.add_lintegral, ← SimpleFunc.lintegral_eq_lintegral]
state_before: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
n : ℕ
⊢ ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = (eapprox f n).lintegral μ + (eapprox g n).lintegral μ
state_after: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
n : ℕ
⊢ ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = ∫⁻ (a : α), ↑(eapprox f n + eapprox g n) a ∂μ

tactic: simp only [Pi.add_apply, SimpleFunc.coe_add]
state_before: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
n : ℕ
⊢ ∫⁻ (a : α), (↑(eapprox f n) + ↑(eapprox g n)) a ∂μ = ∫⁻ (a : α), ↑(eapprox f n + eapprox g n) a ∂μ
state_after: no goals

tactic: measurability
state_before: case hf
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ ∀ (n : ℕ), Measurable (↑(eapprox f n) + ↑(eapprox g n))
state_after: no goals

tactic: intro i j h a
state_before: case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ Monotone fun n => ↑(eapprox f n) + ↑(eapprox g n)
state_after: case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
a : α
⊢ (fun n => ↑(eapprox f n) + ↑(eapprox g n)) i a ≤ (fun n => ↑(eapprox f n) + ↑(eapprox g n)) j a

tactic: dsimp
state_before: case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
a : α
⊢ (fun n => ↑(eapprox f n) + ↑(eapprox g n)) i a ≤ (fun n => ↑(eapprox f n) + ↑(eapprox g n)) j a
state_after: case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
a : α
⊢ ↑(eapprox f i) a + ↑(eapprox g i) a ≤ ↑(eapprox f j) a + ↑(eapprox g j) a

tactic: gcongr <;> exact monotone_eapprox _ h _
state_before: case h_mono
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
a : α
⊢ ↑(eapprox f i) a + ↑(eapprox g i) a ≤ ↑(eapprox f j) a + ↑(eapprox g j) a
state_after: no goals

tactic: intro i j h
state_before: case refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ Monotone fun n => (eapprox g n).lintegral μ
state_after: case refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
⊢ (fun n => (eapprox g n).lintegral μ) i ≤ (fun n => (eapprox g n).lintegral μ) j

tactic: exact SimpleFunc.lintegral_mono (monotone_eapprox _ h) le_rfl
state_before: case refine_2
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
i j : ℕ
h : i ≤ j
⊢ (fun n => (eapprox g n).lintegral μ) i ≤ (fun n => (eapprox g n).lintegral μ) j
state_after: no goals

tactic: rw [lintegral_eq_iSup_eapprox_lintegral hf, lintegral_eq_iSup_eapprox_lintegral hg]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m : MeasurableSpace α
μ ν : Measure α
f g : α → ℝ≥0∞
hf : Measurable f
hg : Measurable g
⊢ (⨆ n, (eapprox f n).lintegral μ) + ⨆ n, (eapprox g n).lintegral μ = ∫⁻ (a : α), f a ∂μ + ∫⁻ (a : α), g a ∂μ
state_after: no goals