Built with Alectryon, running Lean4 v4.13.0. Bubbles () indicate interactive fragments: hover for details, tap to reveal contents. Use Ctrl+↑ Ctrl+↓ to navigate, Ctrl+🖱️ to focus. On Mac, use instead of Ctrl.
import Mathlib.Data.Real.StarOrdered
import Mathlib.Order.CompletePartialOrder
import Mathlib.Probability.ConditionalExpectation
import Mathlib.Probability.Kernel.Disintegration.StandardBorel

open MeasureTheory Set ProbabilityTheory
/--
  If two constant functions are equal a.e w.r.t. a measure that is positive when applied to univ,
  then the two constants are equal.
-/
lemma constant_ae_eq_imp_eq {α β : Type*} [MeasurableSpace α] {μ : Measure α}
    (hμ : μ univ  0) (c d : β) (h_ae : (fun (_: α)  c) =ᵐ[μ] (fun (_: α)  d)) :
    c = d := 

Goals accomplished! 🐙
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d

c = d
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: ¬c = d

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d

c = d
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d

c = d
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

False

Goals accomplished! 🐙
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

μ ({x | c = d} {x | c = d}) = 0

Goals accomplished! 🐙
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

μ ({x | c = d} {x | c = d}) = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: {x | c = d} =

μ {x | c = d} = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

μ ({x | c = d} {x | c = d}) = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: {x | c = d} =

μ {x | c = d} = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: {x | c = d} =

μ = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: {x | c = d} =

μ = 0
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

μ ({x | c = d} {x | c = d}) = 0

Goals accomplished! 🐙
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d

False

Goals accomplished! 🐙
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d

c = d
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: μ ({x | c = d} {x | c = d}) = 0

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
c, d: β
: μ ({x | c = d} {x | c = d}) 0
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: μ ({x | c = d} {x | c = d}) = 0

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
c, d: β
: μ ({x | c = d} {x | c = d}) 0
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: μ ({x | c = d} {x | c = d}) = 0

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
c, d: β
: μ ({x | c = d} {x | c = d}) 0
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d
h: c d
this: μ ({x | c = d} {x | c = d}) = 0

False
α: Type u_1
β: Type u_2
inst✝: MeasurableSpace α
μ: Measure α
: μ univ 0
c, d: β
h_ae: (fun x => c) =ᶠ[ae μ] fun x => d

c = d

Goals accomplished! 🐙
/- Law of total probability using `condKernel`. -/ namespace ProbTotalLaw variable {Ω α: Type} [Nonempty Ω] [MeasurableSpace Ω] [MeasurableSpace α] [StandardBorelSpace Ω] /- instance {μ : Measure α} {ν : Measure Ω} [IsFiniteMeasure μ] [IsFiniteMeasure ν] : IsFiniteMeasure (μ.prod ν) where measure_univ_lt_top := by rw [μ.prod_apply MeasurableSet.univ] simp_rw [preimage_univ, lintegral_const] suffices ν univ * μ univ < ⊤ * ⊤ by exact this exact ENNReal.mul_lt_mul (IsFiniteMeasure.measure_univ_lt_top) (IsFiniteMeasure.measure_univ_lt_top) -/ variable (μ : Measure α) (ν : Measure Ω) [IsFiniteMeasure μ] [IsFiniteMeasure ν] theorem probability_total_law : s, μ s = ∫⁻ x in s, ∫⁻ _, 1 (μ.prod ν).condKernel x μ :=

Goals accomplished! 🐙
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν

(s : Set α), μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α

μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν

(s : Set α), μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α

μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α

μ s = ∫⁻ (x : α) in s, ((μ.prod ν).condKernel x) univ μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α

μ s = ∫⁻ (x : α) in s, ((μ.prod ν).condKernel x) univ μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν

(s : Set α), μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α
is_prob_measure: (x : α), ((μ.prod ν).condKernel x) univ = 1

μ s = ∫⁻ (x : α) in s, ((μ.prod ν).condKernel x) univ μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν

(s : Set α), μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α
is_prob_measure: (x : α), ((μ.prod ν).condKernel x) univ = 1

μ s = ∫⁻ (x : α) in s, ((μ.prod ν).condKernel x) univ μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α
is_prob_measure: (x : α), ((μ.prod ν).condKernel x) univ = 1

μ s = ∫⁻ (x : α) in s, 1 μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν
s: Set α
is_prob_measure: (x : α), ((μ.prod ν).condKernel x) univ = 1

μ s = ∫⁻ (x : α) in s, 1 μ
Ω, α: Type
inst✝⁵: Nonempty Ω
inst✝⁴: MeasurableSpace Ω
inst✝³: MeasurableSpace α
inst✝²: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure μ
inst✝: IsFiniteMeasure ν

(s : Set α), μ s = ∫⁻ (x : α) in s, ∫⁻ (x : Ω), 1 (μ.prod ν).condKernel x μ

Goals accomplished! 🐙
variable [IsProbabilityMeasure ν] omit [Nonempty Ω] [StandardBorelSpace Ω] [IsFiniteMeasure μ] in lemma apply_fst : (μ.prod ν).fst = μ :=

Goals accomplished! 🐙
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

(μ.prod ν).fst = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

(μ.prod ν).fst = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

(μ.prod ν).fst = μ

Goals accomplished! 🐙
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

Measure.map Prod.fst (μ.prod ν) = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

(μ.prod ν).fst = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

Measure.map Prod.fst (μ.prod ν) = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

ν univ μ = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

Measure.map Prod.fst (μ.prod ν) = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

1 μ = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

Measure.map Prod.fst (μ.prod ν) = μ
Ω, α: Type
inst✝³: MeasurableSpace Ω
inst✝²: MeasurableSpace α
μ: Measure α
ν: Measure Ω
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ = μ

Goals accomplished! 🐙
lemma apply_comp : μ.prod ν = μ ⊗ₘ (μ.prod ν).condKernel :=

Goals accomplished! 🐙
Ω, α: Type
inst✝⁶: Nonempty Ω
inst✝⁵: MeasurableSpace Ω
inst✝⁴: MeasurableSpace α
inst✝³: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝²: IsFiniteMeasure μ
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ.prod ν = μ ⊗ₘ (μ.prod ν).condKernel
Ω, α: Type
inst✝⁶: Nonempty Ω
inst✝⁵: MeasurableSpace Ω
inst✝⁴: MeasurableSpace α
inst✝³: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝²: IsFiniteMeasure μ
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ.prod ν = μ ⊗ₘ (μ.prod ν).condKernel
Ω, α: Type
inst✝⁶: Nonempty Ω
inst✝⁵: MeasurableSpace Ω
inst✝⁴: MeasurableSpace α
inst✝³: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝²: IsFiniteMeasure μ
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ.prod ν = (μ.prod ν).fst ⊗ₘ (μ.prod ν).condKernel
Ω, α: Type
inst✝⁶: Nonempty Ω
inst✝⁵: MeasurableSpace Ω
inst✝⁴: MeasurableSpace α
inst✝³: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝²: IsFiniteMeasure μ
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ.prod ν = (μ.prod ν).fst ⊗ₘ (μ.prod ν).condKernel
Ω, α: Type
inst✝⁶: Nonempty Ω
inst✝⁵: MeasurableSpace Ω
inst✝⁴: MeasurableSpace α
inst✝³: StandardBorelSpace Ω
μ: Measure α
ν: Measure Ω
inst✝²: IsFiniteMeasure μ
inst✝¹: IsFiniteMeasure ν
inst✝: IsProbabilityMeasure ν

μ.prod ν = μ ⊗ₘ (μ.prod ν).condKernel

