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

Proof steps:
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ∫⁻ (a : α), f a ∂Measure.sum μ = ∑' (i : ι), ∫⁻ (a : α), f a ∂μ i
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ⨆ x, ⨆ s, ∑ i ∈ s, (↑x).lintegral (μ i) = ⨆ s, ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
tactic: simp only [lintegral, iSup_subtype', SimpleFunc.lintegral_sum, ENNReal.tsum_eq_iSup_sum]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ⨆ x, ⨆ s, ∑ i ∈ s, (↑x).lintegral (μ i) = ⨆ s, ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
state_after: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ⨆ j, ⨆ i, ∑ i_1 ∈ j, (↑i).lintegral (μ i_1) = ⨆ s, ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
tactic: rw [iSup_comm]
state_before: α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ⨆ j, ⨆ i, ∑ i_1 ∈ j, (↑i).lintegral (μ i_1) = ⨆ s, ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
state_after: case e_s
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ (fun j => ⨆ i, ∑ i_1 ∈ j, (↑i).lintegral (μ i_1)) = fun s => ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
tactic: congr
state_before: case e_s
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ (fun j => ⨆ i, ∑ i_1 ∈ j, (↑i).lintegral (μ i_1)) = fun s => ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
state_after: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
s : Finset ι
⊢ ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
tactic: funext s
state_before: case e_s.h
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
s : Finset ι
⊢ ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
state_after: case e_s.h.empty
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
⊢ ⨆ i, ∑ i_1 ∈ ∅, (↑i).lintegral (μ i_1) = ∑ i ∈ ∅, ⨆ x, (↑x).lintegral (μ i)

case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ⨆ i_1, ∑ i ∈ insert i s, (↑i_1).lintegral (μ i) = ∑ i ∈ insert i s, ⨆ x, (↑x).lintegral (μ i)
tactic: induction' s using Finset.induction_on with i s hi hs
state_before: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ⨆ i_1, ∑ i ∈ insert i s, (↑i_1).lintegral (μ i) = ∑ i ∈ insert i s, ⨆ x, (↑x).lintegral (μ i)
state_after: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ⨆ i_1, (↑i_1).lintegral (μ i) + ∑ i ∈ s, (↑i_1).lintegral (μ i) =
    (⨆ x, (↑x).lintegral (μ i)) + ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1)
tactic: simp only [Finset.sum_insert hi, ← hs]
state_before: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ⨆ i_1, (↑i_1).lintegral (μ i) + ∑ i ∈ s, (↑i_1).lintegral (μ i) =
    (⨆ x, (↑x).lintegral (μ i)) + ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1)
state_after: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ∀ (i_1 j : { i // ↑i ≤ fun a => f a }),
    ∃ k, (↑i_1).lintegral (μ i) + ∑ i ∈ s, (↑j).lintegral (μ i) ≤ (↑k).lintegral (μ i) + ∑ i ∈ s, (↑k).lintegral (μ i)
tactic: refine (ENNReal.iSup_add_iSup ?_).symm
state_before: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
⊢ ∀ (i_1 j : { i // ↑i ≤ fun a => f a }),
    ∃ k, (↑i_1).lintegral (μ i) + ∑ i ∈ s, (↑j).lintegral (μ i) ≤ (↑k).lintegral (μ i) + ∑ i ∈ s, (↑k).lintegral (μ i)
state_after: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
φ ψ : { i // ↑i ≤ fun a => f a }
⊢ ∃ k, (↑φ).lintegral (μ i) + ∑ i ∈ s, (↑ψ).lintegral (μ i) ≤ (↑k).lintegral (μ i) + ∑ i ∈ s, (↑k).lintegral (μ i)
tactic: intro φ ψ
state_before: case e_s.h.insert
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
m✝ : MeasurableSpace α
μ✝ ν : Measure α
m : MeasurableSpace α
ι : Type u_5
f : α → ℝ≥0∞
μ : ι → Measure α
i : ι
s : Finset ι
hi : i ∉ s
hs : ⨆ i, ∑ i_1 ∈ s, (↑i).lintegral (μ i_1) = ∑ i ∈ s, ⨆ x, (↑x).lintegral (μ i)
φ ψ : { i // ↑i ≤ fun a => f a }
⊢ ∃ k, (↑φ).lintegral (μ i) + ∑ i ∈ s, (↑ψ).lintegral (μ i) ≤ (↑k).lintegral (μ i) + ∑ i ∈ s, (↑k).lintegral (μ i)
state_after: no goals
tactic: exact
    ⟨⟨φ ⊔ ψ, fun x => sup_le (φ.2 x) (ψ.2 x)⟩,
      add_le_add (SimpleFunc.lintegral_mono le_sup_left le_rfl)
        (Finset.sum_le_sum fun j _ => SimpleFunc.lintegral_mono le_sup_right le_rfl)⟩