-
Notifications
You must be signed in to change notification settings - Fork 1k
[Merged by Bors] - refactor: unify the two versions of pow_eq_one_iff
#30799
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Merged by Bors] - refactor: unify the two versions of pow_eq_one_iff
#30799
Conversation
PR summary 34d89e32aaImport changes exceeding 2%
|
| File | Base Count | Head Count | Change |
|---|---|---|---|
| Mathlib.Algebra.Ring.Torsion | 92 | 145 | +53 (+57.61%) |
| Mathlib.RingTheory.Valuation.Basic | 835 | 836 | +1 (+0.12%) |
Import changes for all files
| Files | Import difference |
|---|---|
86 filesMathlib.Algebra.Order.Ring.Archimedean Mathlib.Algebra.Order.Ring.StandardPart Mathlib.AlgebraicGeometry.EllipticCurve.Reduction Mathlib.AlgebraicGeometry.ProjectiveSpectrum.Proper Mathlib.AlgebraicGeometry.ValuativeCriterion Mathlib.FieldTheory.Laurent Mathlib.FieldTheory.RatFunc.AsPolynomial Mathlib.FieldTheory.RatFunc.Degree Mathlib.NumberTheory.BernoulliPolynomials Mathlib.NumberTheory.Bernoulli Mathlib.NumberTheory.Cyclotomic.CyclotomicCharacter Mathlib.NumberTheory.FunctionField Mathlib.NumberTheory.Harmonic.Int Mathlib.NumberTheory.NumberField.FractionalIdeal Mathlib.NumberTheory.NumberField.Ideal.KummerDedekind Mathlib.NumberTheory.Padics.AddChar Mathlib.NumberTheory.Padics.HeightOneSpectrum Mathlib.NumberTheory.Padics.Hensel Mathlib.NumberTheory.Padics.MahlerBasis Mathlib.NumberTheory.Padics.PadicIntegers Mathlib.NumberTheory.Padics.PadicNumbers Mathlib.NumberTheory.Padics.ProperSpace Mathlib.NumberTheory.Padics.RingHoms Mathlib.NumberTheory.Padics.WithVal Mathlib.NumberTheory.RamificationInertia.Basic Mathlib.NumberTheory.RamificationInertia.Galois Mathlib.NumberTheory.RamificationInertia.Unramified Mathlib.RingTheory.DedekindDomain.AdicValuation Mathlib.RingTheory.DedekindDomain.Different Mathlib.RingTheory.DedekindDomain.Dvr Mathlib.RingTheory.DedekindDomain.Factorization Mathlib.RingTheory.DedekindDomain.FiniteAdeleRing Mathlib.RingTheory.DedekindDomain.GaussLemma Mathlib.RingTheory.DedekindDomain.Instances Mathlib.RingTheory.DedekindDomain.LinearDisjoint Mathlib.RingTheory.DedekindDomain.PID Mathlib.RingTheory.DedekindDomain.SInteger Mathlib.RingTheory.DedekindDomain.SelmerGroup Mathlib.RingTheory.DiscreteValuationRing.Basic Mathlib.RingTheory.DiscreteValuationRing.TFAE Mathlib.RingTheory.DividedPowers.Padic Mathlib.RingTheory.Flat.TorsionFree Mathlib.RingTheory.FractionalIdeal.Norm Mathlib.RingTheory.HahnSeries.Valuation Mathlib.RingTheory.Ideal.Int Mathlib.RingTheory.Ideal.Norm.AbsNorm Mathlib.RingTheory.Ideal.Norm.RelNorm Mathlib.RingTheory.KrullDimension.Regular Mathlib.RingTheory.LaurentSeries Mathlib.RingTheory.LocalProperties.Semilocal Mathlib.RingTheory.LocalRing.ResidueField.Polynomial Mathlib.RingTheory.Localization.AtPrime.Extension Mathlib.RingTheory.PowerSeries.Derivative Mathlib.RingTheory.PowerSeries.Ideal Mathlib.RingTheory.PowerSeries.Inverse Mathlib.RingTheory.PowerSeries.WeierstrassPreparation Mathlib.RingTheory.Trace.Quotient Mathlib.RingTheory.Valuation.AlgebraInstances Mathlib.RingTheory.Valuation.Archimedean Mathlib.RingTheory.Valuation.Basic Mathlib.RingTheory.Valuation.Discrete.Basic Mathlib.RingTheory.Valuation.ExtendToLocalization Mathlib.RingTheory.Valuation.Extension Mathlib.RingTheory.Valuation.Integers Mathlib.RingTheory.Valuation.Integral Mathlib.RingTheory.Valuation.IntegrallyClosed Mathlib.RingTheory.Valuation.LocalSubring Mathlib.RingTheory.Valuation.Minpoly Mathlib.RingTheory.Valuation.PrimeMultiplicity Mathlib.RingTheory.Valuation.Quotient Mathlib.RingTheory.Valuation.RamificationGroup Mathlib.RingTheory.Valuation.ValuationRing Mathlib.RingTheory.Valuation.ValuationSubring Mathlib.RingTheory.Valuation.ValuativeRel.Basic Mathlib.RingTheory.Valuation.ValuativeRel.Trivial Mathlib.RingTheory.Valuation.ValuativeRel Mathlib.RingTheory.WittVector.Compare Mathlib.RingTheory.WittVector.DiscreteValuationRing Mathlib.RingTheory.WittVector.FrobeniusFractionField Mathlib.RingTheory.WittVector.Isocrystal Mathlib.Topology.Algebra.Ring.Compact Mathlib.Topology.Algebra.Valued.ValuationTopology Mathlib.Topology.Algebra.Valued.ValuativeRel Mathlib.Topology.Algebra.Valued.ValuedField Mathlib.Topology.Algebra.Valued.WithVal Mathlib.Topology.Algebra.Valued.WithZeroMulInt |
1 |
Mathlib.Algebra.Ring.Torsion |
53 |
Declarations diff
+ pow_eq_one_iff_left
+ pow_eq_one_iff_right
- IsMulTorsionFree.pow_eq_one_iff
- IsMulTorsionFree.pow_eq_one_iff_left
- IsMulTorsionFree.pow_eq_one_iff_right
You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>The doc-module for script/declarations_diff.sh contains some details about this script.
No changes to technical debt.
You can run this locally as
./scripts/technical-debt-metrics.sh pr_summary
- The
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
|
This pull request has conflicts, please merge |
140f9e4 to
7c75582
Compare
|
This pull request has conflicts, please merge |
|
This pull request has conflicts, please merge |
7c75582 to
8844764
Compare
|
This pull request has conflicts, please merge |
dc395f5 to
b88fe17
Compare
87c4bcd to
14a4768
Compare
|
This pull request has conflicts, please merge |
14a4768 to
e89f982
Compare
|
This pull request has conflicts, please merge |
f20cd1a to
0da7e68
Compare
|
This pull request has conflicts, please merge |
0da7e68 to
b4ad3a2
Compare
|
This pull request has conflicts, please merge |
b4ad3a2 to
81a9216
Compare
a91c8e8 to
16c83c5
Compare
One version is about torsion-free monoids, the other one about linearly ordered monoids. I argue that all linearly ordered monoids of interest are torsion-free, and therefore the correct lemma to keep is the former.
16c83c5 to
a0c9dd4
Compare
riccardobrasca
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
bors d+
| theorem pow_lt_one_iff {x : M} {n : ℕ} (hn : n ≠ 0) : x ^ n < 1 ↔ x < 1 := | ||
| lt_iff_lt_of_le_iff_le (one_le_pow_iff hn) | ||
|
|
||
| @[to_additive] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to add a deprecation here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It wasn't deleted. It moved!
|
✌️ YaelDillies can now approve this pull request. To approve and merge a pull request, simply reply with |
|
bors merge |
One version is about torsion-free monoids, the other one about linearly ordered monoids. I argue that all linearly ordered monoids of interest are torsion-free, and therefore the correct lemma to keep is the former. As a byproduct, I must move a few `MonoidHom` lemmas. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Should.20linear.20ordered.20comm.20monoids.20with.20zero.20be.20torsion-free)
|
Pull request successfully merged into master. Build succeeded: |
pow_eq_one_iffpow_eq_one_iff
…unity#30799) One version is about torsion-free monoids, the other one about linearly ordered monoids. I argue that all linearly ordered monoids of interest are torsion-free, and therefore the correct lemma to keep is the former. As a byproduct, I must move a few `MonoidHom` lemmas. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Should.20linear.20ordered.20comm.20monoids.20with.20zero.20be.20torsion-free)
…unity#30799) One version is about torsion-free monoids, the other one about linearly ordered monoids. I argue that all linearly ordered monoids of interest are torsion-free, and therefore the correct lemma to keep is the former. As a byproduct, I must move a few `MonoidHom` lemmas. [Zulip](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/Should.20linear.20ordered.20comm.20monoids.20with.20zero.20be.20torsion-free)
One version is about torsion-free monoids, the other one about linearly ordered monoids. I argue that all linearly ordered monoids of interest are torsion-free, and therefore the correct lemma to keep is the former.
As a byproduct, I must move a few
MonoidHomlemmas.Zulip
a ^ n = 1#30680InjOn univ ftoInjective f#31024attachandcons#31025PosMulMono#31026Natto be mul-torsion-free #31027isUnit_of_mul_eq_onetoIsUnit.of_mul_eq_one#31283LinearOrderedCommMonoidWithZeros cancellative #31749