Skip to content

refactor(MeasureTheory): golf 100 files#38104

Open
yuanyi-350 wants to merge 6 commits intoleanprover-community:masterfrom
yuanyi-350:measure-golf
Open

refactor(MeasureTheory): golf 100 files#38104
yuanyi-350 wants to merge 6 commits intoleanprover-community:masterfrom
yuanyi-350:measure-golf

Conversation

@yuanyi-350
Copy link
Copy Markdown
Collaborator

@yuanyi-350 yuanyi-350 commented Apr 16, 2026

This PR is an experimental project. In this PR, we use an Agent to automatically scan and attempt to simplify proofs. We hope to eventually effectively golf 100 files and avoid reinventing the wheel in mathlib.

We have chosen Mathlib/MeasureTheory as the testing ground.

If this experiment is very successful and accepted by the mathlib community, we would be honored to open source it.

The relevant projects includes

This PR serves as an index. For the actual code review, please refer to the individual PRs linked below. Each of those PRs modifies only a single file to facilitate the review process.


Open in Gitpod

@github-actions github-actions bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Apr 16, 2026
@github-actions github-actions bot added the t-measure-probability Measure theory / Probability theory label Apr 16, 2026
@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Apr 16, 2026
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 16, 2026

PR summary 8e3c989104

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.MeasureTheory.Function.ConditionalExpectation.Real 2324 2340 +16 (+0.69%)
Mathlib.Probability.ProductMeasure 2423 2438 +15 (+0.62%)
Import changes for all files
Files Import difference
15 files Mathlib.Probability.Combinatorics.BinomialRandomGraph.Defs Mathlib.Probability.Distributions.Binomial Mathlib.Probability.Distributions.SetBernoulli Mathlib.Probability.HasLawExists Mathlib.Probability.IdentDistribIndep Mathlib.Probability.Independence.Conditional Mathlib.Probability.Independence.InfinitePi Mathlib.Probability.Independence.ZeroOne Mathlib.Probability.Kernel.CondDistrib Mathlib.Probability.Kernel.Condexp Mathlib.Probability.Kernel.Disintegration.Integral Mathlib.Probability.Kernel.Disintegration.Unique Mathlib.Probability.Kernel.IonescuTulcea.Traj Mathlib.Probability.Moments.SubGaussian Mathlib.Probability.ProductMeasure
15
23 files Mathlib.MeasureTheory.Function.ConditionalExpectation.Real Mathlib.MeasureTheory.Function.FactorsThrough Mathlib.Probability.BorelCantelli Mathlib.Probability.Kernel.CompProdEqIff Mathlib.Probability.Kernel.Composition.AbsolutelyContinuous Mathlib.Probability.Kernel.Disintegration.Density Mathlib.Probability.Kernel.Disintegration.StandardBorel Mathlib.Probability.Kernel.Posterior Mathlib.Probability.Kernel.RadonNikodym Mathlib.Probability.Martingale.Basic Mathlib.Probability.Martingale.BorelCantelli Mathlib.Probability.Martingale.Centering Mathlib.Probability.Martingale.Convergence Mathlib.Probability.Martingale.OptionalSampling Mathlib.Probability.Martingale.OptionalStopping Mathlib.Probability.Martingale.Upcrossing Mathlib.Probability.Process.Adapted Mathlib.Probability.Process.Filtration Mathlib.Probability.Process.HittingTime Mathlib.Probability.Process.LocalProperty Mathlib.Probability.Process.PartitionFiltration Mathlib.Probability.Process.Predictable Mathlib.Probability.Process.Stopping
16

Declarations diff

+ instSemilatticeInf
+ instSemilatticeSup

You can run this locally as follows
## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/reporting/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@grunweg
Copy link
Copy Markdown
Contributor

grunweg commented Apr 16, 2026

Can you mark this PR as depending on the other PRs, please? This way, reviewers won't accidentally review both. Thanks!

@grunweg grunweg added the awaiting-author A reviewer has asked the author a question or requested changes. label Apr 16, 2026
@yuanyi-350
Copy link
Copy Markdown
Collaborator Author

Can you mark this PR as depending on the other PRs, please? This way, reviewers won't accidentally review both. Thanks!

Done — I've marked this PR as depending on the other PRs. Thanks for the suggestion!

@yuanyi-350 yuanyi-350 added codex OpenAI Codex wrote (parts of) this PR. LLM-generated PRs with substantial input from LLMs - review accordingly and removed awaiting-author A reviewer has asked the author a question or requested changes. labels Apr 16, 2026
@mathlib-dependent-issues mathlib-dependent-issues bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Apr 16, 2026
@mathlib-dependent-issues mathlib-dependent-issues bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Apr 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

codex OpenAI Codex wrote (parts of) this PR. LLM-generated PRs with substantial input from LLMs - review accordingly t-measure-probability Measure theory / Probability theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants