Documentation

Exchangeability.DeFinetti.MartingaleHelpers

Helper Lemmas for Martingale-based de Finetti Proof #

This file contains technical helper lemmas extracted from ViaMartingale.lean. These are general-purpose utilities for:

All lemmas are complete (no sorries) and have been validated for code quality.

Main sections #

If g is measurable, then comap (g ∘ f) ≤ comap f.

def Exchangeability.DeFinetti.MartingaleHelpers.shiftSeq {β : Type u_1} (d : ) (f : β) :
β

Shift a sequence by dropping the first d entries.

Equations
Instances For
    @[simp]
    theorem Exchangeability.DeFinetti.MartingaleHelpers.shiftSeq_apply {β : Type u_1} {d : } (f : β) (n : ) :
    shiftSeq d f n = f (n + d)
    theorem Exchangeability.DeFinetti.MartingaleHelpers.forall_mem_erase {γ : Type u_2} [DecidableEq γ] {s : Finset γ} {a : γ} {P : γProp} (ha : a s) :
    (∀ xs, P x) P a xs.erase a, P x
    theorem Exchangeability.DeFinetti.MartingaleHelpers.strictMono_fin_cases {n : } {f : Fin n} (hf : StrictMono f) {a : } (ha : ∀ (i : Fin n), a < f i) :
    StrictMono fun (i : Fin (n + 1)) => Fin.cases a (fun (i : Fin n) => f i) i

    If f : Fin n → ℕ is strictly monotone and a < f i for all i, then Fin.cases a f : Fin (n+1) → ℕ is strictly monotone.

    theorem Exchangeability.DeFinetti.MartingaleHelpers.indicator_mul_indicator_eq_indicator_inter {Ω : Type u_1} [MeasurableSpace Ω] (A B : Set Ω) (c d : ) :
    ((A.indicator fun (x : Ω) => c) * B.indicator fun (x : Ω) => d) = (A B).indicator fun (x : Ω) => c * d

    The product of two indicator functions equals the indicator of their intersection.

    theorem Exchangeability.DeFinetti.MartingaleHelpers.indicator_comp_preimage {Ω : Type u_1} {α : Type u_2} [MeasurableSpace Ω] [MeasurableSpace α] (f : Ωα) (B : Set α) (c : ) :
    (B.indicator fun (x : α) => c) f = (f ⁻¹' B).indicator fun (x : Ω) => c

    Indicator function composed with preimage.

    theorem Exchangeability.DeFinetti.MartingaleHelpers.indicator_binary {Ω : Type u_1} [MeasurableSpace Ω] (A : Set Ω) (ω : Ω) :
    A.indicator (fun (x : Ω) => 1) ω = 0 A.indicator (fun (x : Ω) => 1) ω = 1

    Binary indicator takes values in {0, 1}.

    theorem Exchangeability.DeFinetti.MartingaleHelpers.indicator_le_const {Ω : Type u_1} [MeasurableSpace Ω] (A : Set Ω) (c : ) (hc : 0 c) (ω : Ω) :
    A.indicator (fun (x : Ω) => c) ω c

    Indicator is bounded by its constant.

    theorem Exchangeability.DeFinetti.MartingaleHelpers.indicator_nonneg {Ω : Type u_1} [MeasurableSpace Ω] (A : Set Ω) (c : ) (hc : 0 c) (ω : Ω) :
    0 A.indicator (fun (x : Ω) => c) ω

    Indicator is nonnegative when constant is nonnegative.