awhecmu/canonical-drafter-extract-mathlib huggingface dataset:
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this :
  EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)
h :
  ∀ (ω : Ω) (hω : (sets n).indicator f ω = f ω),
    Eq.{u_4 + 1} (α := G)
      ((((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G)
          ((μ.restrict (sets n))[g | m] ω) :
        G)
      ((((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω) : G)
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω))
    fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)

Tactic:
filter_upwards [indicator_ae_eq_restrict (f := f) <| hm _ <| h_meas n] with ω hω

Premises used: indicator_ae_eq_restrict
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this :
  EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)
ω : Ω
hω : (sets n).indicator f ω = f ω
h h₁ :
  Eq.{u_4 + 1} (α := G)
    ((((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω) : G)
    ((((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω) : G)
⊢ Eq.{u_4 + 1} (α := G)
    ((((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω) :
      G)
    ((((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω) : G)

Tactic:
rw [hω]
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
pos :
  EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)

Tactic:
suffices (μ.restrict (sets n))[fun ω ↦ B ((sets n).indicator f ω) (g ω) | m]
      =ᵐ[μ.restrict (sets n)] fun ω ↦ B ((sets n).indicator f ω) ((μ.restrict (sets n))[g | m] ω) by
    refine EventuallyEq.trans (condExp_congr_ae ?_) (this.trans ?_)
    · filter_upwards [indicator_ae_eq_restrict (f := f) <| hm _ <| h_meas n] with ω hω
      rw [hω]
    · filter_upwards [indicator_ae_eq_restrict (f := f) <| hm _ <| h_meas n] with ω hω
      rw [hω]
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
measure_univ_lt_top : LT.lt (α := ℝ≥0∞) ((μ.restrict (sets n) : (a : Set Ω) → ℝ≥0∞) Set.univ : ℝ≥0∞) (∞ : ℝ≥0∞)
⊢ IsFiniteMeasure (μ.restrict (sets n))

Tactic:
constructor
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
measure_univ_lt_top : LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets n) : ℝ≥0∞) (∞ : ℝ≥0∞)
⊢ LT.lt (α := ℝ≥0∞) ((μ.restrict (sets n) : (a : Set Ω) → ℝ≥0∞) Set.univ : ℝ≥0∞) (∞ : ℝ≥0∞)

Tactic:
rw [Measure.restrict_apply_univ]

Premises used: MeasureTheory.Measure.restrict_apply_univ
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
⊢ LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets n) : ℝ≥0∞) (∞ : ℝ≥0∞)

Tactic:
h_finite n
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
⊢ LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets n) : ℝ≥0∞) (∞ : ℝ≥0∞)

Tactic:
exact h_finite n
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
⊢ IsFiniteMeasure (μ.restrict (sets n))

Tactic:
have : IsFiniteMeasure (μ.restrict (sets n)) := by
    constructor
    rw [Measure.restrict_apply_univ]
    exact h_finite n
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)

Tactic:
condExp_stronglyMeasurable_bilin_of_bound B hm (hf.indicator (h_meas n))
    hg.integrableOn n ?_

Premises used: Nat.cast, MeasureTheory.StronglyMeasurable.indicator, MeasureTheory.Integrable.integrableOn, MeasureTheory.condExp_stronglyMeasurable_bilin_of_bound
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
pos : ∀ᵐ (ω : Ω) ∂μ.restrict (sets n), ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae (μ.restrict (sets n)))
    (μ.restrict (sets n))[fun (ω : Ω) ↦
      (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) ((sets n).indicator f ω) : E →L[ℝ] G) : (a : E) → G) ((μ.restrict (sets n))[g | m] ω)

Tactic:
refine condExp_stronglyMeasurable_bilin_of_bound B hm (hf.indicator (h_meas n))
    hg.integrableOn n ?_

Premises used: Nat.cast, MeasureTheory.StronglyMeasurable.indicator, MeasureTheory.Integrable.integrableOn, MeasureTheory.condExp_stronglyMeasurable_bilin_of_bound
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
pos : ∀ (ω : Ω), ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)
⊢ ∀ᵐ (ω : Ω) ∂μ.restrict (sets n), ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)

Tactic:
filter_upwards with ω
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
ω : Ω
pos : ∀ (hωs : ω ∈ sets n), ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)
neg : ∀ (hωs : ω ∉ sets n), ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)
⊢ ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)

Tactic:
by_cases hωs : ω ∈ sets n
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
ω : Ω
hωs : ω ∈ sets n
⊢ ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)

Tactic:
simp [hωs, h_norm]
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : StronglyMeasurable f
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
hm : m ≤ mΩ
hμm : SigmaFinite (μ.trim hm)
sets : ℕ → Set Ω
h_univ : Eq.{u_1 + 1} (α := Set Ω) (⋃ (i : ℕ), sets i) Set.univ
h_meas : ∀ (x : ℕ), MeasurableSet (sets x)
h_finite : ∀ (x : ℕ), LT.lt (α := ℝ≥0∞) ((μ : (a : Set Ω) → ℝ≥0∞) (sets x) : ℝ≥0∞) (∞ : ℝ≥0∞)
h_norm : ∀ (x : ℕ), ∀ x_1 ∈ sets x, ‖f x_1‖ ≤ (↑x : ℝ)
n : ℕ
this : IsFiniteMeasure (μ.restrict (sets n))
ω : Ω
hωs : ω ∉ sets n
⊢ ‖(sets n).indicator f ω‖ ≤ (↑n : ℝ)

Tactic:
simp [hωs, h_norm]
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace F
f : Ω → F
g : Ω → E
hg : StronglyMeasurable g
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hf : Integrable f μ
simp_rw :
  EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    μ[fun (ω : Ω) ↦ (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (f ω) | m] fun (ω : Ω) ↦
    (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (μ[f | m] ω)
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    μ[fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m] fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) (μ[f | m] ω) : E →L[ℝ] G) : (a : E) → G) (g ω)

Tactic:
simp_rw [← B.flip_apply] at hfg ⊢

Premises used: ContinuousLinearMap.flip_apply
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace F
f : Ω → F
g : Ω → E
hg : StronglyMeasurable g
hfg :
  Integrable.{u_4, u_1} (ε := G)
    (fun (ω : Ω) ↦ (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (f ω)) μ
hf : Integrable f μ
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    μ[fun (ω : Ω) ↦ (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (f ω) | m] fun (ω : Ω) ↦
    (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (μ[f | m] ω)

Tactic:
condExp_bilin_of_stronglyMeasurable_left B.flip hg hfg hf

Premises used: MeasureTheory.condExp_bilin_of_stronglyMeasurable_left, ContinuousLinearMap.flip
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace F
f : Ω → F
g : Ω → E
hg : StronglyMeasurable g
hfg :
  Integrable.{u_4, u_1} (ε := G)
    (fun (ω : Ω) ↦ (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (f ω)) μ
hf : Integrable f μ
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    μ[fun (ω : Ω) ↦ (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (f ω) | m] fun (ω : Ω) ↦
    (((B.flip : (a : E) → F →L[ℝ] G) (g ω) : F →L[ℝ] G) : (a : F) → G) (μ[f | m] ω)

Tactic:
exact condExp_bilin_of_stronglyMeasurable_left B.flip hg hfg hf

Premises used: MeasureTheory.condExp_bilin_of_stronglyMeasurable_left, ContinuousLinearMap.flip
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : AEStronglyMeasurable f μ
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
h :
  EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) fun (ω : Ω) ↦
    (((B : (a : F) → E →L[ℝ] G) (AEStronglyMeasurable.mk f hf ω) : E →L[ℝ] G) : (a : E) → G) (g ω)
⊢ EventuallyEq.{u_1, u_4} (β := G) (ae μ)
    μ[fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]
    μ[fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (AEStronglyMeasurable.mk f hf ω) : E →L[ℝ] G) : (a : E) → G) (g ω) | m]

Tactic:
apply condExp_congr_ae

Premises used: MeasureTheory.condExp_congr_ae
-- Module: Mathlib.MeasureTheory.Function.ConditionalExpectation.PullOut
Goal:
Ω : Type u_1
m mΩ : MeasurableSpace Ω
μ : Measure Ω
E : Type u_2
F : Type u_3
G : Type u_4
inst : NormedAddCommGroup E
inst_1 : NormedSpace ℝ E
inst_2 : NormedAddCommGroup F
inst_3 : NormedSpace ℝ F
inst_4 : NormedAddCommGroup G
inst_5 : NormedSpace ℝ G
inst_6 : CompleteSpace G
B : F →L[ℝ] E →L[ℝ] G
inst_7 : CompleteSpace E
f : Ω → F
g : Ω → E
hf : AEStronglyMeasurable f μ
hfg :
  Integrable.{u_4, u_1} (ε := G) (fun (ω : Ω) ↦ (((B : (a : F) → E →L[ℝ] G) (f ω) : E →L[ℝ] G) : (a : E) → G) (g ω)) μ
hg : Integrable g μ
a : Ω
ha : f a = AEStronglyMeasurable.mk f hf a
rw rw₁ :
  Eq.{u_4 + 1} (α := G)
    ((((B : (a : F) → E →L[ℝ] G) (AEStronglyMeasurable.mk f hf a) : E →L[ℝ] G) : (a : E) → G) (g a) : G)
    ((((B : (a : F) → E →L[ℝ] G) (AEStronglyMeasurable.mk f hf a) : E →L[ℝ] G) : (a : E) → G) (g a) : G)
⊢ Eq.{u_4 + 1} (α := G) ((((B : (a : F) → E →L[ℝ] G) (f a) : E →L[ℝ] G) : (a : E) → G) (g a) : G)
    ((((B : (a : F) → E →L[ℝ] G) (AEStronglyMeasurable.mk f hf a) : E →L[ℝ] G) : (a : E) → G) (g a) : G)

Tactic:
rw [ha]