Skip to content

[Merged by Bors] - chore(TensorProduct): universe polymorphism in EquationalCriterion#20452

Closed
alreadydone wants to merge 6 commits intomasterfrom
universe_polymorphism_EquationalCriterion
Closed

[Merged by Bors] - chore(TensorProduct): universe polymorphism in EquationalCriterion#20452
alreadydone wants to merge 6 commits intomasterfrom
universe_polymorphism_EquationalCriterion

Conversation

@alreadydone
Copy link
Copy Markdown
Contributor

Remove exists_factorization_of_apply_eq_zero as it's a special case of exists_factorization_of_apply_eq_zero_of_free.

Remove one statement from the TFAE, but still keep the forward direction exists_factorization_of_apply_eq_zero_of_free` and make it fully universe polymorphic.


Open in Gitpod

@alreadydone alreadydone added the t-algebra Algebra (groups, rings, fields, etc) label Jan 3, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jan 3, 2025

PR summary a385013ba8

Import changes for modified files

Dependency changes

File Base Count Head Count Change
Mathlib.Algebra.Module.FinitePresentation 1134 1137 +3 (+0.26%)
Mathlib.RingTheory.Flat.EquationalCriterion 1573 1576 +3 (+0.19%)
Import changes for all files
Files Import difference
Mathlib.AlgebraicGeometry.PrimeSpectrum.FreeLocus Mathlib.RingTheory.Localization.Free 2
6 files Mathlib.RingTheory.Smooth.Local Mathlib.Algebra.Module.FinitePresentation Mathlib.Algebra.Module.Presentation.Finite Mathlib.RingTheory.Flat.EquationalCriterion Mathlib.RingTheory.LocalRing.Module Mathlib.RingTheory.LocalProperties.Projective
3

Declarations diff

+ Module.FinitePresentation.exists_fin
+ VanishesTrivially.of_fintype
+ _root_.Equiv.isTrivialRelation_comp
+ _root_.Equiv.vanishesTrivially_comp
+ forall_vanishesTrivially_iff_forall_fg_rTensor_injective
+ projective_of_finitePresentation
+ rTensor_injective_of_forall_fg_rTensor_injective

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

Copy link
Copy Markdown
Collaborator

@trivial1711 trivial1711 left a comment

Choose a reason for hiding this comment

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

Hi, thanks so much for doing this. I only have a few comments.

  • I think you should add your name to the authors list of Mathlib/LinearAlgebra/TensorProduct/Vanishing.lean and Mathlib/RingTheory/Flat/EquationalCriterion.lean.
  • The docstring of tfae_equational_criterion still has the condition that you removed.
  • Several of the docstrings in Mathlib/RingTheory/Flat/EquationalCriterion.lean still refer to $$R^{\kappa}$$ or $$R^{\iota}$$; these should be replaced with $$R^k$$ and $$R^\ell$$ respectively.

Also, I didn't realize there was a stacks attribute. Do you think it should be added to the theorems in Mathlib/RingTheory/Flat/EquationalCriterion.lean whose docstrings mention the Stacks project?

@alreadydone
Copy link
Copy Markdown
Contributor Author

alreadydone commented Jan 4, 2025

Thanks for the comments, which are very to the point!
Stacks attributes are a recent addition from #16179, see also Zulip. I think I'll move references to Stacks project from the declaration docstrings to attributes, and I think for some of the declarations it's appropriate to reference 058D.

@alreadydone
Copy link
Copy Markdown
Contributor Author

By the way, I noticed you use "(module) homomorphism" for what's usually called (including in mathlib) linear maps in the file EquationalCriterion; if you'd like to open a PR to change the terminology I'd quickly approve.

Copy link
Copy Markdown
Collaborator

@trivial1711 trivial1711 left a comment

Choose a reason for hiding this comment

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

Can you get rid of the TODO in Mathlib/Algebra/Module/FinitePresentation.lean that refers to universe polymorphism? Otherwise, this is looking great; thanks so much for cleaning up the mess that I made.

@alreadydone
Copy link
Copy Markdown
Contributor Author

Where is the TODO?

@trivial1711
Copy link
Copy Markdown
Collaborator

I mean Mathlib/LinearAlgebra/TensorProduct/Vanishing.lean; sorry.

@erdOne
Copy link
Copy Markdown
Member

erdOne commented Jan 6, 2025

Thanks!
maintainer merge

@github-actions
Copy link
Copy Markdown

github-actions bot commented Jan 6, 2025

🚀 Pull request has been placed on the maintainer queue by erdOne.

@github-actions github-actions bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Jan 6, 2025
mathlib-bors bot pushed a commit that referenced this pull request Jan 6, 2025
We change all occurrences of "module homomorphism" in docstrings to "linear map". See here: #20452 (comment)



Co-authored-by: Mitchell Lee <130885647+trivial1711@users.noreply.github.com>
mathlib-bors bot pushed a commit that referenced this pull request Jan 7, 2025
We change all occurrences of "module homomorphism" in docstrings to "linear map". See here: #20452 (comment)



Co-authored-by: Mitchell Lee <130885647+trivial1711@users.noreply.github.com>
@leanprover-community-bot-assistant leanprover-community-bot-assistant added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Jan 7, 2025
@alreadydone alreadydone added the awaiting-author A reviewer has asked the author a question or requested changes. label Jan 7, 2025
@alreadydone alreadydone removed awaiting-author A reviewer has asked the author a question or requested changes. merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) labels Jan 10, 2025
@alreadydone alreadydone requested a review from jcommelin January 10, 2025 17:23
Copy link
Copy Markdown
Member

@jcommelin jcommelin left a comment

Choose a reason for hiding this comment

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

bors r+

@ghost ghost added the ready-to-merge This PR has been sent to bors. label Jan 10, 2025
mathlib-bors bot pushed a commit that referenced this pull request Jan 10, 2025
…20452)

Remove `exists_factorization_of_apply_eq_zero` as it's a special case of `exists_factorization_of_apply_eq_zero_of_free`.

Remove one statement from the TFAE, but still keep the forward direction ` `exists_factorization_of_apply_eq_zero_of_free` and make it fully universe polymorphic.
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jan 10, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title chore(TensorProduct): universe polymorphism in EquationalCriterion [Merged by Bors] - chore(TensorProduct): universe polymorphism in EquationalCriterion Jan 10, 2025
@mathlib-bors mathlib-bors bot closed this Jan 10, 2025
@mathlib-bors mathlib-bors bot deleted the universe_polymorphism_EquationalCriterion branch January 10, 2025 19:41
@alreadydone alreadydone restored the universe_polymorphism_EquationalCriterion branch January 10, 2025 20:15
@alreadydone alreadydone deleted the universe_polymorphism_EquationalCriterion branch January 10, 2025 20:16
grunweg pushed a commit that referenced this pull request Jan 11, 2025
…20452)

