Actual Gibbs enhanced-state one-step KL recurrence
AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.EnhancedKLOneStep.one_step_kl_error · theorem · Teaching coverage
Statement
muV is a probability measure. There exist Markov kernels T,H:S->E and P:S->S, chosen before every remaining-output kernel R, such that for every state s, T_s=muV.tilted(x->-b/2*norm(x-u)^2), H_s=G(T_s,sqrt(v_s)), and P_s=dirac_s when threshold<=b, otherwise P_s is the pushforward of M_s product standardGaussian by U(s,·). Put Q_s=G(M_s,sqrt(tau_s/(beta+b))) and e(s)=0 when threshold<=b, otherwise KL(Q_s||H_s). Then e is measurable. For every actual Markov kernel R:S->E, the function s->KL(R_s||T_s) is measurable and, for every s, KL((R composed with P)_s||T_s)<=e(s)+the nonnegative integral of KL(R_t||T_t) under P_s.
All objects and hypotheses
- E is a finite-dimensional real inner-product Borel space with positive dimension d. V:E->R is C2 and its genuine Hessian satisfies alpha*norm(w)^2<=D2V(x)[w,w]<=beta*norm(w)^2 for every x,w. The nonnegative parameters satisfy0<alpha<=beta.
- The full state is S=NNReal x E x E x Nat x (Nat->E), written s=(b,u,xref,k,history). eta,tau:S->R are measurable and strictly positive at every state. M:S->E is an actual Markov kernel, and threshold is any nonnegative real. M,eta,tau may depend on all coordinates. No source schedule,reference admissibility,history origin,approximation or moment premise is imposed.
- Set v_s=(eta_s+tau_s)/(beta+b), bp_s=b+toNNReal(v_s^(-1)), obs(s,(x,z))=x+sqrt(tau_s/(beta+b))*z and center(s,(x,z))=bp_s^(-1)*(b*u+v_s^(-1)*obs). For p=(s,(x,z)), define F_p(w)=V(w)+bp_s/2*norm(w-center(p))^2 and D_p(w)=w-(beta+bp_s)^(-1)*grad F_p(w). N_p is the least n with norm(grad F_p(D_p^n(x)))^2<=(alpha+bp_s)*d, or0 if none exists. U(p)=(bp_s,center(p),D_p^N_p(x),k+1,prepend(obs(p),history)). The actual reference is initialized at the pre-noise x.
- Define the actual Gibbs base muV=volume.tilted(-V), using canonical volume. Gaussian smoothing G(mu,sigma) is the law of X+sigma*Z under mu product standardGaussian. All KL values and all displayed integrals are extended nonnegative reals, including infinity. R composed with P first draws the retained state from P and then the output from R.
Mathematical proof
1. Construct the real Gibbs target
GibbsGradientMoment proves that muV=volume.tilted(-V) is a probability under the actual Hessian assumptions. Apply the generic measurable-state StateDependentRGO construction with b(s),v(s),u(s). This produces Markov T,H and a retained-input posterior B. The public targets remain nested tilts of this actual Gibbs base; no unrelated probability base or unproved normalizer is supplied.
Corresponding Lean step
actual_gibbs_posterior: hμ,T,H,B,hTf,hHf
2. Derive the ideal posterior recovery
Project B to its second output coordinate to obtain K. Measurable pushforward composition yields the exact posterior precision b+1/v and center (b+1/v)^(-1)(bu+y/v). Instantiate the existing joint recovery with a Dirac input state and evaluate measurable second-coordinate events. The resulting pointwise recovery is H_s K_s=T_s. It is a theorem in the proof,not an input to the public statement.
Corresponding Lean step
actual_gibbs_posterior: K,hKf,he,hei,hm
3. Keep the actual reference and distinguish the two noises
Positivity gives v>0 and bp=b+1/v without truncation. ObservationConditionalKernel supplies the genuine pre-noise initialized first-hit update and its actual absorbed P. Its joint J has observation marginal Q=G(M,sqrt(tau/(beta+b))). Ideal H instead uses sqrt(v)=sqrt((eta+tau)/(beta+b)). ReferenceCarryingKernel supplies the actual joint update measurability used in the projection calculation.
Corresponding Lean step
firstIndex; one_step_kl_error: hβ,hv,hvm,hbp,J,hQ,href,hu,ho,hJs',hPs'
4. Prove KL measurability including singular fibers
Express fiber KL by the nonnegative klFun integral of the measurable kernel Radon-Nikodym derivative on the measurable absolute-continuity set,and infinity outside it. Kernel integral measurability proves the fiber KL function measurable. A measurable branch on b>=threshold gives e; the same argument works for every remaining-output R against T.
Corresponding Lean step
measurable_fiber_kl: hf,heq; one_step_kl_error: heq,he,hmR
5. Establish the all-ENNReal conditional chain calculation
For two kernels with the same probability base,the joint KL equals the integral of conditional KL. In the AC case,construct the joint density from the kernel derivative and use its almost-everywhere RN identity. In the non-AC case,a finite conditional integral would imply AE fiber AC and then joint AC,a contradiction. Projecting the joint laws and using the KL compProd chain identity gives the composed-output bound without a finite-KL premise.
Corresponding Lean step
conditional_kl_integral: hac,hfiber,hwd,hrn,hfinite; composed_kl_bound
6. Average over the actual conditional reference
Let C=J.condKernel. Its precision/center support implies T_t=K(s,y) for actual-Q-almost every y and C(s,y)-almost every t. Apply the preceding chain bound with equal bases C(s,y) and a constant target kernel. The base KL is zero and the constant kernel integrates to K(s,y),giving the mixture bound. This does not make the reference a deterministic function of y,and no C-support claim under H is needed.
Corresponding Lean step
mixture_kl_bound: K,hc,hconst; one_step_kl_error: halign; conditional_step: hm
7. Chain observation error and fold into actual execution
On the active branch,projecting the same joint update proves P_s=J.snd_s. Disintegration therefore rewrites every nonnegative P_s integral as the actualQ/conditionalC iterated integral. Define the remaining observation kernel by composing R with C. Chain it against the ideal posterior K using Q versus H; ideal recovery identifies the comparator T_s. The mixture bound and nonnegative integration fold the conditional residual into the actual P_s integral.
Corresponding Lean step
conditional_step: C,LR,KR,hdecomp,hout,hc,hm; one_step_kl_error: hPJ,hc
8. Handle absorption without erasing terminal error
When b>=threshold,P_s is Dirac and e(s)=0. Both composed output and residual integral reduce to the same KL(R_s||T_s),so the inequality is reflexive. Combining this with the active calculation proves the statement for every state and every actual Markov R. No observation-error bound,finite-depth sum or terminal accuracy is inferred from the identity.
Corresponding Lean step
one_step_kl_error: hs,Measure.dirac_bind,lintegral_dirac'
Lean statement · one_step_kl_error
Actual Gibbs target,ideal observation and absorbed retained-state transition with measurable all-ENNReal one-step KL error.
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 one_step_kl_error {V : E → ℝ} {α β : ℝ≥0}
(hα : 0 < α) (hαβ : α ≤ β) (hV : ContDiff ℝ 2 V)
(hHess : ∀ x w : E, (α:ℝ)*‖w‖^2 ≤ fderiv ℝ (fderiv ℝ V) x w w ∧
fderiv ℝ (fderiv ℝ V) x w w ≤ (β:ℝ)*‖w‖^2)
(hd : 0 < (Module.finrank ℝ E : ℝ))
(η τ : RefState E → ℝ) (hη : Measurable η) (hτ : Measurable τ)
(hη0 : ∀ s, 0 < η s) (hτ0 : ∀ s, 0 < τ s)
(M : Kernel (RefState E) E) [IsMarkovKernel M] (threshold : ℝ≥0) :
let d : ℝ := Module.finrank ℝ E
let v := fun s : RefState E => (η s+τ s)/((β:ℝ)+s.1)
let bp := fun s : RefState E => s.1+Real.toNNReal (v s)⁻¹
let obs := fun p : RefState E × (E × E) => p.2.1+Real.sqrt (τ p.1/((β:ℝ)+p.1.1)) • p.2.2
let center := fun p : RefState E × (E × E) => (bp p.1:ℝ)⁻¹ •
((p.1.1:ℝ) • p.1.2.1+(v p.1)⁻¹ • obs p)
let F := fun p x => V x+(bp p.1:ℝ)/2*‖x-center p‖^2
let T := fun p x => x-((β:ℝ)+bp p.1)⁻¹ • gradient (F p) x
let q := fun n p => ‖gradient (F p) ((T p)^[n] p.2.1)‖^2
let N := firstIndex q (fun p => ((α:ℝ)+bp p.1)*d)
let out := fun p => (T p)^[N p] p.2.1
let update := fun p : RefState E × (E × E) =>
(bp p.1,center p,out p,p.1.2.2.2.1+1,fun n => Nat.casesOn n (obs p) p.1.2.2.2.2)
let μ := (volume : Measure E).tilted (fun x => -V x)
IsProbabilityMeasure μ ∧
∃ (T H : Kernel (RefState E) E) (P : Kernel (RefState E) (RefState E)),
∃ hT : IsMarkovKernel T, ∃ hH : IsMarkovKernel H, ∃ hP : IsMarkovKernel P,
letI := hT
letI := hH
letI := hP
(∀ s, T s=μ.tilted (fun x => -((s.1:ℝ)/2)*‖x-s.2.1‖^2)) ∧
(∀ s, H s=AutoSamplingTheory.TechnicalLemmas.Measure.GaussianSmoothing.gaussianSmoothing
(T s) (Real.sqrt (v s))) ∧
(∀ s, P s=if threshold ≤ s.1 then Measure.dirac s else
((M s).prod (stdGaussian E)).map (fun z => update (s,z))) ∧
let Q := fun s => AutoSamplingTheory.TechnicalLemmas.Measure.GaussianSmoothing.gaussianSmoothing
(M s) (Real.sqrt (τ s/((β:ℝ)+s.1)))
let e := fun s => if threshold ≤ s.1 then 0 else klDiv (Q s) (H s)
Measurable e ∧ ∀ (R : Kernel (RefState E) E) [IsMarkovKernel R],
Measurable (fun s => klDiv (R s) (T s)) ∧ ∀ s,
klDiv ((R ∘ₖ P) s) (T s) ≤ e s+∫⁻ t, klDiv (R t) (T t) ∂P sLean proof · one_step_kl_error
Real Gibbs posterior recovery,actual conditional-reference alignment,KL mixture/chain and active/stopped execution branches.
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 one_step_kl_error {V : E → ℝ} {α β : ℝ≥0}
(hα : 0 < α) (hαβ : α ≤ β) (hV : ContDiff ℝ 2 V)
(hHess : ∀ x w : E, (α:ℝ)*‖w‖^2 ≤ fderiv ℝ (fderiv ℝ V) x w w ∧
fderiv ℝ (fderiv ℝ V) x w w ≤ (β:ℝ)*‖w‖^2)
(hd : 0 < (Module.finrank ℝ E : ℝ))
(η τ : RefState E → ℝ) (hη : Measurable η) (hτ : Measurable τ)
(hη0 : ∀ s, 0 < η s) (hτ0 : ∀ s, 0 < τ s)
(M : Kernel (RefState E) E) [IsMarkovKernel M] (threshold : ℝ≥0) :
let d : ℝ := Module.finrank ℝ E
let v := fun s : RefState E => (η s+τ s)/((β:ℝ)+s.1)
let bp := fun s : RefState E => s.1+Real.toNNReal (v s)⁻¹
let obs := fun p : RefState E × (E × E) => p.2.1+Real.sqrt (τ p.1/((β:ℝ)+p.1.1)) • p.2.2
let center := fun p : RefState E × (E × E) => (bp p.1:ℝ)⁻¹ •
((p.1.1:ℝ) • p.1.2.1+(v p.1)⁻¹ • obs p)
let F := fun p x => V x+(bp p.1:ℝ)/2*‖x-center p‖^2
let T := fun p x => x-((β:ℝ)+bp p.1)⁻¹ • gradient (F p) x
let q := fun n p => ‖gradient (F p) ((T p)^[n] p.2.1)‖^2
let N := firstIndex q (fun p => ((α:ℝ)+bp p.1)*d)
let out := fun p => (T p)^[N p] p.2.1
let update := fun p : RefState E × (E × E) =>
(bp p.1,center p,out p,p.1.2.2.2.1+1,fun n => Nat.casesOn n (obs p) p.1.2.2.2.2)
let μ := (volume : Measure E).tilted (fun x => -V x)
IsProbabilityMeasure μ ∧
∃ (T H : Kernel (RefState E) E) (P : Kernel (RefState E) (RefState E)),
∃ hT : IsMarkovKernel T, ∃ hH : IsMarkovKernel H, ∃ hP : IsMarkovKernel P,
letI := hT
letI := hH
letI := hP
(∀ s, T s=μ.tilted (fun x => -((s.1:ℝ)/2)*‖x-s.2.1‖^2)) ∧
(∀ s, H s=AutoSamplingTheory.TechnicalLemmas.Measure.GaussianSmoothing.gaussianSmoothing
(T s) (Real.sqrt (v s))) ∧
(∀ s, P s=if threshold ≤ s.1 then Measure.dirac s else
((M s).prod (stdGaussian E)).map (fun z => update (s,z))) ∧
let Q := fun s => AutoSamplingTheory.TechnicalLemmas.Measure.GaussianSmoothing.gaussianSmoothing
(M s) (Real.sqrt (τ s/((β:ℝ)+s.1)))
let e := fun s => if threshold ≤ s.1 then 0 else klDiv (Q s) (H s)
Measurable e ∧ ∀ (R : Kernel (RefState E) E) [IsMarkovKernel R],
Measurable (fun s => klDiv (R s) (T s)) ∧ ∀ s,
klDiv ((R ∘ₖ P) s) (T s) ≤ e s+∫⁻ t, klDiv (R t) (T t) ∂P s := by
classical
intro d v bp obs center F Tstep q N out update μ
have hβ : 0 < (β:ℝ) := lt_of_lt_of_le (show 0 < (α:ℝ) from hα)
(show (α:ℝ) ≤ β from hαβ)
have hv (s : RefState E) : 0 < v s :=
div_pos (add_pos (hη0 s) (hτ0 s)) (add_pos_of_pos_of_nonneg hβ s.1.coe_nonneg)
have hvm : Measurable v := by dsimp [v]; fun_prop
have hbp (s : RefState E) : (bp s:ℝ)=(s.1:ℝ)+(v s)⁻¹ := by
simp only [bp,NNReal.coe_add,Real.coe_toNNReal _ (inv_pos.mpr (hv s)).le]
obtain ⟨hμ,T,H,K,hT,hH,hK,hTf,hHf,hKf,hrec⟩ :=
actual_gibbs_posterior hα hαβ hV hHess (fun s : RefState E => (s.1:ℝ)) v
(fun s => s.2.1) (by fun_prop) hvm (by fun_prop) (fun s => s.1.coe_nonneg) hv
let := hμ
let := hT
let := hH
let := hK
obtain ⟨J,hJ,hJs,hQ,hdis,hsupp,hfact,P,hP,hPs,hactive⟩ :=
AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.ObservationConditionalKernel.observation_conditional_kernel
hα hαβ hV hHess hd η τ hη hτ hη0 hτ0 M threshold
let := hJ
let := hP
have href := AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.ReferenceCarryingKernel.reference_carrying_kernel
hα hαβ hV hHess hd η τ hη hτ hη0 hτ0 M threshold
have hu : Measurable update := href.2.2.2.1
have ho : Measurable obs := by dsimp [obs]; fun_prop
have hJs' (s : RefState E) : J s=((M s).prod (stdGaussian E)).map
(fun z => (obs (s,z),update (s,z))) := hJs s
have hPs' (s : RefState E) : P s=if threshold ≤ s.1 then Measure.dirac s else
((M s).prod (stdGaussian E)).map (fun z => update (s,z)) := hPs s
have halign (s : RefState E) : ∀ᵐ y ∂J.fst s, ∀ᵐ t ∂J.condKernel (s,y), T t=K (s,y) := by
filter_upwards [hsupp s] with y hy
filter_upwards [hy] with t ht
rw [hTf,hKf,ht.1,ht.2,hbp]
refine ⟨hμ,T,H,P,hT,hH,hP,hTf,hHf,hPs',?_⟩
intro Q e
have heq : e=(fun s => if threshold ≤ s.1 then 0 else klDiv (J.fst s) (H s)) := by
funext s
simp only [e,Q,hQ]
have he : Measurable e := by
rw [heq]
exact Measurable.ite (measurableSet_le measurable_const (by fun_prop))
measurable_const (measurable_fiber_kl J.fst H)
refine ⟨he,fun R hR => ?_⟩
let := hR
have hmR := measurable_fiber_kl R T
refine ⟨hmR,fun s => ?_⟩
by_cases hs : threshold ≤ s.1
· simp only [e,Kernel.comp_apply,hPs',if_pos hs,
Measure.dirac_bind R.measurable,lintegral_dirac' s hmR,zero_add,le_refl]
· have hPJ : P s=J.snd s := by
have hf : Measurable (fun z : E × E => (obs (s,z),update (s,z))) :=
(ho.prodMk hu).comp (measurable_const.prodMk measurable_id)
rw [hPs',if_neg hs,Kernel.snd_apply,hJs',Measure.map_map measurable_snd hf]
rfl
have hc := conditional_step J P T H K R s hPJ (hrec s) (halign s)
simpa only [e,Q,if_neg hs,hQ] using hc
end AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.EnhancedKLOneStepScope and omitted-condition boundaries
- Actual enhanced-state one-step KL recurrence for the Section6.3 conditional output argument, not the numerical(6.5) observation budget or full Theorem6.5. C2 genuine Hessian bounds agree with source(1.1); positive finite dimension and0<alpha<=beta are explicit. Arbitrary measurable positive steps,state,threshold and actual M,R provide no source schedule,admissibility,accuracy or moments; e may be infinite. T is the nested actual volume-Gibbs tilt, without an extra combined density/normalizer formula. Posterior recovery,conditional target alignment and active projection are proved internally,not public premises. Internal J,C,K and standalone recovery are not returned conjuncts. Conditional support is used only under actualQ,not transferred to idealH. The stopped branch retains remaining-output KL. Numerical stage precision,finite-depth accumulation,terminal accuracy,actual M construction and all query costs remain separate; neither paper is complete.
Source and reuse
ASTIS parents called
AutoSamplingTheory.TechnicalLemmas.Analysis.GibbsGradientMoment.gibbs_gradient_momentAutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StateDependentRGO.state_dependent_recoveryAutoSamplingTheory.ExampleCases.SmoothedPicardHMC.ObservationConditionalKernel.observation_conditional_kernelAutoSamplingTheory.ExampleCases.SmoothedPicardHMC.ReferenceCarryingKernel.reference_carrying_kernel
Mathlib API called (external library)
- InformationTheory.klDiv_compProd_eq_add
- InformationTheory.klDiv_map_le
- ProbabilityTheory.Kernel.rnDeriv_eq_rnDeriv_measure
- ProbabilityTheory.Kernel.lintegral_compProd
- MeasureTheory.Measure.dirac_compProd_apply
- MeasureTheory.lintegral_map
Mathematical sources
- SPHMC Section6.3 conditional output after(6.5) — Actual enhanced-state one-step KL recurrence for the Section6.3 conditional output argument, not the numerical(6.5) observation budget or full Theorem6.5. C2 genuine Hessian bounds agree with source(1.1); positive finite dimension and0<alpha<=beta are explicit. Arbitrary measurable positive steps,state,threshold and actual M,R provide no source schedule,admissibility,accuracy or moments; e may be infinite. T is the nested actual volume-Gibbs tilt, without an extra combined density/normalizer formula. Posterior recovery,conditional target alignment and active projection are proved internally,not public premises. Internal J,C,K and standalone recovery are not returned conjuncts. Conditional support is used only under actualQ,not transferred to idealH. The stopped branch retains remaining-output KL. Numerical stage precision,finite-depth accumulation,terminal accuracy,actual M construction and all query costs remain separate; neither paper is complete.
ASTIS prose is not a quotation or a source-equivalence certificate. Definitions and aliases are explained as constructions, not counted as new mathematical proofs.