Samplinglib
Lean gate not recorded for this source state main · 0e31a3cda412
ASTIS mathematical exposition

The coordinate update preserves the original finite target

AutoSamplingTheory.TechnicalLemmas.Probability.CoordinateHeatBath.heatBath_invariant · theorem · Teaching coverage

Statement

For every finite measure μ on the dependent coordinate product, a fixed selected coordinate's heat-bath kernel preserves μ, provided only that all coordinates are measurable and the selected coordinate is nonempty Standard Borel. No singleton-measurability, density, positive-support, or probability-normalization assumption is used.

\[K_i\circ_m\mu=\mu,\qquad \text{i.e. }\int_S K_i(x,A)\,\mu(dx)=\mu(A)\quad\text{for every measurable }A\subseteq S.\]

All objects and hypotheses

  • {n : ℕ} — n is an arbitrary natural number, so Fin (n+1) is a nonempty finite index set. Individual coordinate spaces need not be finite.
  • (X : Fin (n + 1) → Type*) — X is a possibly dependent family: coordinate j may have its own type X j. A state x is a function choosing x j : X j for every j.
  • [∀ j, MeasurableSpace (X j)] — Each coordinate is measurable; the full and retained products use their product sigma-algebras.
  • (μ : Measure (∀ j, X j)) [IsFiniteMeasure μ] — μ is any finite measure on the full state space. It may have zero mass or be unnormalized.
  • (i : Fin (n + 1)) — i is a fixed selected coordinate, not a randomly drawn index.
  • [StandardBorelSpace (X i)] [Nonempty (X i)] — Only the selected coordinate must be nonempty and Standard Borel. The other coordinates need neither condition for the construction, Markovness, or invariance.

Notation and interpretation

S

The dependent full state space, written ∀ j, X j in Lean.

\[S=\prod_{j\in\operatorname{Fin}(n+1)}X_j\]
R_i

The retained-coordinate product. i.succAbove lists every original index except i; k is its own Fin n index.

\[R_i=\prod_{k\in\operatorname{Fin}(n)}X_{i.\operatorname{succAbove}(k)}\]
r_i

The tuple of all unselected coordinates; this is explanatory notation, not a newly introduced Lean declaration.

\[r_i(x)(k)=x(i.\operatorname{succAbove}(k))\]
e_i

MeasurableEquiv.piFinSuccAbove X i first places Xi before Ri; composing with prodComm puts retained coordinates first. e_i and its inverse are measurable.

\[e_i:S\simeq_{\mathrm{meas}}R_i\times X_i,\qquad e_i(x)=(r_i(x),x_i)\]
η_i,m_i,q_i

Pushed-forward joint target, retained marginal, and selected conditional version.

\[\eta_i=(e_i)_\#\mu,\qquad m_i=(\operatorname{fst})_\#\eta_i,\qquad q_i(r)=\operatorname{condDistrib}(\operatorname{snd}\mid\operatorname{fst};\eta_i)(r)\]
K_i

The existing public CoordinateHeatBath.heatBath X μ i; this evaluated formula uses HeatBath.heatBathSnd_apply.

\[K_i(x)=(e_i^{-1})_\#\bigl(\delta_{r_i(x)}\otimes q_i(r_i(x))\bigr)\]
  • All sets used to test equality of measures are measurable unless explicitly stated otherwise.
  • All measure values, reciprocals and scalar multiplications in the Lean conditional formula are in ℝ≥0∞. Integral displays of kernel probabilities denote nonnegative extended integrals, not Bochner integrals with unstated integrability hypotheses.
  • The notation r_i, F_i, e_i, q_i and K_i in the teaching text is explanatory mathematical shorthand, not new public Lean definitions.
  • Markovness quantifies over every input; a selected conditional version's law characterization is only marginal-a.e. unless a positive-atom/fiber theorem applies.
  • Finite target mass is not probability normalization. Fin (n+1) counts sites, not states. No law is assumed to have a density.

Mathematical proof

1. Move the invariant-law problem to split coordinates

Let e=e_i and η=e#μ. The one-block theorem already proves exact invariance of η under Hη.

\[H_\eta\circ_m\eta=\eta,\qquad\eta=e_\#\mu.\]
Corresponding Lean step

HeatBath.heatBathSnd_invariant (μ.map e).

2. Transport the proven invariant pair back

The existing KernelTransport theorem says that pushing both an invariant measure and the kernel's output through a measurable equivalence, while pulling the kernel input back, preserves invariance. Apply it to e⁻¹ and the invariant pair (Hη,η). This yields exactly the transported coordinate kernel.

\[\bigl((\operatorname{comap}_e H_\eta)\operatorname{.map}(e^{-1})\bigr)\circ_m (e^{-1})_\#\eta=(e^{-1})_\#\eta.\]
Corresponding Lean step

KernelTransport.invariant_map_comap e.symm (HeatBath.heatBathSnd_invariant (μ.map e)).

3. Cancel the inverse pushforward

Since e is a measurable equivalence, pushing μ through e and then back through e⁻¹ gives μ. Simplify the double inverse in the transported input and unfold heatBath to identify the target kernel.

\[(e^{-1})_\#(e_\#\mu)=\mu,\qquad(e^{-1})^{-1}=e,\qquad K_i\circ_m\mu=\mu.\]
Corresponding Lean step

simpa only [heatBath, MeasurableEquiv.symm_symm, MeasurableEquiv.map_symm_map] using the transport result.

Lean statement · heatBath_invariant

We already know the pair update preserves the target when the state is written as (retained coordinates, selected coordinate). Calling the same states by their original coordinate names cannot change that equality of laws.

Braces mark parameters Lean can infer; square brackets request structures such as a measurable space or probability measure. Named hypotheses are mathematical premises, not facts established by this declaration. Section parameters are described in the mathematical hypotheses above; the module link retains their exact source context.

theorem heatBath_invariant (μ : Measure (∀ j, X j)) [IsFiniteMeasure μ]
    (i : Fin (n + 1)) [StandardBorelSpace (X i)] [Nonempty (X i)] :
    (heatBath X μ i).Invariant μ

Exact module and namespace context

Lean proof · heatBath_invariant

`let e := ...` gives a local name to the existing measurable equivalence; it is not a new global definition. `invariant_map_comap e.symm` uses the inverse equivalence because we start from the split-space target and move back to original coordinates. `simpa only [...]` restricts simplification to exactly the listed definitional/equivalence facts, making the adapter visible. The transport theorem itself requires no Markovness or finiteness; those hypotheses enter through the particular heat-bath kernel being transported.

Braces mark parameters Lean can infer; square brackets request structures such as a measurable space or probability measure. Named hypotheses are mathematical premises, not facts established by this declaration. Section parameters are described in the mathematical hypotheses above; the module link retains their exact source context.

theorem heatBath_invariant (μ : Measure (∀ j, X j)) [IsFiniteMeasure μ]
    (i : Fin (n + 1)) [StandardBorelSpace (X i)] [Nonempty (X i)] :
    (heatBath X μ i).Invariant μ := by
  let e := (MeasurableEquiv.piFinSuccAbove X i).trans MeasurableEquiv.prodComm
  simpa only [heatBath, MeasurableEquiv.symm_symm, MeasurableEquiv.map_symm_map] using
    KernelTransport.invariant_map_comap e.symm (HeatBath.heatBathSnd_invariant (μ.map e))

/-- At each input `x`, every coordinate other than the selected one is retained
almost surely. Singleton measurability is needed only at the retained coordinate
`j`: equality of a marginal law with a Dirac measure on a coarse measurable
space would not alone imply literal almost-everywhere equality. -/

Exact module and namespace context

Scope and omitted-condition boundaries

  • These are existing source-neutral measure/kernel interfaces, not newly proved claims in this research packet. Reading source and historical tests is not a fresh Lean build or independent verification.
  • Finite target measure means μ(univ) < ∞, not μ(univ) = 1; zero and finite unnormalized targets are allowed unless a positive-fiber hypothesis rules them out.
  • A selected regular conditional distribution is a probability kernel at every conditioning value. Its conditional-law characterization is determined only almost everywhere under the conditioning marginal; null fibers have no asserted feasible/Gibbs-support property.
  • No reversibility, irreducibility, ergodicity, convergence from a different initial law, mixing rate, random scan, scan-order correctness, executable conditional sampling or cost bound follows from these declarations alone.

Source and reuse

ASTIS parents called

Mathlib API called (external library)

  • MeasurableEquiv.piFinSuccAbove
  • MeasurableEquiv.prodComm
  • MeasurableEquiv.symm_symm
  • MeasurableEquiv.map_symm_map

Mathematical sources

Older frontier cells and the coordinate card say the printed copy-index repair is pending. The later positive-fiber card and source-support audit record separate acceptance of the exact one-index correction as ASTIS-REPAIR-20260908-GlauberCopyIndex. The old PositiveFiberUpdate audit remains possible-source-error for its limited page-5 evidence window. Do not overwrite that history, call the original PDF corrected, call a null-fiber start a counterexample to the positive-support source convention, or infer full source fidelity. This packet reads local evidence only; it performs no new PDF/source certification.

ASTIS prose is not a quotation or a source-equivalence certificate. Definitions and aliases are explained as constructions, not counted as new mathematical proofs.