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] - feat(ring_theory/fractional_ideal): helper lemmas for Dedekind domains #4994

Closed
wants to merge 10 commits into from

Conversation

Vierkantor
Copy link
Collaborator

@Vierkantor Vierkantor commented Nov 13, 2020

An assortment of lemmas and refactoring related to fractional_ideals, used in the Dedekind domain project.

The motivation for creating this PR is that we are planning to remove the general has_inv instance on fractional_ideal (reserving it only for Dedekind domains), and we don't want to do the resulting refactoring twice. So we make sure everything is in the master branch, do the refactoring there, then merge the changes back into the work in progress branch.

Overview of the changes in localization.lean:

  • more is_integer lemmas
  • a localization of a noetherian ring is noetherian
  • generalize a few lemmas from integral domains to nontrivial comm_rings
  • algebra A (fraction_ring A) instance

Overview of the changes in fractional_ideal.lean:

  • generalize many lemmas from integral domains to (nontrivial) comm_rings (now R is notation for a comm_ring and R₁ for an integral domain)
  • is_fractional_of_le, is_fractional_span_iff and is_fractional_of_fg
  • many simp and norm_cast results involving coe : ideal -> fractional_ideal and coe : fractional_ideal -> submodule: now should be complete for 0, 1, +, *, / and .
  • use 1 : submodule as simp normal form instead of coe_submodule (1 : ideal)
  • make the multiplication operation irreducible
  • port submodule.has_mul lemmas to fractional_ideal.has_mul
  • simp lemmas for canonical_equiv, span_singleton
  • many ways to prove is_noetherian

Co-Authored-By: Ashvni ashvni.n@gmail.com
Co-Authored-By: faenuccio filippo.nuccio@univ-st-etienne.fr


An assortment of lemmas about `fractional_ideal`s, used in the Dedekind domain
project.

The motivation for creating this PR is that we are planning to remove the
general `has_inv` instance on `fractional_ideal` (reserving it only for
Dedekind domains), and we don't want to do the resulting refactoring twice.
So we make sure everything is in the master branch, do the refactoring there,
then merge the changes back into the work in progress branch.
@Vierkantor Vierkantor added the awaiting-review The author would like community review of the PR label Nov 13, 2020
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@bryangingechen
Copy link
Collaborator

Do you mind adding some text to the PR message outlining the specific changes made in this PR?

Copy link
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.

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 Nov 17, 2020
bors bot pushed a commit that referenced this pull request Nov 17, 2020
#4994)

An assortment of lemmas and refactoring related to `fractional_ideal`s, used in the Dedekind domain project.
    
The motivation for creating this PR is that we are planning to remove the general `has_inv` instance on `fractional_ideal` (reserving it only for Dedekind domains), and we don't want to do the resulting refactoring twice. So we make sure everything is in the master branch, do the refactoring there, then merge the changes back into the work in progress branch.

Overview of the changes in `localization.lean`:
 * more `is_integer` lemmas
 * a localization of a noetherian ring is noetherian
 * generalize a few lemmas from integral domains to nontrivial `comm_ring`s
 * `algebra A (fraction_ring A)` instance

Overview of the changes in `fractional_ideal.lean`:
 * generalize many lemmas from integral domains to (nontrivial) `comm_ring`s (now `R` is notation for a `comm_ring` and `R₁` for an integral domain) 
 * `is_fractional_of_le`, `is_fractional_span_iff` and `is_fractional_of_fg`
 * many `simp` and `norm_cast` results involving `coe : ideal -> fractional_ideal` and `coe : fractional_ideal -> submodule`: now should be complete for `0`, `1`, `+`, `*`, `/` and `≤`.
 * use `1 : submodule` as `simp` normal form instead of `coe_submodule (1 : ideal)`
 * make the multiplication operation irreducible
 * port `submodule.has_mul` lemmas to `fractional_ideal.has_mul`
 * `simp` lemmas for `canonical_equiv`, `span_singleton`
 * many ways to prove `is_noetherian`

Co-Authored-By: Ashvni <ashvni.n@gmail.com>
Co-Authored-By: faenuccio <filippo.nuccio@univ-st-etienne.fr>



Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>
@bors
Copy link

bors bot commented Nov 17, 2020

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(ring_theory/fractional_ideal): helper lemmas for Dedekind domains [Merged by Bors] - feat(ring_theory/fractional_ideal): helper lemmas for Dedekind domains Nov 17, 2020
@bors bors bot closed this Nov 17, 2020
@bors bors bot deleted the fractional_ideal_lemmas branch November 17, 2020 14:51
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

4 participants