Repository navigation
feat: the dual formula for the smallest relative entropy to a null generated by finitely many constraints, with no constraint qualification - #423
Conversation
…nerated by finitely many constraints, with no constraint qualification For measurable constraints `g i` and a probability measure `Q` under which every `log⁺ |g i|` is integrable, `⨅ P ∈ constraintNull (range g), klDiv Q P` is the largest expected logarithm of an e-variable for the null, and of a bet `1 + ∑ i, π i * g i` (EValues roadmap, Layer 1.4). The equality between e-variables and bets holds for every finite measure. No Slater condition is assumed: the proof completes the damped and scaled reverse information projection into a member of the null by a finitely supported measure, through the complete class theorem. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0196ftMVbgjSJzPQEwdek3kM
There was a problem hiding this comment.
🟡 reuse — request_changes claude/claude-opus-5-5
The Dirac-sum integral computation in exists_add_sum_smul_dirac_mem_constraintNull repeats the existing integral_sum_smul_dirac. Every other new declaration is new or reuses Mathlib's posLog and dominated-convergence lemmas.
LMLExplore/EValues/ConstraintNull/KLInf.lean:194— The proof rewrites withintegral_finsetSum_measure (hdirac _ (hg i))and thensimp_rw [integral_smul_measure, integral_dirac' _ _ (hg i).stronglyMeasurable, ENNReal.toReal_ofReal ..., smul_eq_mul]. Thehdirachelper (line 180) exists for that rewrite. Together they repeat the proof ofLMLExplore.integral_sum_smul_dirac. Fix: Replace the rewrite chain withrw [integral_sum_smul_dirac (fun k ↦ mul_nonneg hm0.le (hw0 k)) (hg i).stronglyMeasurable]. Keephdiraconly for the integrability term, or inline it.
Reply in this thread to contest a finding; that re-runs only this rubric and posts an answer here. (To fix it, just push a commit — that re-reviews on its own. To contest again after an answer, post a NEW reply rather than editing an old one.)
claude/claude-opus-5-5 · 44s · 238.4k in (219.7k cache read, 18.8k cache write) / 3.7k out tokens · reviewing this diff · rubric ·
AI review — changes requestedEach rubric is judged independently by multiple review agents; the PR merges only once every rubric is green — any rubric that is not green (changes requested, blocked, errored, stale, or not yet run) blocks the merge. See the rubrics.
♻️ = approved on an earlier commit, re-run before merge. Reviewing this diff at head |
…ources - Add `IsEVar.exists_mem_constraintBets_le_of_noArbitrageOn` (CompleteClass) and derive `IsEVar.exists_mem_constraintBets_ae_le` and the bet bound of KLInf from it. - Add `toNNReal_mem_constraintBets` and `isFiniteMeasure_of_mem_constraintNull` (Basic). - Move the integrability of `log (1 + ∑ i, |f i|)` to the new general file `Analysis/SpecialFunctions/Integrability/PosLog.lean`, public, with the damped version. - Extract the no-arbitrage step of the completion lemma as `noArbitrageOn_add_integral_div_of_lintegral_le`, and the facts about the damped reverse information projection as private lemmas. - Cite [EVR26, Note 20] and [LRR26, Theorem 3.1]; fix the docstrings flagged by review. Co-Authored-By: Claude Code <noreply@github.com>
…e [LRR25] Move the dominated-convergence step to `MeasureTheory.Integrable.tendsto_integral_log_one_add_mul` and the positive-measure superlevel set to `MeasureTheory.exists_gt_measure_setOf_le_ne_zero`; extract the completion of the damped reverse information projection into a private lemma; replace the repeated positivity and sum-division arguments by `positivity` and `simp`. Cite [LRR25] for the numeraire and the reverse information projection, and fix two docstrings that overclaimed. Co-Authored-By: Claude Code <noreply@github.com>
…one-sided bound Introduce the private `dampedDensity` with its measurability and positivity, and state the four lemmas on the damped reverse information projection in terms of it. Replace the definitional-unfolding steps (`rfl`, `show`) with explicit `simp`, split the two long rewrite chains into named steps, and retitle the one-sided inequality, its section and its private bound so that they no longer claim strong duality. Co-Authored-By: Claude Code <noreply@github.com>
There was a problem hiding this comment.
🟡 placement — request_changes claude/claude-opus-5-5
File placement and imports are sound, but Real.abs_log_one_add_mul_le, a plain real-logarithm inequality, is in an integrability file instead of the existing log-bounds file LMLExplore/Analysis/SpecialFunctions/Log/Basic.lean.
LMLExplore/Analysis/SpecialFunctions/Integrability/PosLog.lean:41—Real.abs_log_one_add_mul_le(|log (1 + δ t)| ≤ log (1 + t)fort ≥ 0,δ ∈ [0, 1]) has nothing to do with measures or integrability, yet it sits in an integrability file undernamespace Real. Fix: Move it toLMLExplore/Analysis/SpecialFunctions/Log/Basic.lean, add it to that file's main-statements list, and import that module here.
Reply in this thread to contest a finding; that re-runs only this rubric and posts an answer here. (To fix it, just push a commit — that re-reviews on its own. To contest again after an answer, post a NEW reply rather than editing an old one.)
claude/claude-opus-5-5 · 34s · 184.3k in (170.5k cache read, 13.8k cache write) / 3.2k out tokens · reviewing this diff · rubric ·
…le to the log bounds file Co-Authored-By: Claude Code <noreply@github.com>
This pull request proves the dual formula for the smallest relative entropy from a probability measure to a null generated by finitely many constraints,
KL_inf, with no constraint qualification. It adds the fileLMLExplore/EValues/ConstraintNull/KLInf.leanand the general filesLMLExplore/Analysis/SpecialFunctions/Integrability/PosLog.leanandLMLExplore/MeasureTheory/Measure/MeasureSpaceDef.lean, and adds small lemmas toConstraintNull/Basic.leanandConstraintNull/CompleteClass.lean. It uses the statement merged in #416. The statements and the proof follow [EVR26, Note 20] (RemyDegenne/evalues_research), which the file cites.The statements
For measurable constraints
g : ι → 𝓧 → ℝon any measurable space, the nullconstraintNull (range g)and its betsconstraintBets g:maxUtility_constraintNull_eq_iSup_eintegral_log: for every finite measureQ,maxUtility Q (constraintNull (range g)) logUtilityis the supremum over the betsπof∫ᵉ x, ENNReal.log (ENNReal.ofReal (1 + ∑ i, π i * g i x)) ∂Q.iInf_klDiv_constraintNull_eq_maxUtility: for a probability measureQunder which everylog⁺ |g i|is integrable,⨅ P ∈ constraintNull (range g), klDiv Q P = maxUtility Q (constraintNull (range g)) logUtility.iInf_klDiv_constraintNull_eq_iSup_eintegral_log: the two together, the dual formula.No member of the null is asked to satisfy the constraints strictly, the null may be empty, and both sides may be
⊤.Supporting statements:
noArbitrageOn_add_integral_div_of_lintegral_le(the constraints shifted by their means divided by the missing mass admit no arbitrage),exists_add_sum_smul_dirac_mem_constraintNull(on a set without arbitrage that carries the null, a finite measure under which every e-variable has mean at mostc < 1is completed into a member of the null by a finitely supported measure),iInf_klDiv_constraintNull_le_maxUtility_of_noArbitrageOn,maxUtility_constraintNull_le_iSup_eintegral_log_of_noArbitrageOn,iSup_eintegral_log_ofReal_one_add_eq_top.Roadmap coverage (EValues, Layer 1, item 4)
Covered:
maxUtility Q (constraintNull Φ) logUtilityis the supremum over the bets), for every finiteQ, withoutQ ≪ constraintNull Φ;KL_inf", the two equalities, and the item's generalization "the dual formula ofKL_inffor any finite set of measurable constraints on any measurable space".The hypothesis differs from the roadmap's: the roadmap assumes Slater's condition (a probability measure
PwithklDiv Q P < ∞, theg iP-integrable and∫ g i ∂P < 0), this pull request assumes that everylog⁺ |g i|isQ-integrable. Slater's condition implies that hypothesis, by the Donsker–Varadhan inequality∫ f ∂Q ≤ klDiv Q P + log ∫ exp f ∂Papplied tof = log⁺ |g i|; this implication is not formalized here.Left for later pull requests: the statement under Slater's condition as a corollary; that the supremum over the bets is attained, by a bet equal to the numeraire; the corollaries of the item ([HT15], [AJK21], [WSJ26],
maxUtility_bernoulli).Notes for reviewers
LMLExplore/Analysis/Convex/LagrangeDuality.lean, which needs Slater's condition. It compares both sides withmaxUtility, which Statlib's numeraire attains, and splits alongexists_measurableSet_noArbitrageOn_or_exists_sum_mul_pos. If a nonnegative combination of the constraints chargesQ, its multiples are bets with unbounded expected logarithms. OtherwiseQis carried by a setYwithout arbitrage; the measure with density1 / Ewith respect toQ, for the numeraireE, is damped by1 + δ ∑ i, |g i|, so that it integrates the constraints, scaled by1 - ε, and completed into a member of the null by a finitely supported measure onY. The completion applies the complete class theorem to the constraints shifted by multiples of their means. The relative entropy fromQto that member is at mostmaxUtility + E_Q[log (1 + δ ∑ i, |g i|)] - log (1 - ε), andδ,εgo to0by dominated convergence.EReal,⨅ P ∈ S, ((klDiv Q P : ℝ≥0∞) : EReal), sincemaxUtilityisEReal-valued.iInf_klDiv_constraintNull_eq_maxUtilityassumes[Finite κ]where the other statements assume[Fintype ι]: its statement contains no sum over the constraints.Real.abs_log_one_add_mul_le,MeasureTheory.integrable_log_one_add_sum_abs,MeasureTheory.Integrable.log_one_add_const_mul,MeasureTheory.Integrable.tendsto_integral_log_one_add_mul(new fileAnalysis/SpecialFunctions/Integrability/PosLog.lean);MeasureTheory.exists_gt_measure_setOf_le_ne_zero(new fileMeasureTheory/Measure/MeasureSpaceDef.lean);ProbabilityTheory.isFiniteMeasure_of_mem_constraintNull,ProbabilityTheory.toNNReal_mem_constraintBets(Basic.lean);ProbabilityTheory.IsEVar.exists_mem_constraintBets_le_of_noArbitrageOn(CompleteClass.lean), from whichIsEVar.exists_mem_constraintBets_ae_leis now derived. No declaration is removed or renamed.δandε, and four facts about the damped reverse information projection (its integrability of the constraints, its means, the logarithm of its likelihood ratio, its completion into a member of the null), are private.Roadmap: EValues
Paper: RemyDegenne/evalues_research
Item: R15
🤖 Generated with Claude Code
https://claude.ai/code/session_0196ftMVbgjSJzPQEwdek3kM