l3lab/ntp-mathlib huggingface dataset:
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    

Proof state:
case refine'_1
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
x : F'
t : Set α
ht : MeasurableSet t
hμt : ↑↑μ t < ⊤
⊢ ∫ (x_1 : α) in s, ↑↑((condexpInd F' hm μ t) x) x_1 ∂μ =
    ∫ (x_1 : α) in s, ↑↑↑(simpleFunc.indicatorConst 1 ht (_ : ↑↑μ t ≠ ⊤) x) x_1 ∂μ

Next tactic:
rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    

Proof state:
case refine'_1
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
x : F'
t : Set α
ht : MeasurableSet t
hμt : ↑↑μ t < ⊤
⊢ ∫ (x_1 : α) in s, ↑↑((condexpInd F' hm μ t) x) x_1 ∂μ = ENNReal.toReal (↑↑μ (t ∩ s)) • x

Next tactic:
exact set_integral_condexpInd hs ht hμs hμt.ne x
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · 

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
⊢ ∀ ⦃f g : α → F'⦄ (hf : Memℒp f 1) (hg : Memℒp g 1),
    Disjoint (Function.support f) (Function.support g) →
      (fun f => ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ) (Memℒp.toLp f hf) →
        (fun f => ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ) (Memℒp.toLp g hg) →
          (fun f => ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ)
            (Memℒp.toLp f hf + Memℒp.toLp g hg)

Next tactic:
intro f g hf_Lp hg_Lp _ hf hg
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝¹ g✝ : α → F'
s : Set α
f✝ : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
f g : α → F'
hf_Lp : Memℒp f 1
hg_Lp : Memℒp g 1
a✝ : Disjoint (Function.support f) (Function.support g)
hf : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x ∂μ
hg : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp g hg_Lp) x ∂μ
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp + Memℒp.toLp g hg_Lp)) x ∂μ =
    ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp + Memℒp.toLp g hg_Lp) x ∂μ

Next tactic:
simp_rw [(condexpL1Clm F' hm μ).map_add]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝¹ g✝ : α → F'
s : Set α
f✝ : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
f g : α → F'
hf_Lp : Memℒp f 1
hg_Lp : Memℒp g 1
a✝ : Disjoint (Function.support f) (Function.support g)
hf : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x ∂μ
hg : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp g hg_Lp) x ∂μ
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp) + (condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ =
    ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp + Memℒp.toLp g hg_Lp) x ∂μ

Next tactic:
rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
    

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝¹ g✝ : α → F'
s : Set α
f✝ : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
f g : α → F'
hf_Lp : Memℒp f 1
hg_Lp : Memℒp g 1
a✝ : Disjoint (Function.support f) (Function.support g)
hf : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x ∂μ
hg : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp g hg_Lp) x ∂μ
⊢ ∫ (x : α) in s,
      (↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) + ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp))) x ∂μ =
    ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp + Memℒp.toLp g hg_Lp) x ∂μ

Next tactic:
rw [set_integral_congr_ae (hm s hs)
      ((Lp.coeFn_add (hf_Lp.toLp f) (hg_Lp.toLp g)).mono fun x hx _ => hx)]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
    rw [set_integral_congr_ae (hm s hs)
      ((Lp.coeFn_add (hf_Lp.toLp f) (hg_Lp.toLp g)).mono fun x hx _ => hx)]
    

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝¹ g✝ : α → F'
s : Set α
f✝ : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
f g : α → F'
hf_Lp : Memℒp f 1
hg_Lp : Memℒp g 1
a✝ : Disjoint (Function.support f) (Function.support g)
hf : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x ∂μ
hg : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp g hg_Lp) x ∂μ
⊢ ∫ (x : α) in s,
      (↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) + ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp))) x ∂μ =
    ∫ (x : α) in s, (↑↑(Memℒp.toLp f hf_Lp) + ↑↑(Memℒp.toLp g hg_Lp)) x ∂μ

