Tail σ-algebras on path space and for general processes #
This file provides two canonical viewpoints on tail σ-algebras with explicit bridge lemmas connecting them.
Main definitions #
tailFamily X n: The n-th reverse (future) σ-algebra generated by the tails of XtailProcess X: Tail σ-algebra of a process X : ℕ → Ω → αtailShift α: Tail σ-algebra on path space (ℕ → α) defined via one-sided shifts
Main results #
tailProcess_coords_eq_tailShift: The critical bridge between path-space and process formulationstailProcess_eq_comap_path: Pullback formulation (most convenient in practice)tailProcess_eq_iInf_revFiltration: Connection to reverse filtration formulation
Implementation notes #
This file is designed to be mathlib-ready:
- Only imports mathlib (no project dependencies)
- Comprehensive docstrings
- Conservative use of attributes (@[simp] only on definitional aliases)
Index Arithmetic (isolate Nat arithmetic once) #
Process-Relative Tail #
The n-th reverse (future) σ-algebra generated by the tails of X.
Equations
- Exchangeability.Tail.tailFamily X n = ⨆ (k : ℕ), MeasurableSpace.comap (fun (ω : Ω) => X (n + k) ω) inferInstance
Instances For
Tail σ-algebra of a process X : ℕ → Ω → α.
Equations
Instances For
Path-Space Tail #
Tail σ-algebra on path space (ℕ → α) defined via one-sided shifts.
Equations
- Exchangeability.Tail.tailShift α = ⨅ (n : ℕ), MeasurableSpace.comap (fun (ω : ℕ → α) (k : ℕ) => ω (n + k)) inferInstance
Instances For
Helper Lemmas for comap and Infima #
Preimage is injective on sets when f is surjective.
If f is surjective, then map f (comap f m) = m.
comap distributes over iInf unconditionally (≤ direction only).
The inequality comap f (⨅ i, m i) ≤ ⨅ i, comap f (m i) holds by monotonicity.
The reverse inequality (and hence equality) requires f to be surjective.
See iInf_comap_eq_comap_iInf_of_surjective for the surjective case.
With f surjective and a nonempty index type, comap commutes with ⨅.
Bridge Lemmas (LOAD-BEARING - Phase 1a) #
On path space: the pullback of the product σ-algebra by the n-fold shift equals
the join of the coordinate pullbacks at indices n+k.
Proof strategy: Use that the product σ-algebra on (ℕ → α) is generated by coordinate maps ω ↦ ω k. Apply comap_comp with eval (n+k) = (eval k) ∘ (shift^[n]), then bundle via iSup_congr.
Helper: Each tailFamily X n equals the pullback along the sample-path map of the
n-shifted path-space σ-algebra. This is the key to connecting the two formulations.
Bridge 1 (path ↔ process).
For the coordinate process on path space, tailProcess equals tailShift.
Proof strategy: Apply iInf_congr using comap_shift_eq_iSup_comap_coords.
Bridge 2a (unconditional inequality). The process tail is always at least as coarse as the pullback of the path tail.
Note: Equality holds when the sample-path map is surjective.
See tailProcess_eq_comap_path_of_surjective.
Bridge 2b (surjective equality).
When the sample-path map Φ : Ω → (ℕ → α) given by Φ ω k := X k ω is surjective,
the process tail equals the pullback of the path tail along Φ.
Proof strategy: Use iInf_comap_eq_comap_iInf_of_surjective with Nonempty ℕ.
Bridge 3 (to ViaMartingale's revFiltration).
If revFiltration X m is defined as the σ-algebra generated by all X (m+k),
then the tail equals ⨅ m, revFiltration X m.
Proof strategy: Rewrite each slice using hrev, then unfold tailProcess.
General Properties #
Tail σ-algebra is sub-σ-algebra of ambient space when all X_k are measurable.
NOTE: For probability/finite measures, trimming to the tail σ-algebra preserves sigma-finiteness. This is automatic via type class inference in mathlib.