Goals accomplished! 🐙
end ProbTotalLaw /- Tower property of conditional expectation using `condexp`. -/ namespace ExpCond variable {Ω F : Type*} [NormedAddCommGroup F] [NormedSpace ℝ F] [CompleteSpace F] {m2 m₁ mΩ : MeasurableSpace Ω} {μ : Measure Ω} {X : Ω F} /- example (hm₁ : m₁ ≤ mΩ) (m₂ : m2 ≤ m₁) [SigmaFinite (μ.trim hm₁)] : ∀ (s : Set Ω), MeasurableSet[m2] s → ∫ x in s, condexp m2 μ X x ∂μ = ∫ x in s, condexp m₁ μ (condexp m2 μ X) x ∂μ := by intro s hs exact (setIntegral_condexp hm₁ (integrable_condexp) (m₂ s hs)).symm -/ theorem tower_property {X : Ω F} (hX : Integrable X μ) (hm₁ : m₁ mΩ) (m₂ : m2 m₁) [SigmaFinite (μ.trim (m₂.trans hm₁))] : μ[X | m2] =ᵐ[μ] μ[μ[X | m₁] | m2] :=

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hf
Integrable (μ[X|m₁]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
(s : Set Ω), MeasurableSet s μ s < IntegrableOn (μ[X|m2]) s μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
AEStronglyMeasurable' m2 (μ[X|m2]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hf
Integrable (μ[X|m₁]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hf
Integrable (μ[X|m₁]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
(s : Set Ω), MeasurableSet s μ s < IntegrableOn (μ[X|m2]) s μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
AEStronglyMeasurable' m2 (μ[X|m2]) μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_int_finite
(s : Set Ω), MeasurableSet s μ s < IntegrableOn (μ[X|m2]) s μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_int_finite
(s : Set Ω), MeasurableSet s μ s < IntegrableOn (μ[X|m2]) s μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
AEStronglyMeasurable' m2 (μ[X|m2]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
a✝¹: MeasurableSet s
a✝: μ s <

hg_int_finite
IntegrableOn (μ[X|m2]) s μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_int_finite
(s : Set Ω), MeasurableSet s μ s < IntegrableOn (μ[X|m2]) s μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_eq
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_eq
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
AEStronglyMeasurable' m2 (μ[X|m2]) μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <

hg_eq
(x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_eq
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <

hg_eq
(x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <

hg_eq
(x : Ω) in s, X x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <

hg_eq
(x : Ω) in s, X x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_eq
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <
hs2: MeasurableSet s

hg_eq
(x : Ω) in s, X x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)

hg_eq
(s : Set Ω), MeasurableSet s μ s < (x : Ω) in s, (μ[X|m2]) x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <
hs2: MeasurableSet s

hg_eq
(x : Ω) in s, X x μ = (x : Ω) in s, (μ[X|m₁]) x μ
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )
this: SigmaFinite (μ.trim hm₁)
s: Set Ω
hs: MeasurableSet s
a✝: μ s <
hs2: MeasurableSet s

hg_eq
(x : Ω) in s, X x μ = (x : Ω) in s, X x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝³: NormedAddCommGroup F
inst✝²: NormedSpace ℝ F
inst✝¹: CompleteSpace F
m2, m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
m₂: m2 m₁
inst✝: SigmaFinite (μ.trim )

μ[X|m2] =ᶠ[ae μ] μ[μ[X|m₁]|m2]

Goals accomplished! 🐙
end ExpCond /- Law of total expectation using `condExp`. -/ namespace ExpTotal variable {Ω F : Type*} [NormedAddCommGroup F] [NormedSpace ℝ F] [CompleteSpace F] {m2 m₁ mΩ : MeasurableSpace Ω} {μ : Measure Ω} {X : Ω F} open ExpCond def S : Set (Set Ω) := {, univ} lemma destruct_S : ⦃t : Set Ω⦄, t S t = t = univ := fun _ ht ht lemma S_apply : ( : Set Ω) S (univ : Set Ω) S := ⟨mem_insert {univ}, mem_insert_of_mem rfl⟩ /-- The trivial σ-algebra : {∅, univ}. -/ def m_trivial : MeasurableSpace Ω := MeasurableSpace.generateFrom S /-- The trivial σ-algebra is less or equal then any σ-algebra. -/ lemma m_trivial_le : (m : MeasurableSpace Ω), m_trivial m :=

Goals accomplished! 🐙
Ω: Type u_1

(m : MeasurableSpace Ω), m_trivial m
Ω: Type u_1
m✝: MeasurableSpace Ω

m_trivial m
Ω: Type u_1

(m : MeasurableSpace Ω), m_trivial m
Ω: Type u_1
m✝: MeasurableSpace Ω

h
t S, MeasurableSet t
Ω: Type u_1

(m : MeasurableSpace Ω), m_trivial m
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S

h
MeasurableSet t
Ω: Type u_1

(m : MeasurableSpace Ω), m_trivial m
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
x✝: t = t = univ

h
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t =

h.inl
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t =

h.inl
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t =

h.inl
MeasurableSet
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t =

h.inl
MeasurableSet
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t =

h.inl
MeasurableSet t

Goals accomplished! 🐙
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
x✝: t = t = univ

h
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t = univ

h.inr
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t = univ

h.inr
MeasurableSet t
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t = univ

h.inr
MeasurableSet univ
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t = univ

h.inr
MeasurableSet univ
Ω: Type u_1
m✝: MeasurableSpace Ω
t✝: Set Ω
ht: t S
h: t = univ

h.inr
MeasurableSet t

Goals accomplished! 🐙
/-- The trivial σ-algebra is only composed of ∅ and univ. -/ lemma measurableSet_S {s : Set Ω} : MeasurableSet[m_trivial] s s S :=

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω

hC
t S, t S
Ω: Type u_1
s: Set Ω
S
Ω: Type u_1
s: Set Ω
t S, t S
Ω: Type u_1
s: Set Ω
(f : ℕ Set Ω), ( (n : ℕ), f n S) i, f i S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω

hC
t S, t S
Ω: Type u_1
s: Set Ω

hC
t S, t S
Ω: Type u_1
s: Set Ω
S
Ω: Type u_1
s: Set Ω
t S, t S
Ω: Type u_1
s: Set Ω
(f : ℕ Set Ω), ( (n : ℕ), f n S) i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω

h_empty
S
Ω: Type u_1
s: Set Ω

h_empty
S
Ω: Type u_1
s: Set Ω
t S, t S
Ω: Type u_1
s: Set Ω
(f : ℕ Set Ω), ( (n : ℕ), f n S) i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s, t: Set Ω
ht: t S

h_compl
t S
Ω: Type u_1
s: Set Ω
(f : ℕ Set Ω), ( (n : ℕ), f n S) i, f i S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s, t: Set Ω
ht: t S
x✝: t = t = univ

h_compl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
∅ᶜ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
∅ᶜ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =
this: ∅ᶜ = univ

h_compl.inl
∅ᶜ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =
this: ∅ᶜ = univ

h_compl.inl
∅ᶜ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =
this: ∅ᶜ = univ

h_compl.inl
univ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =
this: ∅ᶜ = univ

h_compl.inl
univ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t =

h_compl.inl
t S

Goals accomplished! 🐙
Ω: Type u_1
s, t: Set Ω
ht: t S
x✝: t = t = univ

h_compl
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
univ S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
t S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
S
Ω: Type u_1
s, t: Set Ω
ht✝: t S
ht: t = univ

h_compl.inr
t S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S

h_Union
i, f i S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: ¬∃ n, f n = univ
i, f i S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: ¬∃ n, f n = univ
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

(x : Ω), i, x f i
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ
x: Ω

i, x f i
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
x: Ω
n:
h: f n = univ

intro
i, x f i
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
x: Ω
n:
h: f n = univ

h
x f n
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
x: Ω
n:
h: f n = univ

h
x f n
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
x: Ω
n:
h: f n = univ

h
x univ
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
x: Ω
n:
h: f n = univ

h
x univ
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ
this: i, f i = univ

pos
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ
this: i, f i = univ

pos
univ S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ
this: i, f i = univ

pos
univ S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: n, f n = univ

pos
i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

neg
i, f i S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

neg
i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

neg
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

i, f i =

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

i, f i =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ
n:

f n =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

i, f i =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
n:
h: f n univ

f n =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

i, f i =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
n:
h: f n univ
x✝: f n = f n = univ

f n =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
n:
h: f n univ
h✝: f n = univ

inr
f n =

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
n:
h: f n univ
x✝: f n = f n = univ

f n =
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
n:
h: f n univ
h✝: f n =

inl
f n =

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ

neg
i, f i S

Goals accomplished! 🐙
Ω: Type u_1
s: Set Ω

MeasurableSet s s S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ
this: i, f i =

neg
i, f i S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ
this: i, f i =

neg
S
Ω: Type u_1
s: Set Ω
f: Set Ω
hf: (n : ℕ), f n S
h: (n : ℕ), f n univ
this: i, f i =

neg
S
Ω: Type u_1
s: Set Ω

MeasurableSet s s S

Goals accomplished! 🐙
variable [IsProbabilityMeasure μ] /-- The trivial σ-algebra and any other σ-algebra are independent. -/ lemma m_trivial_indep (m₁ : MeasurableSpace Ω) : Indep m₁ m_trivial μ :=

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω

Indep m₁ m_trivial μ
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω

(t1 t2 : Set Ω), MeasurableSet t1 MeasurableSet t2 μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω

Indep m₁ m_trivial μ
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2

μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω

Indep m₁ m_trivial μ
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
x✝: t2 = t2 = univ

μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

inl
μ (t1 t2) = μ t1 * μ t2

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

t1 t2 =
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

t1 =
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

t1 =
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

inl
μ (t1 t2) = μ t1 * μ t2

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ = μ t1 * μ
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
0 = μ t1 * 0
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 =
this: t1 t2 =

inl
0 = 0

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
x✝: t2 = t2 = univ

μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

inr
μ (t1 t2) = μ t1 * μ t2

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

t1 t2 = t1
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

t1 univ = t1
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

t1 univ = t1
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

inr
μ (t1 t2) = μ t1 * μ t2

Goals accomplished! 🐙
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ t1 = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ t1 = μ t1 * μ univ
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ t1 = μ t1 * 1
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ (t1 t2) = μ t1 * μ t2
Ω: Type u_1
: MeasurableSpace Ω
μ: Measure Ω
inst✝: IsProbabilityMeasure μ
m₁: MeasurableSpace Ω
t1, t2: Set Ω
a✝: MeasurableSet t1
ht2: MeasurableSet t2
h: t2 = univ
this: t1 t2 = t1

inr
μ t1 = μ t1

Goals accomplished! 🐙
/-- The expectation conditioned to the trivial σ-algebra is equal a.e. to the expectation. -/ lemma condition_m_trivial {X : Ω F} (hm₁ : m₁ mΩ) (hf : StronglyMeasurable[m₁] X) [SigmaFinite (μ.trim (m_trivial_le mΩ))] : μ [X | m_trivial] =ᵐ[μ] (fun _ μ[X]) := condexp_indep_eq hm₁ (m_trivial_le mΩ) hf (m_trivial_indep m₁) /-- The law of total expectation. -/ theorem total_expectation_law {X : Ω F} (hX : Integrable X μ) (hm₁ : m₁ mΩ) [SigmaFinite (μ.trim hm₁)] (hm : StronglyMeasurable[m₁] X) : μ[μ[X | m₁]] = μ[X] :=

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0

h_ae
(fun x => (x : Ω), (μ[X|m₁]) x μ) =ᶠ[ae μ] fun x => (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]

h_ae
(fun x => (x : Ω), (μ[X|m₁]) x μ) =ᶠ[ae μ] fun x => (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])

h_ae
(fun x => (x : Ω), (μ[X|m₁]) x μ) =ᶠ[ae μ] fun x => (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X

(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(μ[μ[X|m₁]|m_trivial]) a = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(μ[X|m_trivial]) a = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(x : Ω), (μ[X|m₁]) x μ = (x : Ω), X x μ
Ω: Type u_1
F: Type u_2
inst✝⁴: NormedAddCommGroup F
inst✝³: NormedSpace ℝ F
inst✝²: CompleteSpace F
m₁, mΩ: MeasurableSpace Ω
μ: Measure Ω
inst✝¹: IsProbabilityMeasure μ
X: Ω F
hX: Integrable X μ
hm₁: m₁ mΩ
inst✝: SigmaFinite (μ.trim hm₁)
hm: StronglyMeasurable X
μ_univ_neq_0: μ univ 0
tower: μ[X|m_trivial] =ᶠ[ae μ] μ[μ[X|m₁]|m_trivial]
sMeasurable: StronglyMeasurable (μ[X|m₁])
a: Ω
ha1: (μ[μ[X|m₁]|m_trivial]) a = (x : Ω), (μ[X|m₁]) x μ
ha2: (μ[X|m_trivial]) a = (x : Ω), X x μ
ha3: (μ[X|m_trivial]) a = (μ[μ[X|m₁]|m_trivial]) a

h
(x : Ω), X x μ = (x : Ω), X x μ

Goals accomplished! 🐙
end ExpTotal namespace MeasureTheory variable {Ω F : Type*} [mΩ : MeasurableSpace Ω] [MeasurableSpace F] /-- The σ-algebra generated by a r.v. -/ def gen_sigma (Y : Ω F) := MeasurableSpace.generateFrom {S | (A : Set F), MeasurableSet A Y⁻¹' A = S} /-- The σ-algebra generated by a r.v is less or equal than the encompassing σ-algebra. -/ lemma sigma_generated_le {Y : Ω F} (hY : Measurable Y) : gen_sigma Y mΩ :=

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

gen_sigma Y mΩ
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

h
t {S | A, MeasurableSet A Y ⁻¹' A = S}, MeasurableSet t
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

gen_sigma Y mΩ
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y
t: Set Ω
ht: t {S | A, MeasurableSet A Y ⁻¹' A = S}

h
MeasurableSet t
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

gen_sigma Y mΩ
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y
t: Set Ω
A: Set F
hA: MeasurableSet A
ht: Y ⁻¹' A = t

h.intro.intro
MeasurableSet t
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

gen_sigma Y mΩ
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y
t: Set Ω
A: Set F
hA: MeasurableSet A
ht: Y ⁻¹' A = t

h.intro.intro
MeasurableSet t
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y
t: Set Ω
A: Set F
hA: MeasurableSet A
ht: Y ⁻¹' A = t

h.intro.intro
MeasurableSet (Y ⁻¹' A)
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y
t: Set Ω
A: Set F
hA: MeasurableSet A
ht: Y ⁻¹' A = t

h.intro.intro
MeasurableSet (Y ⁻¹' A)
Ω: Type u_1
F: Type u_2
: MeasurableSpace Ω
inst✝: MeasurableSpace F
Y: Ω F
hY: Measurable Y

gen_sigma Y mΩ

Goals accomplished! 🐙
/-- The condition probability. -/ noncomputable def Measure.condProb (μ : Measure Ω) (A : Set Ω) (Y : Ω F) := μ[A.indicator (fun (_ : Ω) (1 : ℝ)) | gen_sigma Y] end MeasureTheory namespace TotalProba open ENNReal variable {Ω F : Type*} [MeasurableSpace F] {m2 m₁ mΩ : MeasurableSpace Ω} {μ : Measure Ω} {X Y : Ω F} (hY : Measurable Y) /-- The law of total probability using the law of total expectation. -/ theorem total_probability_law [IsProbabilityMeasure μ] {A : Set Ω} (hA : MeasurableSet[gen_sigma Y] A) [SigmaFinite (μ.trim (sigma_generated_le hY))] : (μ A).toReal = μ[μ.condProb A Y] :=

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω

↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖1‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖1‖₊ = 1
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
1 = 1
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
1 = 1
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

pos
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
↑‖0‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
↑‖0‖₊ = 0
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
0 = 0
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
a: Ω
ha: a A

neg
0 = 0
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
rmv_norm: (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a

∫⁻ (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
rmv_norm: (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a

∫⁻ (a : Ω), A.indicator (fun x => 1) a μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
rmv_norm: (a : Ω), ↑‖A.indicator (fun x => 1) a‖₊ = A.indicator (fun x => 1) a

∫⁻ (a : Ω), A.indicator (fun x => 1) a μ <
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
hI: HasFiniteIntegral (A.indicator fun x => 1) μ
hAE: StronglyMeasurable (A.indicator fun x => 1)

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
hI: HasFiniteIntegral (A.indicator fun x => 1) μ
hAE: StronglyMeasurable (A.indicator fun x => 1)

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
hI: HasFiniteIntegral (A.indicator fun x => 1) μ
hAE: StronglyMeasurable (A.indicator fun x => 1)

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
hI: HasFiniteIntegral (A.indicator fun x => 1) μ
hAE: StronglyMeasurable (A.indicator fun x => 1)

AEStronglyMeasurable (A.indicator fun x => 1) μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
hI: HasFiniteIntegral (A.indicator fun x => 1) μ
hAE: StronglyMeasurable (A.indicator fun x => 1)

(x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(a : Ω), A.indicator (fun x => 1) a μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
i✝: Ω

0 i (fun x => 1) i
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(x : Ω) in A, 1 μ = (μ A).toReal

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(∫⁻ (a : Ω) in A, ENNReal.ofReal 1 μ).toReal = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(∫⁻ (a : Ω) in A, 1 μ).toReal = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(x : Ω) in A, 1 μ = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(μ A).toReal = (μ A).toReal
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
ae_pos: 0 ≤ᶠ[ae (μ.restrict A)] fun x => 1

(x : Ω) in A, 1 μ = (μ A).toReal

Goals accomplished! 🐙
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )

(μ A).toReal = (x : Ω), μ.condProb A Y x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
integral_A: (a : Ω), A.indicator (fun x => 1) a μ = (μ A).toReal

(μ A).toReal = (x : Ω), A.indicator (fun x => 1) x μ
Ω: Type u_1
F: Type u_2
inst✝²: MeasurableSpace F
: MeasurableSpace Ω
μ: Measure Ω
Y: Ω F
hY: Measurable Y
inst✝¹: IsProbabilityMeasure μ
A: Set Ω
hA: MeasurableSet A
inst✝: SigmaFinite (μ.trim )
hAmΩ: MeasurableSet A
total_exp: (x : Ω), (μ[A.indicator fun x => 1|gen_sigma Y]) x μ = (x : Ω), A.indicator (fun x => 1) x μ
integral_A: (a : Ω), A.indicator (fun x => 1) a μ = (μ A).toReal

(μ A).toReal = (μ A).toReal

Goals accomplished! 🐙
end TotalProba
import Mathlib.Data.Real.StarOrdered import Mathlib.Order.CompletePartialOrder import Mathlib.Probability.ConditionalExpectation import Mathlib.Probability.Kernel.Disintegration.StandardBorel