production module
AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.RecursiveCondition
Read the mathematical statements and proofs in order
1 named declarations scanned from AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/RecursiveCondition.lean.
Declarations
theorem AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.RecursiveCondition.contraction_bounds Partial Not mapped
Read the complete mathematical statement and proof, with Lean below each
- The ill-conditioned recursive update lies between half and four fifths of its previous condition number. The denominator is proved positive from the hypotheses, so no totalized-division exceptional case is used.
theorem contraction_bounds {k h : ℝ} (hk : 2 ≤ k) (hh : 0 < h)
(hh_upper : h < 1 / 4) :
k / 2 ≤ k * (k + h + 1) / (2 * k + h) ∧
k * (k + h + 1) / (2 * k + h) ≤ (4 / 5) * k := by
have hk_nonneg : 0 ≤ k := by linarith
have hden : 0 < 2 * k + h := by linarith
constructor
· apply (le_div_iff₀ hden).2
nlinarith [mul_nonneg hk_nonneg hh.le]
· apply (div_le_iff₀ hden).2
have hmargin : 0 ≤ 3 * k - h - 5 := by linarith
nlinarith [mul_nonneg hk_nonneg hmargin]
end AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.RecursiveCondition
AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/RecursiveCondition.lean:23published source at ed709a7f320d
Complete Lean source
AutoSamplingTheory/ExampleCases/SmoothedPicardHMC/RecursiveCondition.lean — full module with imports and context
import Mathlib.Data.Real.Basic
import Mathlib.Tactic.Linarith
/-!
# Recursive RGO condition-number progress
Source: Chen, Chewi, Lu and Zhang, *Smoothed Picard Hamiltonian Monte Carlo*,
arXiv:2609.06906v1, Lemma 6.6(i), equations (6.1)--(6.3).
After substituting `tau = k` and `a * beta_A = h + tau`, the next condition
number is `k * (k + h + 1) / (2 * k + h)`. This file proves the scalar
contraction used to bound the number of ill-conditioned recursion stages.
Identifying this expression with an actual RGO condition number remains a
separate source-facing adapter; neither an RGO nor a sampling law is defined
here. We retain the source's strict smoothing-parameter range.
-/
namespace AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.RecursiveCondition
/-- The ill-conditioned recursive update lies between half and four fifths
of its previous condition number. The denominator is proved positive from
the hypotheses, so no totalized-division exceptional case is used. -/
theorem contraction_bounds {k h : ℝ} (hk : 2 ≤ k) (hh : 0 < h)
(hh_upper : h < 1 / 4) :
k / 2 ≤ k * (k + h + 1) / (2 * k + h) ∧
k * (k + h + 1) / (2 * k + h) ≤ (4 / 5) * k := by
have hk_nonneg : 0 ≤ k := by linarith
have hden : 0 < 2 * k + h := by linarith
constructor
· apply (le_div_iff₀ hden).2
nlinarith [mul_nonneg hk_nonneg hh.le]
· apply (div_le_iff₀ hden).2
have hmargin : 0 ≤ 3 * k - h - 5 := by linarith
nlinarith [mul_nonneg hk_nonneg hmargin]
end AutoSamplingTheory.ExampleCases.SmoothedPicardHMC.RecursiveCondition