Repository navigation
feat: the effective null: mixtures, convexity, solidity, setwise closure and tests - #389
Merged
lmlexplore-automation[bot] merged 5 commits intoNov 14, 2026
Conversation
…ure and tests Co-Authored-By: Claude Code <noreply@github.com>
RemyDegenne
commented
Nov 14, 2026
RemyDegenne
commented
Nov 14, 2026
RemyDegenne
commented
Nov 14, 2026
RemyDegenne
commented
Nov 14, 2026
RemyDegenne
commented
Nov 14, 2026
RemyDegenne
commented
Nov 14, 2026
Contributor
Author
AI review — approvedEach 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 |
- Generalise the lower semicontinuity of `∫⁻` to the hypothesis `μ s ≤ liminf (μs i s)`, as `lintegral_le_liminf_lintegral_of_forall_measurableSet_measure_le_liminf_measure`, through the new `SimpleFunc.lintegral_le_liminf_lintegral` and TauCeti's `ENNReal.sum_liminf_le_liminf_sum`. - Factor the truncation step out as `exists_isEVar_le_lt_lintegral_of_notMem_effectiveSet`, and cite [RW, Fact 3.6]. - Tag `effectiveSet_mono` with `@[gcongr]`. - Fix the docstring of `IsEVar.effectiveSet_inter` and the module's main-statements list. - Unfold `SimpleFunc.lintegral` explicitly. Co-Authored-By: Claude Code <noreply@github.com>
…ctive null Rename `exists_test_iff_notMem_effectiveSet` to the roadmap's suggested `exists_powered_test_iff`, with its signature. Generalise the closure of the effective null to the liminf hypothesis (`mem_effectiveSet_of_measure_le_liminf`), keeping setwise convergence as a corollary. Make the module docstring state the hypotheses of its main statements, and move proof narration out of docstrings. Co-Authored-By: Claude Code <noreply@github.com>
lmlexplore-automation
Bot
removed this pull request from the merge queue due to a manual request
Nov 14, 2026
…tion lemma `exists_isEVar_le_lt_lintegral_of_notMem_effectiveSet` no longer assumes that the members of `S` are finite: for `N ≥ 1` the truncation `min X N - 1` has the same negative part as `X - 1`, so it is an e-variable for any null. Co-Authored-By: Claude Code <noreply@github.com>
The proof that min X N is an e-variable for S when 1 ≤ N was inlined in exists_isEVar_le_lt_lintegral_of_notMem_effectiveSet. It is now the lemma IsEVar.min_const, for any level c ≥ 1 in ℝ≥0∞, proved through the negative part identity (1 - y) rather than a chain of EReal rewrites. Co-Authored-By: Claude Code <noreply@github.com>
Merged
via the queue into
LeanMachineLearning:main
with commit Nov 14, 2026
2d2e20a
20 of 25 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR proves the structural properties of Statlib's effective null
effectiveSet Sfor any nullS : Set (Measure Ω)on any measurable space, with no dominating measure and no convexity. It addsLMLExplore/EValues/EffectiveSet.lean(251 lines, namespaceProbabilityTheory). It also adds the lower semicontinuity of∫⁻under setwise convergence (and under the weaker liminf hypothesis) toLMLExplore/MeasureTheory/Integral/Lebesgue/Add.lean(+61 lines). This is the EValues roadmap's Layer 1.1, The effective null [LRR25, Definition 3.1, Lemma 4.5, Corollary 4.6; RW, §6.3.1, Theorem 6.10].Coverage of the milestone's bullets:
comp_mem_effectiveSet:κ ∘ₘ π ∈ effectiveSet Sforπ univ ≤ 1andκ θ ∈ effectiveSet Sforπ-a.e.θ. Together withsubset_effectiveSetthis gives the roadmap's statement, a probabilityπand a kernel with values inS.convex_effectiveSetis derived fromcomp_mem_effectiveSetthroughKernel.boolKernel.convexHull_subset_effectiveSetfollows from it.isLowerSet_effectiveSetandmem_effectiveSet_of_legive solidity.mem_effectiveSet_of_measure_le_liminfshows thatμ ∈ effectiveSet Swhenμs iis eventually in it andμ s ≤ liminf μs i sfor every measurables, along any filter. Its corollarymem_effectiveSet_of_tendstogives closedness under setwise convergence, so nets are covered as well as sequences.isEVar_effectiveSet_inter_iff:SandeffectiveSet S ∩ {μ | IsProbabilityMeasure μ}have the same e-variables. The direction that needs no hypothesis isIsEVar.effectiveSet_inter. The corollaryeffectiveSet_effectiveSet_intersays they have the same effective null.exists_powered_test_iff, under the roadmap's suggested name and signature [RW, Theorem 6.10], without itsIsProbabilityMeasure Qhypothesis.Q ∉ effectiveSet Sexactly when, for someα ∈ (0, 1), a measurable[0, 1]-valuedφwith∫⁻ φ ∂P ≤ αfor allP ∈ Shasα < ∫⁻ φ ∂Q. Its proof goes throughexists_isEVar_le_lt_lintegral_of_notMem_effectiveSet(for any null, a measure outside the effective null is detected by an e-variable bounded by someN ≥ 2, the truncationmin X N), and then divides by the bound, as in [RW, Fact 3.6]. The test is stated explicitly rather than through a new predicate.absolutelyContinuous_of_mem_effectiveSetshows that the members of the effective null of a null dominated byνare≪ ν. It comes frommeasure_eq_zero_of_mem_effectiveSet: a measurable set null for everyP ∈ Sis null for every member of the effective null. This needs no finiteness of the members ofS.effectiveSet_mono(monotonicity in the null) andsubset_effectiveSet_iff(S ⊆ effectiveSet S ↔ ∀ P ∈ S, P univ ≤ 1).The general lemma in
Lebesgue/Add.leanislintegral_le_liminf_lintegral_of_forall_measurableSet_measure_le_liminf_measure. Ifμ s ≤ liminf μs i salong any filter for every measurables(in particular under setwise convergence), then∫⁻ f ∂μ ≤ liminf ∫⁻ f ∂μs i. It is proved throughSimpleFunc.eapprox, usingSimpleFunc.lintegral_le_liminf_lintegral(the same statement for simple functions with finite values, via Tau Ceti'sENNReal.sum_liminf_le_liminf_sum), and needs no countable generation of the filter. The file also hasSimpleFunc.tendsto_lintegral_of_tendsto_measure, the continuity of the integral of such a simple function under setwise convergence. The main lemma is the measurable-set counterpart of Mathlib's portmanteau lemmalintegral_le_liminf_lintegral_of_forall_isOpen_measure_le_liminf_measure.mem_effectiveSet_of_measure_le_liminfconsumes it.Reuse: I searched the pinned Mathlib, Tau Ceti, LML, Statlib and
LMLExplore/foreffectiveSetand for setwise-convergence statements of the formTendsto (fun i ↦ μs i s). Statlib has only the definition,mem_effectiveSet_iff,measure_univ_le_one_of_mem_effectiveSet,isFiniteMeasure_of_mem_effectiveSet,ripr_mem_effectiveSetand the duality lemmas, which are consumed and not restated. Mathlib's setwise statements are π-system and portmanteau lemmas for probability measures, with no lower semicontinuity of∫⁻. The proofs reuse Statlib'sIsEVar.anti_set,IsEVar.congr,IsEVar.of_lintegral_le_one,IsEVar.lintegral_le_measure_univandisEVar_one, and Mathlib'sMeasure.lintegral_bind,Kernel.boolKernel,Measure.comp_add,Measure.comp_smul,lintegral_eq_iSup_eapprox_lintegralandlintegral_tendsto_of_tendsto_of_monotone. The open PRs #384 (Layer 0.1) and #385 (Layer 2.1) touchLMLExplore/EValues/but not the effective null. This PR does not depend on them. No public declaration is removed or renamed.Milestone: EValues Layer 1.1. What remains after this PR is the dominated description of the effective null as the smallest convex, solid, closed-in-
μ-probability set containingS[LRR25, Lemma 4.5], with the Brannath–Schachermayer bipolar theorem inL⁰₊(μ), and its finite-Scorollary [LRR25, Corollary 4.6]. The facts proved here (convexity, solidity, absolute continuity) are the easy inclusions that Lemma 4.5 consumes.Roadmap: EValues
🤖 Prepared with Claude Code