zzhisthebest/LeanBenchmark huggingface dataset:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_10.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν = ∫ (ω : Ω), ∫ (x' : β'), F (f ω, x') ∂ν' ∂μ →
      AEStronglyMeasurable (fun y => ∫ (x' : β'), F (y, x') ∂ν') (Measure.map f μ) := sorry

Tactic state before:
case h
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν = ∫ (ω : Ω), ∫ (x' : β'), F (f ω, x') ∂ν' ∂μ

Tactic:
apply MeasureTheory.integral_map

Tactic state after:
[case h.hφ
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEMeasurable f μ,
 case h.hfm
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEStronglyMeasurable (fun y => ∫ (x' : β'), F (y, x') ∂ν') (Measure.map f μ)]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_11.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    AEStronglyMeasurable (fun y => ∫ (x' : β'), F (y, x') ∂ν') (Measure.map f μ) →
      StronglyMeasurable fun y => ∫ (x' : β'), F (y, x') ∂ν' := sorry

Tactic state before:
case h.hfm
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ AEStronglyMeasurable (fun y => ∫ (x' : β'), F (y, x') ∂ν') (Measure.map f μ)

Tactic:
apply StronglyMeasurable.aestronglyMeasurable

Tactic state after:
[case h.hfm.hf
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ StronglyMeasurable fun y => ∫ (x' : β'), F (y, x') ∂ν']
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_12.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' → StronglyMeasurable fun y => ∫ (x' : β'), F (y, x') ∂ν' := sorry

Tactic state before:
case h.hfm.hf
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ StronglyMeasurable fun y => ∫ (x' : β'), F (y, x') ∂ν'

Tactic:
exact StronglyMeasurable.integral_prod_right hF'

Tactic state after:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_13.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν = ∫ (z : β × β'), F z ∂ν.prod ν' →
      ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν := sorry

Tactic state before:
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν = ∫ (z : β × β'), F z ∂ν.prod ν'

Tactic:
apply Eq.symm

Tactic state after:
[case h
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_14.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν → Integrable F (ν.prod ν') := sorry

Tactic state before:
case h
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (x : β), ∫ (x' : β'), F (x, x') ∂ν' ∂ν

Tactic:
apply MeasureTheory.integral_prod

Tactic state after:
[case h.hf
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ Integrable F (ν.prod ν')]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_15.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E] {Ω : Type u_2}
  {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω} {f : Ω → β} {g : Ω → β'} {F : β × β' → E}
  {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} [inst_1 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F}
  (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) (hfg : IndepFun f g μ)
  (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' → Integrable F (ν.prod ν') := sorry

Tactic state before:
case h.hf
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ Integrable F (ν.prod ν')

Tactic:
exact ⟨hF'.aestronglyMeasurable, hF⟩

Tactic state after:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_16.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ := sorry

Tactic state before:
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (z : β × β'), F z ∂ν.prod ν' = ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ

Tactic:
rw [← hfg']

Tactic state after:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_17.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ = ∫ (ω : Ω), F (f ω, g ω) ∂μ →
      AEMeasurable (fun ω => (f ω, g ω)) μ := sorry

Tactic state before:
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ = ∫ (ω : Ω), F (f ω, g ω) ∂μ

Tactic:
apply MeasureTheory.integral_map

Tactic state after:
[case hφ
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEMeasurable (fun ω => (f ω, g ω)) μ,
 case hfm
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEStronglyMeasurable F (Measure.map (fun ω => (f ω, g ω)) μ)]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_18.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E]
  [inst_1 : NormedSpace ℝ E] {Ω : Type u_2} {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω}
  {f : Ω → β} {g : Ω → β'} {F : β × β' → E} {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'}
  [inst_2 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F} (hf : AEMeasurable f μ) (hg : AEMeasurable g μ)
  (hfg : IndepFun f g μ) (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ = ∫ (ω : Ω), F (f ω, g ω) ∂μ →
      AEStronglyMeasurable F (Measure.map (fun ω => (f ω, g ω)) μ) := sorry

Tactic state before:
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ ∫ (z : β × β'), F z ∂Measure.map (fun ω => (f ω, g ω)) μ = ∫ (ω : Ω), F (f ω, g ω) ∂μ

Tactic:
apply MeasureTheory.integral_map

Tactic state after:
[case hφ
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEMeasurable (fun ω => (f ω, g ω)) μ,
 case hfm
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEStronglyMeasurable F (Measure.map (fun ω => (f ω, g ω)) μ)]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_19.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E] {Ω : Type u_2}
  {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω} {f : Ω → β} {g : Ω → β'} {F : β × β' → E}
  {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} [inst_1 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F}
  (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) (hfg : IndepFun f g μ)
  (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' →
    AEStronglyMeasurable F (Measure.map (fun ω => (f ω, g ω)) μ) → AEStronglyMeasurable F (ν.prod ν') := sorry

Tactic state before:
case hfm
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ AEStronglyMeasurable F (Measure.map (fun ω => (f ω, g ω)) μ)

Tactic:
rw [hfg']

Tactic state after:
[case hfm
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : NormedSpace ℝ E
 Ω : Type u_2
 β : Type u_3
 β' : Type u_4
 _mΩ : MeasurableSpace Ω
 μ : Measure Ω
 f : Ω → β
 g : Ω → β'
 F : β × β' → E
 mβ : MeasurableSpace β
 mβ' : MeasurableSpace β'
 inst✝ : IsFiniteMeasure μ
 hF' : StronglyMeasurable F
 hf : AEMeasurable f μ
 hg : AEMeasurable g μ
 hfg : IndepFun f g μ
 hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
 ν : Measure β := Measure.map f μ
 ν' : Measure β' := Measure.map g μ
 hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
 ⊢ AEStronglyMeasurable F (ν.prod ν')]
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_20.{u_4, u_3, u_2, u_1} {E : Type u_1} [inst : NormedAddCommGroup E] {Ω : Type u_2}
  {β : Type u_3} {β' : Type u_4} {_mΩ : MeasurableSpace Ω} {μ : Measure Ω} {f : Ω → β} {g : Ω → β'} {F : β × β' → E}
  {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} [inst_1 : IsFiniteMeasure μ] {hF' : StronglyMeasurable F}
  (hf : AEMeasurable f μ) (hg : AEMeasurable g μ) (hfg : IndepFun f g μ)
  (hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))) :
  let ν := Measure.map f μ;
  let ν' := Measure.map g μ;
  Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν' → AEStronglyMeasurable F (ν.prod ν') := sorry

Tactic state before:
case hfm
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : NormedSpace ℝ E
Ω : Type u_2
β : Type u_3
β' : Type u_4
_mΩ : MeasurableSpace Ω
μ : Measure Ω
f : Ω → β
g : Ω → β'
F : β × β' → E
mβ : MeasurableSpace β
mβ' : MeasurableSpace β'
inst✝ : IsFiniteMeasure μ
hF' : StronglyMeasurable F
hf : AEMeasurable f μ
hg : AEMeasurable g μ
hfg : IndepFun f g μ
hF : HasFiniteIntegral F ((Measure.map f μ).prod (Measure.map g μ))
ν : Measure β := Measure.map f μ
ν' : Measure β' := Measure.map g μ
hfg' : Measure.map (fun ω => (f ω, g ω)) μ = ν.prod ν'
⊢ AEStronglyMeasurable F (ν.prod ν')

Tactic:
exact hF'.aestronglyMeasurable

Tactic state after:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_21.{u_2, u_1} {Ω : Type u_1} [inst : MeasurableSpace Ω] {μ : Measure Ω}
  [inst_1 : IsProbabilityMeasure μ] {E : Type u_2} [inst_2 : NormedAddCommGroup E] [inst_3 : CompleteSpace E]
  [inst_4 : NormedSpace ℝ E] (c : E) : ∫ (x : Ω), c ∂μ = (μ Set.univ).toReal • c := sorry

Tactic state before:
Ω : Type u_1
inst✝⁴ : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : IsProbabilityMeasure μ
E : Type u_2
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
c : E
⊢ ∫ (x : Ω), c ∂μ = (μ Set.univ).toReal • c

Tactic:
exact integral_const c

Tactic state after:
import Mathlib
import FoML


open MeasureTheory ProbabilityTheory

theorem extracted_formal_statement_22.{u_2, u_1} {Ω : Type u_1} [inst : MeasurableSpace Ω] {μ : Measure Ω}
  [inst_1 : IsProbabilityMeasure μ] {E : Type u_2} [inst_2 : NormedAddCommGroup E] [inst_3 : CompleteSpace E]
  [inst_4 : NormedSpace ℝ E] (c : E) (this : μ Set.univ = 1) (h_original_goal : (μ Set.univ).toReal • c = c) :
  ENNReal.toReal 1 • c = c := sorry

Tactic state before:
Ω : Type u_1
inst✝⁴ : MeasurableSpace Ω
μ : Measure Ω
inst✝³ : IsProbabilityMeasure μ
E : Type u_2
inst✝² : NormedAddCommGroup E
inst✝¹ : CompleteSpace E
inst✝ : NormedSpace ℝ E
c : E
this : μ Set.univ = 1
⊢ (μ Set.univ).toReal • c = c

Tactic:
rw [this]

Tactic state after:
[Ω : Type u_1
 inst✝⁴ : MeasurableSpace Ω
 μ : Measure Ω
 inst✝³ : IsProbabilityMeasure μ
 E : Type u_2
 inst✝² : NormedAddCommGroup E
 inst✝¹ : CompleteSpace E
 inst✝ : NormedSpace ℝ E
 c : E
 this : μ Set.univ = 1
 ⊢ ENNReal.toReal 1 • c = c]