Skip to content

refactor(MeasureTheory/Measure/Typeclasses/NoAtoms): rename NoAtoms to NullSingletonClass#40809

Open
ldiedering wants to merge 7 commits into
leanprover-community:masterfrom
ldiedering:rename_no_atoms
Open

refactor(MeasureTheory/Measure/Typeclasses/NoAtoms): rename NoAtoms to NullSingletonClass#40809
ldiedering wants to merge 7 commits into
leanprover-community:masterfrom
ldiedering:rename_no_atoms

Conversation

@ldiedering

@ldiedering ldiedering commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Rename the class NoAtoms to NullSingletonClass as discussed here and change all derivative names.


Open in Gitpod

@github-actions github-actions Bot added the new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! label Jun 19, 2026
@github-actions

Copy link
Copy Markdown

Welcome new contributor!

Thank you for contributing to Mathlib! If you haven't done so already, please review our contribution guidelines, as well as the style guide and naming conventions. In particular, we kindly remind contributors that we have guidelines regarding the use of AI when making pull requests.

We use a review queue to manage reviews. If your PR does not appear there, it is probably because it is not successfully building (i.e., it doesn't have a green checkmark), has the awaiting-author tag, or another reason described in the Lifecycle of a PR. The review dashboard has a dedicated webpage which shows whether your PR is on the review queue, and (if not), why.

If you haven't already done so, please come to https://leanprover.zulipchat.com/, introduce yourself, and mention your new PR.

Thank you again for joining our community.

@github-actions

github-actions Bot commented Jun 19, 2026

Copy link
Copy Markdown

PR summary ae177ceec6

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.MeasureTheory.Measure.Typeclasses.NoAtoms -1503
Mathlib.MeasureTheory.Measure.Typeclasses.NullSingletonClass 1503

Declarations diff (regex)

+ IsHaarMeasure.noAtoms
+ Measure.restrict.instNullSingletonClass
+ NullSingletonClass
+ exists_accPt_of_nullSingletonClass
+ exists_eq_interval_average_of_nullSingletonClass
+ instance (priority := 100) IsHaarMeasure.nullSingletonClass [IsTopologicalGroup G] [BorelSpace G]
+ instance : NullSingletonClass (volume : Measure (mixedSpace K)) := by
+ instance : NullSingletonClass (volume : Measure I)
+ nullSingletonClass
+ nullSingletonClass_gaussianReal
+ nullSingletonClass_hausdorff
+ nullSingletonClass_volume
+ nullSingletonClass_withDensity
+ pi_nullSingletonClass
+ pi_nullSingletonClass'
+ prod.instNullSingletonClass_fst
+ prod.instNullSingletonClass_snd
- Measure.restrict.instNoAtoms
- instance (priority := 100) IsHaarMeasure.noAtoms [IsTopologicalGroup G] [BorelSpace G] [T1Space G]
- instance : NoAtoms (volume : Measure (mixedSpace K)) := by
- instance : NoAtoms (volume : Measure I)
- prod.instNoAtoms_fst
- prod.instNoAtoms_snd

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

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

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.

Declarations diff (Lean)

Lean-aware diff — post-build, computed from the Lean environment (commit ae177ce).

  • +23 new declarations
  • −12 removed declarations
-MeasureTheory.Measure.IsAddHaarMeasure.noAtoms
+MeasureTheory.Measure.IsAddHaarMeasure.nullSingletonClass
+MeasureTheory.Measure.IsHaarMeasure.nullSingletonClass
-MeasureTheory.Measure.instNoAtomsForallVolumeOfNonemptyOfSigmaFinite
+MeasureTheory.Measure.instNullSingletonClassForallVolumeOfNonemptyOfSigmaFinite
+MeasureTheory.Measure.nullSingletonClass_hausdorff
+MeasureTheory.Measure.pi_nullSingletonClass
+MeasureTheory.Measure.pi_nullSingletonClass'
-MeasureTheory.Measure.prod.instNoAtoms_fst
-MeasureTheory.Measure.prod.instNoAtoms_snd
+MeasureTheory.Measure.prod.instNullSingletonClass_fst
+MeasureTheory.Measure.prod.instNullSingletonClass_snd
-MeasureTheory.Measure.restrict.instNoAtoms
+MeasureTheory.Measure.restrict.instNullSingletonClass
-MeasureTheory.NoAtoms.casesOn
-MeasureTheory.NoAtoms.measure_singleton
-MeasureTheory.NoAtoms.mk
-MeasureTheory.NoAtoms.rec
-MeasureTheory.NoAtoms.recOn
+MeasureTheory.NullSingletonClass
+MeasureTheory.NullSingletonClass.casesOn
+MeasureTheory.NullSingletonClass.measure_singleton
+MeasureTheory.NullSingletonClass.mk
+MeasureTheory.NullSingletonClass.rec
+MeasureTheory.NullSingletonClass.recOn
+MeasureTheory.exists_accPt_of_nullSingletonClass
+MeasureTheory.nullSingletonClass_withDensity
-NumberField.mixedEmbedding.instNoAtomsMixedSpaceVolume
+NumberField.mixedEmbedding.instNullSingletonClassMixedSpaceVolume
+ProbabilityTheory.IsGaussian.nullSingletonClass
+ProbabilityTheory.nullSingletonClass_gaussianReal
+Real.nullSingletonClass_volume
+exists_eq_interval_average_of_nullSingletonClass
-unitInterval.instNoAtomsElemRealVolume
+unitInterval.instNullSingletonClassElemRealVolume

No changes to strong technical debt.

No changes to weak technical debt.

Current commit ae177ceec6
Reference commit 555b02bc95

This script lives in the mathlib-ci repository. To run it locally, from your mathlib4 directory:

git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci
../mathlib-ci/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).

note: file Mathlib/MeasureTheory/Measure/Typeclasses/NoAtoms.lean` was renamed to `Mathlib/MeasureTheory/Measure/Typeclasses/NullSingletonClass.lean without a module deprecation
Please create a follow-up pull request adding one. Thanks!

@github-actions github-actions Bot added the file-removed A Lean module was (re)moved without a `deprecated_module` annotation label Jun 19, 2026
Comment on lines +29 to +30
/-- Measure `μ` has value zero on singletons. -/
class NullSingletonClass {m0 : MeasurableSpace α} (μ : Measure α) : Prop where

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it is better to mention continuous measure in the docstring to increase discoverability.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

file-removed A Lean module was (re)moved without a `deprecated_module` annotation new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community!

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants