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] - chore(ring_theory): split finiteness into finite, finite type and finite presentation #17481

Closed
wants to merge 2 commits into from

Conversation

Vierkantor
Copy link
Collaborator

@Vierkantor Vierkantor commented Nov 11, 2022

module.finite is used in a lot of places (especially in the form of finite_dimensional) but it is defined alongside algebra.finite_type and algebra.finite_presentation, so it brings a lot of dependencies with it. By splitting the file along the lines of the three definitions we should be able to clean up the import graph noticeably. In particular, finite dimensional vector spaces shouldn't know about (mv_)polynomials anymore.


Open in Gitpod

@Vierkantor Vierkantor added awaiting-review The author would like community review of the PR awaiting-CI The author would like to see what CI has to say before doing more work. t-algebra Algebra (groups, rings, fields etc) labels Nov 11, 2022
@mathlib-dependent-issues-bot mathlib-dependent-issues-bot added the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Nov 11, 2022
@erdOne
Copy link
Member

erdOne commented Nov 12, 2022

As a side note, I think it would make more sense to move all the submodule.fg stuff from noetherian.lean to finiteness.lean and reverse the dependency (probably not in this PR though).

@mathlib-dependent-issues-bot mathlib-dependent-issues-bot removed the blocked-by-other-PR This PR depends on another PR which is still in the queue. A bot manages this label via PR comment. label Nov 12, 2022
@mathlib-dependent-issues-bot
Copy link
Collaborator

This PR/issue depends on:

@riccardobrasca
Copy link
Member

Looks like a very reasonable change to me.

…inite presentation

`module.finite` is used in a lot of places (especially in the form of `finite_dimensional`) but it is defined alongside `algebra.finite_type` and `algebra.finite_presentation`, so it brings a lot of dependencies with it. By splitting the file along the lines of the three definitions we should be able to clean up the import graph noticeably.
@Vierkantor
Copy link
Collaborator Author

Vierkantor commented Nov 14, 2022

As a side note, I think it would make more sense to move all the submodule.fg stuff from noetherian.lean to finiteness.lean and reverse the dependency (probably not in this PR though).

The dependencies for is_noetherian are not too bad, exactly equal to those of submodule.fg. Still it's a good idea to split up that file because it pulls in quite a bit of ideal and subalgebra theory.

@riccardobrasca
Copy link
Member

Thanks!

bors d+

@bors
Copy link

bors bot commented Nov 14, 2022

✌️ Vierkantor can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@github-actions github-actions bot added delegated The PR author may merge after reviewing final suggestions. and removed awaiting-review The author would like community review of the PR labels Nov 14, 2022
@Vierkantor
Copy link
Collaborator Author

Build passed, so:

bors r+

@bors
Copy link

bors bot commented Nov 14, 2022

👎 Rejected by label

@github-actions github-actions bot added the ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) label Nov 14, 2022
@Vierkantor Vierkantor removed ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) awaiting-CI The author would like to see what CI has to say before doing more work. labels Nov 14, 2022
@Vierkantor
Copy link
Collaborator Author

Try again:

bors r+

@github-actions github-actions bot added the ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) label Nov 14, 2022
bors bot pushed a commit that referenced this pull request Nov 15, 2022
…ite presentation (#17481)

`module.finite` is used in a lot of places (especially in the form of `finite_dimensional`) but it is defined alongside `algebra.finite_type` and `algebra.finite_presentation`, so it brings a lot of dependencies with it. By splitting the file along the lines of the three definitions we should be able to clean up the import graph noticeably. In particular, finite dimensional vector spaces shouldn't know about (`mv_`)polynomials anymore.
@bors
Copy link

bors bot commented Nov 15, 2022

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title chore(ring_theory): split finiteness into finite, finite type and finite presentation [Merged by Bors] - chore(ring_theory): split finiteness into finite, finite type and finite presentation Nov 15, 2022
@bors bors bot closed this Nov 15, 2022
@bors bors bot deleted the split-ring-finiteness branch November 15, 2022 02:09
bors bot pushed a commit that referenced this pull request Nov 18, 2022
…17541)

Theory on finitely generated submodules was defined in `ring_theory.noetherian`, but we can easily move it to `ring_theory.finiteness` which needs noticeably fewer imports. This move flips the import direction between the two files, since `finiteness` used to import `noetherian` and now it's the other way. Finally, some results that didn't fit neatly in either file are now in the new file `ring_theory.ideal.idempotent_fg`.

As suggested in the discussion on #17481.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated The PR author may merge after reviewing final suggestions. ready-to-merge All that is left is for bors to build and merge this PR. (Remember you need to say `bors r+`.) t-algebra Algebra (groups, rings, fields etc)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants