[Merged by Bors] - feat(RingTheory/Polynomial/ContentIdeal): more theorems#25960
[Merged by Bors] - feat(RingTheory/Polynomial/ContentIdeal): more theorems#25960fbarroero wants to merge 7 commits intoleanprover-community:masterfrom
Conversation
--- <!-- The text above the `---` will become the commit message when your PR is merged. Please leave a blank newline before the `---`, otherwise GitHub will format the text above it as a title. For details on the "pull request lifecycle" in mathlib, please see: https://leanprover-community.github.io/contribute/index.html In particular, note that most reviewers will only notice your PR if it passes the continuous integration checks. Please ask for help on https://leanprover.zulipchat.com if needed. To indicate co-authors, include lines at the bottom of the commit message (that is, before the `---`) using the following format: Co-authored-by: Author Name <author@email.com> If you are moving or deleting declarations, please include these lines at the bottom of the commit message (that is, before the `---`) using the following format: Moves: - Vector.* -> List.Vector.* - ... Deletions: - Nat.bit1_add_bit1 - ... Any other comments you want to keep out of the PR commit should go below the `---`, and placed outside this HTML comment, or else they will be invisible to reviewers. If this PR depends on other PRs, please list them below this comment, using the following format: - [ ] depends on: #abc [optional extra text] - [ ] depends on: #xyz [optional extra text] --> [](https://gitpod.io/from-referrer/)
PR summary 6d5899926bImport changes exceeding 2%
|
| File | Base Count | Head Count | Change |
|---|---|---|---|
| Mathlib.RingTheory.Polynomial.ContentIdeal | 1200 | 1231 | +31 (+2.58%) |
Import changes for all files
| Files | Import difference |
|---|---|
Mathlib.RingTheory.Polynomial.ContentIdeal |
31 |
Declarations diff
+ contentIdeal_eq_top_of_contentIdeal_mul_eq_top
+ contentIdeal_map_eq_map_contentIdeal
+ contentIdeal_mul_eq_top_of_contentIdeal_eq_top
+ contentIdeal_mul_le_mul_contentIdeal
+ contentIdeal_one
+ mul_contentIdeal_le_radical_contentIdeal_mul
+ span_insert_zero
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
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
|
@fbarroero Thanks! I made some local changes. I thought it was easier to just push them to a new branch, instead of copy-pasting them into review comments. You can inspect the suggestions here: fbarroero#1 |
|
maintainer merge |
|
🚀 Pull request has been placed on the maintainer queue by jcommelin. |
Thanks!!! |
|
There is an error, but otherwise LGTM, thanks! bors d+ |
|
✌️ fbarroero can now approve this pull request. To approve and merge a pull request, simply reply with |
|
bors r+ |
We prove more facts about `contentIdeal`.
For instance we prove that
`(p * q).contentIdeal $\le$ p.contentIdeal * q.contentIdeal $\le$ (p * q).contentIdeal.radical`
which implies the following result, often called Gauss' Lemma
```
Polynomial.contentIdeal_mul_eq_top_of_contentIdeal_eq_top {p q : R[X]} (hp : p.contentIdeal = ⊤)
(hq : q.contentIdeal = ⊤) : (p * q).contentIdeal = ⊤
```
Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/contentIdeal/with/522432790)
Co-authored-by: Johan Commelin <johan@commelin.net>
|
Pull request successfully merged into master. Build succeeded: |
…ommunity#25960) We prove more facts about `contentIdeal`. For instance we prove that `(p * q).contentIdeal $\le$ p.contentIdeal * q.contentIdeal $\le$ (p * q).contentIdeal.radical` which implies the following result, often called Gauss' Lemma ``` Polynomial.contentIdeal_mul_eq_top_of_contentIdeal_eq_top {p q : R[X]} (hp : p.contentIdeal = ⊤) (hq : q.contentIdeal = ⊤) : (p * q).contentIdeal = ⊤ ``` Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/contentIdeal/with/522432790) Co-authored-by: Johan Commelin <johan@commelin.net>
…ommunity#25960) We prove more facts about `contentIdeal`. For instance we prove that `(p * q).contentIdeal $\le$ p.contentIdeal * q.contentIdeal $\le$ (p * q).contentIdeal.radical` which implies the following result, often called Gauss' Lemma ``` Polynomial.contentIdeal_mul_eq_top_of_contentIdeal_eq_top {p q : R[X]} (hp : p.contentIdeal = ⊤) (hq : q.contentIdeal = ⊤) : (p * q).contentIdeal = ⊤ ``` Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/contentIdeal/with/522432790) Co-authored-by: Johan Commelin <johan@commelin.net>
…ommunity#25960) We prove more facts about `contentIdeal`. For instance we prove that `(p * q).contentIdeal $\le$ p.contentIdeal * q.contentIdeal $\le$ (p * q).contentIdeal.radical` which implies the following result, often called Gauss' Lemma ``` Polynomial.contentIdeal_mul_eq_top_of_contentIdeal_eq_top {p q : R[X]} (hp : p.contentIdeal = ⊤) (hq : q.contentIdeal = ⊤) : (p * q).contentIdeal = ⊤ ``` Zulip discussion [here](https://leanprover.zulipchat.com/#narrow/channel/287929-mathlib4/topic/contentIdeal/with/522432790) Co-authored-by: Johan Commelin <johan@commelin.net>
We prove more facts about
contentIdeal.For instance we prove that
(p * q).contentIdeal $\le$ p.contentIdeal * q.contentIdeal $\le$ (p * q).contentIdeal.radicalwhich implies the following result, often called Gauss' Lemma
Zulip discussion here