Next tactic:
simp_rw [Pi.add_apply]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
    rw [set_integral_congr_ae (hm s hs)
      ((Lp.coeFn_add (hf_Lp.toLp f) (hg_Lp.toLp g)).mono fun x hx _ => hx)]
    simp_rw [Pi.add_apply]
    

Proof state:
case refine'_2
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝¹ g✝ : α → F'
s : Set α
f✝ : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
f g : α → F'
hf_Lp : Memℒp f 1
hg_Lp : Memℒp g 1
a✝ : Disjoint (Function.support f) (Function.support g)
hf : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x ∂μ
hg : ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ = ∫ (x : α) in s, ↑↑(Memℒp.toLp g hg_Lp) x ∂μ
⊢ ∫ (x : α) in s,
      ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp f hf_Lp)) x + ↑↑((condexpL1Clm F' hm μ) (Memℒp.toLp g hg_Lp)) x ∂μ =
    ∫ (x : α) in s, ↑↑(Memℒp.toLp f hf_Lp) x + ↑↑(Memℒp.toLp g hg_Lp) x ∂μ

Next tactic:
rw [integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn,
      integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn, hf,
      hg]
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
    rw [set_integral_congr_ae (hm s hs)
      ((Lp.coeFn_add (hf_Lp.toLp f) (hg_Lp.toLp g)).mono fun x hx _ => hx)]
    simp_rw [Pi.add_apply]
    rw [integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn,
      integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn, hf,
      hg]
  · 

Proof state:
case refine'_3
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
⊢ Continuous fun f => ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ

Next tactic:
exact (continuous_set_integral s).comp (condexpL1Clm F' hm μ).continuous
/-- Auxiliary lemma used in the proof of `set_integral_condexpL1Clm`. -/
theorem set_integral_condexpL1Clm_of_measure_ne_top (f : α →₁[μ] F') (hs : MeasurableSet[m] s)
    (hμs : μ s ≠ ∞) : ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  refine' @Lp.induction _ _ _ _ _ _ _ ENNReal.one_ne_top
    (fun f : α →₁[μ] F' => ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ) _ _
    (isClosed_eq _ _) f
  · intro x t ht hμt
    simp_rw [condexpL1Clm_indicatorConst ht hμt.ne x]
    rw [Lp.simpleFunc.coe_indicatorConst, set_integral_indicatorConstLp (hm _ hs)]
    exact set_integral_condexpInd hs ht hμs hμt.ne x
  · intro f g hf_Lp hg_Lp _ hf hg
    simp_rw [(condexpL1Clm F' hm μ).map_add]
    rw [set_integral_congr_ae (hm s hs) ((Lp.coeFn_add (condexpL1Clm F' hm μ (hf_Lp.toLp f))
      (condexpL1Clm F' hm μ (hg_Lp.toLp g))).mono fun x hx _ => hx)]
    rw [set_integral_congr_ae (hm s hs)
      ((Lp.coeFn_add (hf_Lp.toLp f) (hg_Lp.toLp g)).mono fun x hx _ => hx)]
    simp_rw [Pi.add_apply]
    rw [integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn,
      integral_add (L1.integrable_coeFn _).integrableOn (L1.integrable_coeFn _).integrableOn, hf,
      hg]
  · exact (continuous_set_integral s).comp (condexpL1Clm F' hm μ).continuous
  · 

Proof state:
case refine'_4
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
hμs : ↑↑μ s ≠ ⊤
⊢ Continuous fun f => ∫ (x : α) in s, ↑↑f x ∂μ

Next tactic:
exact continuous_set_integral s
/-- The integral of the conditional expectation `condexpL1Clm` over an `m`-measurable set is equal
to the integral of `f` on that set. See also `set_integral_condexp`, the similar statement for
`condexp`. -/
theorem set_integral_condexpL1Clm (f : α →₁[μ] F') (hs : MeasurableSet[m] s) :
    ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  

Proof state:
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ

Next tactic:
let S := spanningSets (μ.trim hm)
/-- The integral of the conditional expectation `condexpL1Clm` over an `m`-measurable set is equal
to the integral of `f` on that set. See also `set_integral_condexp`, the similar statement for
`condexp`. -/
theorem set_integral_condexpL1Clm (f : α →₁[μ] F') (hs : MeasurableSet[m] s) :
    ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  let S := spanningSets (μ.trim hm)
  

Proof state:
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
S : ℕ → Set α := spanningSets (Measure.trim μ hm)
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ

Next tactic:
have hS_meas : ∀ i, MeasurableSet[m] (S i) := measurable_spanningSets (μ.trim hm)
/-- The integral of the conditional expectation `condexpL1Clm` over an `m`-measurable set is equal
to the integral of `f` on that set. See also `set_integral_condexp`, the similar statement for
`condexp`. -/
theorem set_integral_condexpL1Clm (f : α →₁[μ] F') (hs : MeasurableSet[m] s) :
    ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  let S := spanningSets (μ.trim hm)
  have hS_meas : ∀ i, MeasurableSet[m] (S i) := measurable_spanningSets (μ.trim hm)
  

Proof state:
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
S : ℕ → Set α := spanningSets (Measure.trim μ hm)
hS_meas : ∀ (i : ℕ), MeasurableSet (S i)
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ

Next tactic:
have hS_meas0 : ∀ i, MeasurableSet (S i) := fun i => hm _ (hS_meas i)
/-- The integral of the conditional expectation `condexpL1Clm` over an `m`-measurable set is equal
to the integral of `f` on that set. See also `set_integral_condexp`, the similar statement for
`condexp`. -/
theorem set_integral_condexpL1Clm (f : α →₁[μ] F') (hs : MeasurableSet[m] s) :
    ∫ x in s, condexpL1Clm F' hm μ f x ∂μ = ∫ x in s, f x ∂μ := by
  let S := spanningSets (μ.trim hm)
  have hS_meas : ∀ i, MeasurableSet[m] (S i) := measurable_spanningSets (μ.trim hm)
  have hS_meas0 : ∀ i, MeasurableSet (S i) := fun i => hm _ (hS_meas i)
  

Proof state:
α : Type u_1
β : Type u_2
F : Type u_3
F' : Type u_4
G : Type u_5
G' : Type u_6
𝕜 : Type u_7
p : ℝ≥0∞
inst✝¹¹ : IsROrC 𝕜
inst✝¹⁰ : NormedAddCommGroup F
inst✝⁹ : NormedSpace 𝕜 F
inst✝⁸ : NormedAddCommGroup F'
inst✝⁷ : NormedSpace 𝕜 F'
inst✝⁶ : NormedSpace ℝ F'
inst✝⁵ : CompleteSpace F'
inst✝⁴ : NormedAddCommGroup G
inst✝³ : NormedAddCommGroup G'
inst✝² : NormedSpace ℝ G'
inst✝¹ : CompleteSpace G'
m m0 : MeasurableSpace α
μ : Measure α
hm : m ≤ m0
inst✝ : SigmaFinite (Measure.trim μ hm)
f✝ g : α → F'
s : Set α
f : ↥(Lp F' 1)
hs : MeasurableSet s
S : ℕ → Set α := spanningSets (Measure.trim μ hm)
hS_meas : ∀ (i : ℕ), MeasurableSet (S i)
hS_meas0 : ∀ (i : ℕ), MeasurableSet (S i)
⊢ ∫ (x : α) in s, ↑↑((condexpL1Clm F' hm μ) f) x ∂μ = ∫ (x : α) in s, ↑↑f x ∂μ

Next tactic:
have hs_eq : s = ⋃ i, S i ∩ s := by
    simp_rw [Set.inter_comm]
    rw [← Set.inter_iUnion, iUnion_spanningSets (μ.trim hm), Set.inter_univ]