Skip to content
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] - [Merged by Bors] - feat(ring_theory/finiteness): prove that a surjective endomorphism of a finite module over a comm ring is injective #10944

Closed
wants to merge 3 commits into from

Conversation

alexjbest
Copy link
Member

@alexjbest alexjbest commented Dec 21, 2021

Using an approach of Vasconcelos, treating the module as a module over the polynomial ring, with action induced by the endomorphism.

This result was rescued from #1822.


I'm not sure of the best location for module_polynomial_ring_endo / whether we want more lemmata for it, I only needed the autognerated simp lemams

Open in Gitpod

… a finite module over a comm ring is injective
@alexjbest alexjbest added the awaiting-review The author would like community review of the PR label Dec 21, 2021
obtain ⟨y, rfl⟩ := f_surj a,
rw [← X_mul y],
exact submodule.smul_mem_smul (ideal.mem_span_singleton.mpr (dvd_refl _)) trivial, },
haveI : is_scalar_tower R (polynomial R) M := ⟨λ x y z, by simp⟩,
Copy link
Member

Choose a reason for hiding this comment

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

I think it would be good to have this as a lemma after module_polynomial_ring_endo. Just to indicate it as a natural API piece. I would also move this haveI to directly after the letI that introduces the module structure.

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah the issue is I'm not really sure how to state this properly as a lemma.
The type depends on the typeclases inferred, and this depends on f, I've pushed by best attempt but its quite unsatisfying as a lemma to me. Maybe its ok though.

src/ring_theory/finiteness.lean Outdated Show resolved Hide resolved
@jcommelin jcommelin added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Dec 22, 2021
@alexjbest alexjbest added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Dec 23, 2021
@jcommelin
Copy link
Member

Thanks 🎉

bors merge

@github-actions github-actions bot added ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) and removed awaiting-review The author would like community review of the PR labels Dec 23, 2021
bors bot pushed a commit that referenced this pull request Dec 23, 2021
… a finite module over a comm ring is injective (#10944)

Using an approach of Vasconcelos, treating the module as a module over the polynomial ring, with action induced by the endomorphism.

This result was rescued from #1822.
@bors
Copy link

bors bot commented Dec 23, 2021

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(ring_theory/finiteness): prove that a surjective endomorphism of a finite module over a comm ring is injective [Merged by Bors] - feat(ring_theory/finiteness): prove that a surjective endomorphism of a finite module over a comm ring is injective Dec 23, 2021
@bors bors bot closed this Dec 23, 2021
@bors bors bot deleted the alexjbest/vasconcelos branch December 23, 2021 20:57
@bors
Copy link

bors bot commented Dec 23, 2021

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title [Merged by Bors] - feat(ring_theory/finiteness): prove that a surjective endomorphism of a finite module over a comm ring is injective [Merged by Bors] - [Merged by Bors] - feat(ring_theory/finiteness): prove that a surjective endomorphism of a finite module over a comm ring is injective Dec 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants