Skip to content

chore: complete generalization of oneLePart lemmas to DivInvMonoid#41584

Draft
kim-em wants to merge 1 commit into
leanprover-community:masterfrom
kim-em:claude/followup-41247-pospart-generalize
Draft

chore: complete generalization of oneLePart lemmas to DivInvMonoid#41584
kim-em wants to merge 1 commit into
leanprover-community:masterfrom
kim-em:claude/followup-41247-pospart-generalize

Conversation

@kim-em

@kim-em kim-em commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

This PR completes the generalization of Mathlib/Algebra/Order/Group/PosPart.lean started by #41247: weaken leOnePart_one/negPart_zero from Group to DivInvOneMonoid (the proof needs only inv_one), weaken oneLePart_min and the five oneLePart lemmas in the LinearOrder section (oneLePart_eq_ite, oneLePart_eq_ite_lt, one_lt_oneLePart_iff, oneLePart_of_one_lt_oneLePart, oneLePart_lt) from Group to DivInvMonoid, and weaken the Pi section's [∀ i, Group (α i)] to [∀ i, DivInvMonoid (α i)]. No statement or proof changes; this makes these lemmas available for EReal, the motivating use case of the original PR.

Follow-up to #41247 (chore: generalize instPosPart to SubNegMonoid).

🤖 Prepared with Claude Code

Follow up to leanprover-community#41247, which generalized the PosPart/NegPart instances
from Group to DivInvMonoid (additively SubNegMonoid) but left several
later sections of the file at Group even though their proofs use no
group axioms:

- `leOnePart_one`/`negPart_zero`: Group -> DivInvOneMonoid (needs only
  `inv_one`), so EReal gets `(0 : EReal)⁻ = 0`.
- `oneLePart_min`: Group -> DivInvMonoid in the DistribLattice section.
- `oneLePart_eq_ite`, `oneLePart_eq_ite_lt`, `one_lt_oneLePart_iff`,
  `oneLePart_of_one_lt_oneLePart`, `oneLePart_lt`: Group -> DivInvMonoid
  in the LinearOrder section.
- Pi section: `[∀ i, Group (α i)]` -> `[∀ i, DivInvMonoid (α i)]`.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions github-actions Bot added the t-algebra Algebra (groups, rings, fields, etc) label Jul 10, 2026
@github-actions

github-actions Bot commented Jul 10, 2026

Copy link
Copy Markdown

PR summary 2e33d17998

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff (regex)

No declarations were harmed in the making of this PR! 🐙

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 2e33d17).

  • +0 new declarations
  • −0 removed declarations

No declaration differences.


No changes to strong technical debt.

No changes to weak technical debt.

Current commit 2e33d17998
Reference commit a33a5ccd63

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).

@themathqueen

Copy link
Copy Markdown
Collaborator

!radar

@leanprover-radar

leanprover-radar commented Jul 11, 2026

Copy link
Copy Markdown

Benchmark results for 2e33d17 against a33a5cc are in. No significant results found. @themathqueen

Warning

These warnings may indicate that the benchmark results are not directly comparable, for example due to changes in the runner configuration or hardware.

  • Bench repo commit hashes for run main differ between commits.
  • build//instructions: -171.2G (-0.11%)

Small changes (1✅)

1 hidden

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

Labels

t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants