Skip to content

feat(RingTheory/LocalRing): IsLocalRing for pullbacks#37008

Open
BryceT233 wants to merge 49 commits intoleanprover-community:masterfrom
BryceT233:equalizer_and_pullback
Open

feat(RingTheory/LocalRing): IsLocalRing for pullbacks#37008
BryceT233 wants to merge 49 commits intoleanprover-community:masterfrom
BryceT233:equalizer_and_pullback

Conversation

@BryceT233
Copy link
Copy Markdown
Contributor

@BryceT233 BryceT233 commented Mar 23, 2026

We provide basic lemmas for equalizers and pullbacks of RingHom and AlgHom, and show they are local rings under suitable condtions.

This is needed in #37940 to construct a residue algebra structure on pullbacks.


Open in Gitpod

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 23, 2026

PR summary 977f84bd6e

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference
Mathlib.RingTheory.LocalRing.Pullback (new file) 1202

Declarations diff

+ isLocalHom_pullbackFst
+ isLocalHom_pullbackSnd
+ isLocalRing_eqLocus
+ isUnit_eqLocus_mk_iff
++ isLocalRing_pullback
++ isUnit_pullback_mk_iff
++ pullback
++ pullbackFst
++ pullbackSnd
++ pullback_comm_sq
++ surjective_pullbackFst_of_surjective
++ surjective_pullbackSnd_of_surjective

You can run this locally as follows
## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>

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

The doc-module for scripts/pr_summary/declarations_diff.sh contains some details about this script.


No changes to technical debt.

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

@github-actions github-actions Bot added the t-ring-theory Ring theory label Mar 23, 2026
Comment thread Mathlib/Algebra/Algebra/Subalgebra/Prod.lean Outdated
Comment thread Mathlib/Algebra/Algebra/Subalgebra/Prod.lean Outdated
Comment thread Mathlib/Algebra/Ring/Subring/Basic.lean Outdated
@BryceT233 BryceT233 changed the title feat(Algebra/Ring): introduce Pullback for RingHom and AlgHom feat(Algebra/Ring): introduce pullback for RingHom and AlgHom Mar 23, 2026
@BryceT233 BryceT233 changed the title feat(Algebra/Ring): introduce pullback for RingHom and AlgHom feat(Algebra/Ring): pullback for RingHom and AlgHom Apr 14, 2026
@BryceT233 BryceT233 changed the title feat(Algebra/Ring): pullback for RingHom and AlgHom feat(RingTheory/LocalRing): pullback for RingHom and AlgHom Apr 23, 2026
@BryceT233 BryceT233 changed the title feat(RingTheory/LocalRing): pullback for RingHom and AlgHom feat(RingTheory/LocalRing): IsLocalRing for pullbacks Apr 23, 2026
(h : Function.Surjective f) : Function.Surjective (f.pullbackSnd g) :=
fun s ↦ by simpa [eq_comm] using h (g s)

theorem isLocalRing_pullback [IsLocalRing R] (f : R →+* T) (g : S →+* T) (hg : IsLocalHom g) :
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I heard about IsLocalHom is a bad instance and I am not very sure how to use it, I used it as a instance above but not here, probably this is not ideal.

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

Labels

t-ring-theory Ring theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants