InformationTheory.Shannon.BackwardMartingale
Backward martingale convergence theorem #
This file develops the backward (reverse) martingale convergence theorem:
if f : ℕᵒᵈ → Ω → ℝ is a martingale with respect to an antitone filtration
ℋ : Filtration ℕᵒᵈ m₀ (i.e. ℋ decreases as the ℕ-index grows), and
f (toDual 0) is integrable, then f (toDual n) converges almost everywhere
as n → ∞ to a ⨅ n, ℋ (toDual n)-measurable limit.
Structure #
Martingale (ι := ℕᵒᵈ)API works out of the box because Mathlib'sMartingaleisPreorder ι-generic (Probability/Martingale/Basic.lean:53). We expose two convenience renames (backwardMartingale_condExp_ae_eqandBackwardMartingale.integrable) tailored to the ℕᵒᵈ shape.- Backward upcrossing finiteness
(
BackwardMartingale.upcrossings_ae_lt_top), including the path-reversal combinatorial lemmaupcrossingsBefore_le_revPath_succ(see Path-reversal section below). - L¹ contraction
eLpNorm (f n) 1 μ ≤ eLpNorm (f (toDual 0)) 1 μ: backward martingale meansf n = 𝔼[f (toDual 0) | ℋ n](sincen ≤ toDual 0inℕᵒᵈ), theneLpNorm_one_condExp_le_eLpNorm. - Main theorem
BackwardMartingale.ae_tendsto, chaining off the upcrossing finiteness, the L¹ bound, andtendsto_of_uncrossing_lt_top, with the tail-σ-algebra measurability handled viaFilter.limsup_nat_addtail invariance over⨅ n, ℋ (toDual n).
Proxy machinery #
The upcrossing finiteness and main theorem proofs hinge on lifting a finite-window forward proxy to the global backward sequence. We introduce the proxy infrastructure here:
reverseProxy N f k ω := f (toDual (N - k)) ω— a forward sequence indexed byk : ℕwhose values along[0, N]are the reverse off (toDual ·)on[0, N].reverseFiltration N ℋ k := ℋ (toDual (N - k))— the matching forwardFiltration ℕ m₀. Sincek ↦ N - kis antitone inℕandℋis monotone inℕᵒᵈ, the composition is monotone inℕ.reverseProxy_isMartingale— Mathlib forwardMartingaleforreverseProxy/reverseFiltration, derived from the ℕᵒᵈ martingale equation.
Path-reversal upcrossing inequality (private helper) #
The path-reversal inequality upcrossingsBefore_le_revPath_succ: for any path
g : ℕ → Ω → ℝ and any a < b ∈ ℝ, N : ℕ, ω : Ω,
upcrossingsBefore a b g N ω ≤ upcrossingsBefore a b (revPath g N) N ω + 1,
where revPath g N k ω := g (N - k) ω.
Mathematically: each upcrossing of g corresponds to a "downcrossing" of the
reversed path; downcrossings exceed upcrossings by at most 1 (interleaving).
The formal proof avoids defining a separate downcrossingsBefore; instead it
goes via a witness-chain characterization (upperCrossingTime_le_of_witness),
extracts the n Mathlib upcrossing witnesses for g, reverses indices to
obtain n - 1 upcrossing witnesses for revPath g N, and translates back via
le_csSup. The boundary case τ_0 ≥ 1 is handled by upperCrossingTime_one_pos.
Main definitions / results #
BackwardMartingale.integrable—Integrable (f n) μfor everyn : ℕᵒᵈ.backwardMartingale_eq_condExp—f n =ᵐ[μ] 𝔼[f (toDual 0) | ℋ n].BackwardMartingale.eLpNorm_one_le— L¹ bound.reverseProxy,reverseFiltration,reverseProxy_isMartingale— forward-proxy machinery for the finite-window forward Doob argument.BackwardMartingale.upcrossings_ae_lt_top— backward upcrossing finiteness.BackwardMartingale.ae_tendsto— the convergence theorem.
Martingale (ι := ℕᵒᵈ) convenience wrappers #
InformationTheory.Shannon.BackwardMartingale.integrable
sourceFor a backward martingale f indexed by ℕᵒᵈ, every level is integrable.
Used by
InformationTheory.Shannon.backwardMartingale_eq_condExp
sourceBackward martingale defining equation in ℕᵒᵈ form:
f n =ᵐ[μ] 𝔼[f (toDual 0) | ℋ n] since in ℕᵒᵈ we have n ≤ toDual 0.
Used by
Automatic L¹ boundedness #
InformationTheory.Shannon.BackwardMartingale.eLpNorm_one_le
sourceL¹ contraction for backward martingales: ‖f n‖₁ ≤ ‖f (toDual 0)‖₁.
Proof: f n = 𝔼[f (toDual 0) | ℋ n] a.e., then apply
eLpNorm_one_condExp_le_eLpNorm.
Used by
Forward proxy for finite-window Doob arguments #
Given a backward martingale f : ℕᵒᵈ → Ω → ℝ w.r.t. ℋ : Filtration ℕᵒᵈ m₀
and a horizon N : ℕ, the reverse proxy is the forward ℕ-indexed sequence
reverseProxy N f k ω := f (toDual (N - k)) ω
with matching filtration reverseFiltration N ℋ k := ℋ (toDual (N - k)).
Past k = N both stabilise (since N - k = 0 in ℕ), so the proxy is a
genuine Filtration ℕ m₀ and a genuine Martingale (ι := ℕ). This lets us
plug the proxy directly into Submartingale.mul_integral_upcrossingsBefore_le_integral_pos_part
and other forward-time Doob estimates.
InformationTheory.Shannon.reverseProxy
sourceThe forward ℕ-indexed proxy sequence
reverseProxy N f k ω := f (toDual (N - k)) ω.
Equations
- InformationTheory.Shannon.reverseProxy N f k ω = f (OrderDual.toDual (N - k)) ω
Instances For
Used by
InformationTheory.Shannon.reverseFiltration
sourceThe forward ℕ-indexed proxy filtration
reverseFiltration N ℋ k := ℋ (toDual (N - k)).
Monotone in k because k ↦ N - k is antitone on ℕ and ℋ is monotone
in ℕᵒᵈ; the composition k ↦ ℋ (toDual (N - k)) is therefore monotone.
Equations
- InformationTheory.Shannon.reverseFiltration N ℋ = { seq := fun (k : ℕ) => ↑ℋ (OrderDual.toDual (N - k)), mono' := ⋯, le' := ⋯ }
Instances For
Used by
InformationTheory.Shannon.reverseProxy_apply
sourceUsed by
InformationTheory.Shannon.reverseFiltration_apply
sourceUsed by
InformationTheory.Shannon.reverseProxy_isMartingale
sourceThe reverse proxy is a forward ℕ-indexed Martingale whenever the
underlying ℕᵒᵈ-indexed sequence is.
Used by
Path-reversal upcrossing inequality (private combinatorial helper) #
For any path g : ℕ → Ω' → ℝ and any a < b ∈ ℝ and N : ℕ, the number of
upcrossings of g over [0, N] from a to b is at most one more than the
number of upcrossings of the reversed path revPath g N k = g (N - k).
Mathematically: each upcrossing (σ, τ) of g (with g σ ≤ a, g τ ≥ b,
σ < τ ≤ N) reverses to a pair (N - τ, N - σ) in revPath g N satisfying
(revPath g N)(N - τ) ≥ b, (revPath g N)(N - σ) ≤ a — a downcrossing of
the reversed path. Since downcrossings and upcrossings of any path interleave
(between any two downcrossings there must be an upcrossing and vice versa),
the count of downcrossings exceeds upcrossings by at most 1. Hence the
number of upcrossings of g is at most one more than the number of
upcrossings of revPath g N.
Mathlib does not provide this combinatorial identity. Our proof factors through two private helpers:
upperCrossingTime_le_of_witness— fromkstrictly-alternating upcrossing witnesses(s_i, t_i)strictly inside[0, N), concludeupperCrossingTime a b g N k ω ≤ t_{k-1}. Induction onkusing the recursive form ofupperCrossingTimeandhittingBtwn_le_of_mem.upperCrossingTime_one_pos— when0 < upcrossings, the first upper crossing timeupperCrossingTime _ _ g N 1 ω ≥ 1. (If it were0, theng 0 ω ≥ band alsog 0 ω ≤ a, contradictinga < b.)
Combining them in upcrossingsBefore_revPath_ge: extract the n = k + 1
Mathlib upcrossing witnesses for g, reverse them via t' i := N - upperCrossingTime _ _ g N (k - i) ω, s' i := N - lowerCrossingTime _ _ g N (k - i) ω, apply upperCrossingTime_le_of_witness to revPath g N, then
conclude via le_csSup and upperCrossingTime_lt_bddAbove. Total proof
~250 lines including helpers.
Backward upcrossing finiteness (via the path-reversal lemma) #
InformationTheory.Shannon.BackwardMartingale.upcrossings_ae_lt_top
sourceBackward upcrossings are almost surely finite. For a backward martingale indexed
by ℕᵒᵈ with integrable head, the number of upcrossings of any interval
(a, b) along the sequence n ↦ f (toDual n) is almost surely finite.
This is the reverse-time analogue of
Submartingale.upcrossings_ae_lt_top
(Probability/Martingale/Convergence.lean:184).
The proof combines (i) Doob's upcrossing estimate applied to the forward proxy
reverseProxy N f (giving a uniform-in-N integral bound on the proxy's
upcrossings), and (ii) the revPath upcrossing inequality
(upcrossingsBefore_le_revPath_succ) transporting that bound to the
backward-viewed sequence with O(1) slack. Then monotone convergence on N
yields finiteness of the supremum, hence finiteness of MeasureTheory.upcrossings.
Used by
Backward martingale convergence theorem #
InformationTheory.Shannon.BackwardMartingale.ae_tendsto
sourceThe backward martingale convergence theorem. If f : ℕᵒᵈ → Ω → ℝ
is a martingale with respect to an antitone filtration ℋ : Filtration ℕᵒᵈ m₀
and f (toDual 0) is integrable, then n ↦ f (toDual n) ω converges almost
everywhere as n → ∞ to a ⨅ n, ℋ (toDual n)-measurable limit g.
This is the reverse-time analogue of
MeasureTheory.Submartingale.ae_tendsto_limitProcess
(Probability/Martingale/Convergence.lean:209).
Proof: combines the L¹ bound + a.e. upcrossing finiteness +
tendsto_of_uncrossing_lt_top to obtain pointwise convergence a.e., then
constructs the ⨅ n, ℋ (toDual n)-measurable limit via the standard
aemeasurable_of_tendsto_metrizable_ae' pattern with a tail-σ-algebra
argument. The tail measurability step (which Submartingale.ae_tendsto_limitProcess
handles via measurableSet_exists_tendsto over ⨆ n, ℱ n) is here a direct
mirror over ⨅ n, ℋ (toDual n).