Remove `exists_factorization_of_apply_eq_zero` as it's a special case of `exists_factorization_of_apply_eq_zero_of_free`.

Remove one statement from the TFAE, but still keep the forward direction ` `exists_factorization_of_apply_eq_zero_of_free` and make it fully universe polymorphic.
Julian added a commit that referenced this pull request Jan 12, 2025
* origin/master: (88 commits)
  chore(scripts): update nolints.json (#20672)
  chore: de-simp `map_eq_zero_iff_eq_one` (#20662)
  feat(Combinatorics/SimpleGraph): add independent sets (#18608)
  chore(CategoryTheory/Limits/Cones): functoriality of `mapCone` (#20641)
  feat(Algebra/Category/ModuleCat): pullback of presheaves of modules (#17366)
  feat(AlgebraicTopology): model categories (#19158)
  chore(CategoryTheory): make NormalEpi/MonoCategory and RegularEpi/MonoCategory props (#19548)
  feat(Data/List/ReduceOption): add replicate theorems (#20644)
  feat: approximate subgroups (#20050)
  feat: use scoped trace nodes in linarith (#19855)
  feat: disjoint union of charted spaces (#20619)
  feat: add some term elaborators for reduction (#15192)
  feat(Topology/Category): category of delta-generated spaces (#19499)
  add a variable_alias for Quantale and AddQuantale (#19282)
  feat(Computability/DFA): implement `isRegular_iff` (#19940)
  chore: unpin and bump batteries and importgraph (#20651)
  chore: split `Mathlib/Algebra/Group/Int` (#20624)
  feat: three lemmas related to Hausdorff distance (#20585)
  chore: `initialize_simps_projections` for `Submodule` (#20582)
  feat(Order): Boolean algebra structure on idempotents (#20618)
  chore(CategoryTheory): moving/renaming Subpresheaf (#20583)
  refactor(IntermediateField/Adjoin): Split off relation to `Algebra.adjoin` (#20630)
  feat: sets of doubling strictly less than 3/2 (#20572)
  chore(TensorProduct): universe polymorphism in EquationalCriterion (#20452)
  feat: `s \ t ∩ u = (s ∩ u) \ t` (#20298)
  feat: product of subalgebras (#20202)
  feat: `Submodule.restrictScalars` commutes with `pow` (#20581)
  feat: `a ∈ s ^ n` iff there exists a sequence `f` of `n` elements of `s` such that `∏ i, f i = a` (#20580)
  chore: make `FooHom.coe_id` a `norm_cast` lemma (#20576)
  chore: use ofNat more (#20546)
  feat(CategoryTheory/Shift/Opposite and CategoryTheory/Shift/Pullback): `CommShift` structures on adjunctions are compatible with opposites and pullbacks (#20363)
  feat(FieldTheory/Differential/Liouville): prove the algebraic case of Liouville's theorem (#16797)
  refactor: remove the `CompactSpace` field from `Unique{NonUnital}ContinuousFunctionalCalculus` (#20590)
  feat: Make `PNat.recOn` induction eliminator (#20617)
  feat(Analysis/SpecialFunctions/Pow/Real): add some lemmas (#20608)
  feat: If `s ∆ t` is finite, then `s ∆ u` is finite iff `t ∆ u` is (#20574)
  feat: `⨅ i, f i ≤ ⨆ i, f i` (#20573)
  chore(Geometry/Manifold): move SmoothManifoldWithCorners.lean to IsManifold.lean (#20611)
  feat: AbsoluteValue.IsNontrivial (#20588)
  chore(Data/Finsupp): split off extensionality from `Defs.lean` (#19092)
  chore(Data/Set): split the `CoeSort` instance to its own file (#19031)
  feat(Algebra/Order/Archimedean/Basic): powers between two elements (#20612)
  feature(Algebra/Ring/Idempotents): product of an idempotent and its complement (#20286)
  chore: cleanup more `erw` (#20601)
  chore(GroupTheory/CoprodI): shorten proof of lift_word_prod_nontrivial_of_not_empty (#20587)
  chore: cleanup imports in PrimePow/Divisors (#20626)
  chore: split Algebra/BigOperators/Group/List (#20625)
  chore: reduce Topology->Order imports by moving content (#20627)
  chore(Algebra/Lie/DirectSum): shorten proof of lieAlgebraOf.map_lie' (#20592)
  refactor: Split `FieldTheory/Adjoin.lean` into `Defs.lean` and `Basic.lean` (#20333)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. ready-to-merge This PR has been sent to bors. t-algebra Algebra (groups, rings, fields, etc)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants