Theorem: MeasureTheory.Lp_toLp_restrict_add
File: Mathlib/MeasureTheory/Integral/SetIntegral.lean

tactic: ext1
state_before: α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p) =
    Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)

tactic: refine' (ae_restrict_of_ae (Lp.coeFn_add f g)).mp _
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) =ᵐ[Measure.restrict μ s]
    ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p))

tactic: refine'
  (Lp.coeFn_add (Memℒp.toLp f ((Lp.memℒp f).restrict s))
        (Memℒp.toLp g ((Lp.memℒp g).restrict s))).mp _
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ ∀ᵐ (x : α) ∂Measure.restrict μ s,
    ↑↑(f + g) x = (↑↑f + ↑↑g) x →
      ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x =
        ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x

tactic: refine' (Memℒp.coeFn_toLp ((Lp.memℒp f).restrict s)).mp _
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ ∀ᵐ (x : α) ∂Measure.restrict μ s,
    ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x =
        (↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) + ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p))) x →
      ↑↑(f + g) x = (↑↑f + ↑↑g) x →
        ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x =
          ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x

tactic: refine' (Memℒp.coeFn_toLp ((Lp.memℒp g).restrict s)).mp _
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ ∀ᵐ (x : α) ∂Measure.restrict μ s,
    ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) x = ↑↑f x →
      ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x =
          (↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) + ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p))) x →
        ↑↑(f + g) x = (↑↑f + ↑↑g) x →
          ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x =
            ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x

tactic: refine' (Memℒp.coeFn_toLp ((Lp.memℒp (f + g)).restrict s)).mono fun x hx1 hx2 hx3 hx4 hx5 => _
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
⊢ ∀ᵐ (x : α) ∂Measure.restrict μ s,
    ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x = ↑↑g x →
      ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) x = ↑↑f x →
        ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x =
            (↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) + ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p))) x →
          ↑↑(f + g) x = (↑↑f + ↑↑g) x →
            ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x =
              ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x

tactic: rw [hx4, hx1, Pi.add_apply, hx2, hx3, hx5, Pi.add_apply]
state_before: case h
α : Type u_1
β : Type ?u.319628
E : Type u_2
F : Type ?u.319634
inst✝⁴ : MeasurableSpace α
inst✝³ : NormedAddCommGroup E
𝕜 : Type ?u.319643
inst✝² : NormedField 𝕜
inst✝¹ : NormedAddCommGroup F
inst✝ : NormedSpace 𝕜 F
p : ℝ≥0∞
μ : Measure α
f g : { x // x ∈ Lp E p }
s : Set α
x : α
hx1 : ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x = ↑↑(f + g) x
hx2 : ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x = ↑↑g x
hx3 : ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) x = ↑↑f x
hx4 :
  ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x =
    (↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p)) + ↑↑(Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p))) x
hx5 : ↑↑(f + g) x = (↑↑f + ↑↑g) x
⊢ ↑↑(Memℒp.toLp ↑↑(f + g) (_ : Memℒp (↑↑(f + g)) p)) x =
    ↑↑(Memℒp.toLp ↑↑f (_ : Memℒp (↑↑f) p) + Memℒp.toLp ↑↑g (_ : Memℒp (↑↑g) p)) x