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

Coordinate splitting and reconstruction preserve mass one

AutoSamplingTheory.TechnicalLemmas.Probability.CoordinateHeatBath.heatBath_isMarkovKernel · instance · Teaching coverage

Statement

For every finite target and fixed selected coordinate under the construction's exact hypotheses, the coordinate heat-bath update is a Markov kernel on the full dependent product. At every starting state x its output law has total mass one, regardless of the target mass or whether the retained fiber has positive target mass.

\[\forall x\in S,\qquad K_i(x,S)=1.\]

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. Use the one-block probability law

The pushed-forward target ηi is finite and Xi has the required conditional-existence structures. Thus the existing one-block heat-bath kernel returns a probability law at every split input.

\[H_{\eta_i}(e_i(x),R_i\times X_i)=1.\]
Corresponding Lean step

After unfold heatBath, the implicit Markov instance for HeatBath.heatBathSnd is available.

2. Changing the input does not change the mass property

A comap simply substitutes e(x) for the input of the same kernel. It cannot change whether each output measure has mass one.

\[\operatorname{comap}_{e_i}H_{\eta_i}(x,R_i\times X_i)=H_{\eta_i}(e_i(x),R_i\times X_i)=1.\]
Corresponding Lean step

ProbabilityTheory.Kernel.IsMarkovKernel.comap is inferred for the comapped kernel.

3. A measurable pushforward of a probability measure is a probability measure

The inverse equivalence is measurable. The inverse image of the entire original state space is the entire split state space, so mapping the output through e⁻¹ preserves total mass one.

\[K_i(x,S)=H_{\eta_i}(e_i(x),(e_i^{-1})^{-1}(S))=H_{\eta_i}(e_i(x),R_i\times X_i)=1.\]
Corresponding Lean step

exact Kernel.IsMarkovKernel.map _ e.symm.measurable, written with the explicit equivalence expression in the original source.

Lean statement · heatBath_isMarkovKernel

Rewriting a state in different coordinates and then translating the result back does not lose probability mass. A whole probability distribution before the change of coordinates is still a whole probability distribution afterward.

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.

instance heatBath_isMarkovKernel (μ : Measure (∀ j, X j)) [IsFiniteMeasure μ]
    (i : Fin (n + 1)) [StandardBorelSpace (X i)] [Nonempty (X i)] :
    IsMarkovKernel (heatBath X μ i)

Exact module and namespace context

Lean proof / instance · heatBath_isMarkovKernel

`Kernel.IsMarkovKernel.map` is the reused theorem, applied explicitly to the already-Markov comapped kernel. The underscore lets Lean infer which kernel is being mapped from the goal. `...symm.measurable` supplies measurability of the inverse coordinate change. There is no fallback to a nonmeasurable map. The instance proves only normalization. It does not identify which states the selected conditional measure favors on a null fiber.

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.

instance heatBath_isMarkovKernel (μ : Measure (∀ j, X j)) [IsFiniteMeasure μ]
    (i : Fin (n + 1)) [StandardBorelSpace (X i)] [Nonempty (X i)] :
    IsMarkovKernel (heatBath X μ i) := by
  unfold heatBath
  exact Kernel.IsMarkovKernel.map _
    ((MeasurableEquiv.piFinSuccAbove X i).trans MeasurableEquiv.prodComm).symm.measurable

/-- Exact invariance by literal reuse of one-block heat-bath and measurable
kernel transport. No convergence from other initial laws is inferred. -/

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)

  • ProbabilityTheory.Kernel.IsMarkovKernel.map
  • ProbabilityTheory.Kernel.IsMarkovKernel.comap
  • MeasurableEquiv.piFinSuccAbove
  • MeasurableEquiv.prodComm

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.