Skip to content

feat(Algebra): add zpow_right_injective - #42914

Open
lman310 wants to merge 5 commits into
leanprover-community:masterfrom
lman310:feat/zpow-right-injective
Open

feat(Algebra): add zpow_right_injective#42914
lman310 wants to merge 5 commits into
leanprover-community:masterfrom
lman310:feat/zpow-right-injective

Conversation

@lman310

@lman310 lman310 commented Aug 18, 2026

Copy link
Copy Markdown

Add zpow_right_injective, stating that for a nontrivial element a of a
multiplicatively torsion free group, the map n : ℤ ↦ a ^ n is injective,
as well as the corresponding additive theorem zsmul_left_injective using
to_additive

Use the new additive theorem in CharZero.of_isAddTorsionFree, replacing its
dependency on the general smul_left_injective. This allows
CharZero.of_isAddTorsionFree to move from
Mathlib.Algebra.Module.Torsion.Free to the earlier
Mathlib.Algebra.Module.NatInt, resolving the existing TODO

Codex was used to find the appropriate file Mathlib.Algebra.Module.NatInt for moving CharZero.of_isAddTorsionFree

Open in Gitpod

Add the ℤ-specific injectivity lemma and move
CharZero.of_isAddTorsionFree to an earlier file, as instructed by the TODO in
Algebra.Module.Torsion.Free.
@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 Aug 18, 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 added the t-algebra Algebra (groups, rings, fields, etc) label Aug 18, 2026
@github-actions

github-actions Bot commented Aug 18, 2026

Copy link
Copy Markdown

PR summary e0b2beb1d5

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff (regex)

+ zpow_right_injective

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

  • +2 new declarations
  • −0 removed declarations
+zpow_right_injective
+zsmul_left_injective

No changes to strong technical debt.

No changes to weak technical debt.

Current commit e0b2beb1d5
Reference commit 19996d632e

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

Comment thread Mathlib/Algebra/Group/Torsion.lean Outdated
Comment thread Mathlib/Algebra/Group/Torsion.lean Outdated
Comment thread Mathlib/Algebra/Module/NatInt.lean Outdated
@felixpernegger

Copy link
Copy Markdown
Contributor

awaiting-author

@github-actions github-actions Bot added the awaiting-author A reviewer has asked the author a question or requested changes. label Aug 18, 2026
lman310 and others added 3 commits August 18, 2026 21:20
Co-authored-by: Felix Pernegger <s59fpern@uni-bonn.de>
Co-authored-by: Felix Pernegger <s59fpern@uni-bonn.de>
Co-authored-by: Felix Pernegger <s59fpern@uni-bonn.de>
@felixpernegger

Copy link
Copy Markdown
Contributor

@lman310 can you try to merge master and see if that fixes the ci issue

@lman310

lman310 commented Aug 18, 2026

Copy link
Copy Markdown
Author

-awaiting-author

@github-actions github-actions Bot removed the awaiting-author A reviewer has asked the author a question or requested changes. label Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-contributor This PR was made by a contributor with at most 5 merged PRs. Welcome to the community! t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants