production module
AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGOKLFisher
Read the mathematical statements and proofs in order
1 named declarations scanned from AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/StandardizedRGOKLFisher.lean.
Declarations
theorem AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGOKLFisher.standardized_rgo_unique_prox_and_kl_le_fisher Partial Not mapped
Read the complete mathematical statement and proof, with Lean below each
No declaration docstring.
theorem standardized_rgo_unique_prox_and_kl_le_fisher
{E S : Type*} [NormedAddCommGroup E] [InnerProductSpace ℝ E]
[CompleteSpace E] [FiniteDimensional ℝ E] [MeasurableSpace E] [BorelSpace E]
[MeasurableSpace S] {V : E → ℝ} {κ : ℝ}
(hκ : 1 ≤ κ) (hV : ContDiff ℝ 2 V)
(hH : ∀ x v : E, κ⁻¹*‖v‖^2 ≤ fderiv ℝ (fderiv ℝ V) x v v ∧
fderiv ℝ (fderiv ℝ V) x v v ≤ ‖v‖^2)
{eta : S → ℝ} {y : S → E} (heta : Measurable eta) (hy : Measurable y)
(hpos : ∀ s, 0 < eta s) :
∃ p : S → E, Measurable p ∧
(∀ s, p s+eta s • gradient V (p s)=y s) ∧
(∀ s z, z+eta s • gradient V z=y s → z=p s) ∧
let rho := fun s u => V (p s+Real.sqrt (eta s) • u)-V (p s)-
Real.sqrt (eta s)*inner ℝ (gradient V (p s)) u
let mu := (volume : Measure E).tilted (fun x => -V x)
let R := fun s => mu.tilted (fun x => -‖x-y s‖^2/(2*eta s))
let r := fun s => (R s).map (fun x => (Real.sqrt (eta s))⁻¹ • (x-p s))
let gamma := stdGaussian E
∀ s, IsProbabilityMeasure (r s) ∧ r s ≪ gamma ∧
_root_.InformationTheory.klDiv (r s) gamma ≠ ⊤ ∧
MemLp (gradient (rho s)) 2 (r s) ∧
(_root_.InformationTheory.klDiv (r s) gamma).toReal ≤
(1/2 : ℝ)*(∫ u, ‖gradient (rho s) u‖^2 ∂r s) := by
obtain ⟨p, hpm, hstat, huniq, hk⟩ :=
StandardizedRGORelativeEntropy.standardized_rgo_unique_prox_and_finite_entropy
hκ hV hH heta hy hpos
obtain ⟨p', hpm', hstat', hd⟩ :=
StandardizedRGOSqrtDensity.standardized_rgo_sqrt_density_domain
hκ hV hH heta hy hpos
have hp : p'=p := funext (fun s => huniq s (p' s) (hstat' s))
rw [hp] at hd
let rho := fun s u => V (p s+Real.sqrt (eta s) • u)-V (p s)-
Real.sqrt (eta s)*inner ℝ (gradient V (p s)) u
let mu := (volume : Measure E).tilted (fun x => -V x)
let R := fun s => mu.tilted (fun x => -‖x-y s‖^2/(2*eta s))
let r := fun s => (R s).map (fun x => (Real.sqrt (eta s))⁻¹ • (x-p s))
let gamma := stdGaussian E
let Z := fun s => ∫ u, Real.exp (-rho s u) ∂gamma
let q := fun s u => Real.exp (-rho s u)/Z s
let f := fun s u => Real.exp (-rho s u/2)/Real.sqrt (Z s)
refine ⟨p, hpm, hstat, huniq, ?_⟩
change ∀ s, IsProbabilityMeasure (r s) ∧ r s ≪ gamma ∧
_root_.InformationTheory.klDiv (r s) gamma ≠ ⊤ ∧
MemLp (gradient (rho s)) 2 (r s) ∧
-- Source excerpt truncated; follow the exact source link.
AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/StandardizedRGOKLFisher.lean:19published source at ed709a7f320dOpen detailed card
Excerpt truncated; the exact source link is authoritative.
Complete Lean source
AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/StandardizedRGOKLFisher.lean — full module with imports and context
import AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGOSqrtDensity
import AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGORelativeEntropy
import AutoSamplingTheory.TechnicalLemmas.FunctionalInequalities.GaussianLogSobolev
/-!
Actual standardized RGO canonical KL/Fisher component of the omitted Gaussian
LSI invocation before SPHMC FIRST4.6. The measurable-family/rank0 scope is an
authored extension; Unit recovers fixed source parameters. All dependent laws
and densities refer to the unique proximal point, proved internally.
Gaussian T2/W2/FIRST4.6 and sampling/error/warmness/cost remain separate.
-/
namespace AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGOKLFisher
open MeasureTheory ProbabilityTheory InnerProductSpace
open scoped RealInnerProductSpace NNReal
noncomputable section
set_option autoImplicit false
set_option backward.isDefEq.respectTransparency false
theorem standardized_rgo_unique_prox_and_kl_le_fisher
{E S : Type*} [NormedAddCommGroup E] [InnerProductSpace ℝ E]
[CompleteSpace E] [FiniteDimensional ℝ E] [MeasurableSpace E] [BorelSpace E]
[MeasurableSpace S] {V : E → ℝ} {κ : ℝ}
(hκ : 1 ≤ κ) (hV : ContDiff ℝ 2 V)
(hH : ∀ x v : E, κ⁻¹*‖v‖^2 ≤ fderiv ℝ (fderiv ℝ V) x v v ∧
fderiv ℝ (fderiv ℝ V) x v v ≤ ‖v‖^2)
{eta : S → ℝ} {y : S → E} (heta : Measurable eta) (hy : Measurable y)
(hpos : ∀ s, 0 < eta s) :
∃ p : S → E, Measurable p ∧
(∀ s, p s+eta s • gradient V (p s)=y s) ∧
(∀ s z, z+eta s • gradient V z=y s → z=p s) ∧
let rho := fun s u => V (p s+Real.sqrt (eta s) • u)-V (p s)-
Real.sqrt (eta s)*inner ℝ (gradient V (p s)) u
let mu := (volume : Measure E).tilted (fun x => -V x)
let R := fun s => mu.tilted (fun x => -‖x-y s‖^2/(2*eta s))
let r := fun s => (R s).map (fun x => (Real.sqrt (eta s))⁻¹ • (x-p s))
let gamma := stdGaussian E
∀ s, IsProbabilityMeasure (r s) ∧ r s ≪ gamma ∧
_root_.InformationTheory.klDiv (r s) gamma ≠ ⊤ ∧
MemLp (gradient (rho s)) 2 (r s) ∧
(_root_.InformationTheory.klDiv (r s) gamma).toReal ≤
(1/2 : ℝ)*(∫ u, ‖gradient (rho s) u‖^2 ∂r s) := by
obtain ⟨p, hpm, hstat, huniq, hk⟩ :=
StandardizedRGORelativeEntropy.standardized_rgo_unique_prox_and_finite_entropy
hκ hV hH heta hy hpos
obtain ⟨p', hpm', hstat', hd⟩ :=
StandardizedRGOSqrtDensity.standardized_rgo_sqrt_density_domain
hκ hV hH heta hy hpos
have hp : p'=p := funext (fun s => huniq s (p' s) (hstat' s))
rw [hp] at hd
let rho := fun s u => V (p s+Real.sqrt (eta s) • u)-V (p s)-
Real.sqrt (eta s)*inner ℝ (gradient V (p s)) u
let mu := (volume : Measure E).tilted (fun x => -V x)
let R := fun s => mu.tilted (fun x => -‖x-y s‖^2/(2*eta s))
let r := fun s => (R s).map (fun x => (Real.sqrt (eta s))⁻¹ • (x-p s))
let gamma := stdGaussian E
let Z := fun s => ∫ u, Real.exp (-rho s u) ∂gamma
let q := fun s u => Real.exp (-rho s u)/Z s
let f := fun s u => Real.exp (-rho s u/2)/Real.sqrt (Z s)
refine ⟨p, hpm, hstat, huniq, ?_⟩
change ∀ s, IsProbabilityMeasure (r s) ∧ r s ≪ gamma ∧
_root_.InformationTheory.klDiv (r s) gamma ≠ ⊤ ∧
MemLp (gradient (rho s)) 2 (r s) ∧
(_root_.InformationTheory.klDiv (r s) gamma).toReal ≤
(1/2 : ℝ)*(∫ u, ‖gradient (rho s) u‖^2 ∂r s)
intro s
obtain ⟨hZpos, hZle, hrtilt, hrden, hprob, hq, hmass, hfC, hf2,
hg2, hrho2, hqint, hgf, hglog, he⟩ := hd s
obtain ⟨hac, hfin, hllr, hlog, hrhoint, hKLq, hKLrho⟩ := hk s
change (∫ u, q s u ∂gamma)=1 at hmass
change (∫ u, ‖gradient (f s) u‖^2 ∂gamma) =
(1/4 : ℝ)*(∫ u, ‖gradient (rho s) u‖^2 ∂r s) at he
change (_root_.InformationTheory.klDiv (r s) gamma).toReal =
(∫ u, q s u*Real.log (q s u) ∂gamma) at hKLq
have hsq : ∀ u, (f s u)^2=q s u := fun u => (hq u).2
have hphi : Integrable (fun u => (f s u)^2*Real.log ((f s u)^2)) gamma := by
simpa only [hsq] using hqint
have hLSI := AutoSamplingTheory.TechnicalLemmas.FunctionalInequalities.GaussianLogSobolev.gaussian_logSobolev_of_contDiff
(f s) hfC hf2 hg2 hphi
change (∫ u, (f s u)^2*Real.log ((f s u)^2) ∂gamma) -
(∫ u, (f s u)^2 ∂gamma)*Real.log (∫ u, (f s u)^2 ∂gamma) ≤
2 * ∫ u, ‖gradient (f s) u‖^2 ∂gamma at hLSI
refine ⟨hprob, hac, hfin, hrho2, ?_⟩
calc
_ = ∫ u, q s u*Real.log (q s u) ∂gamma := hKLq
_ ≤ 2 * ∫ u, ‖gradient (f s) u‖^2 ∂gamma := by
simpa only [hsq, hmass, Real.log_one, mul_zero, sub_zero] using hLSI
_ = (1/2 : ℝ)*(∫ u, ‖gradient (rho s) u‖^2 ∂r s) := by
rw [he]
ring
end
end AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.StandardizedRGOKLFisher