This repository has been archived by the owner on Jul 24, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 299
[Merged by Bors] - refactor(algebra/{dual_number,triv_sq_zero_ext}): support non-commutative rings #18384
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
eric-wieser
added
awaiting-review
The author would like community review of the PR
t-algebra
Algebra (groups, rings, fields etc)
labels
Feb 4, 2023
2 tasks
eric-wieser
changed the title
refactor(algebra/dual_number): support non-commutative rings
refactor(algebra/{dual_number,triv_sq_zero_ext}): support non-commutative rings
Feb 4, 2023
eric-wieser
force-pushed
the
eric-wieser/tsze-noncomm
branch
from
February 4, 2023 01:25
badc313
to
5bd8980
Compare
eric-wieser
force-pushed
the
eric-wieser/tsze-noncomm
branch
from
February 4, 2023 01:25
5bd8980
to
c943860
Compare
1 task
eric-wieser
commented
Feb 22, 2023
This looks fine to me. The maintainer merge |
🚀 Pull request has been placed on the maintainer queue by j-loreaux. |
ocfnash
reviewed
Feb 22, 2023
ocfnash
reviewed
Feb 22, 2023
Two superficial comments but otherwise LGTM. bors d+ |
✌️ eric-wieser can now approve this pull request. To approve and merge a pull request, simply reply with |
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
Feb 22, 2023
eric-wieser
commented
Feb 22, 2023
bors merge |
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
Feb 23, 2023
bors bot
pushed a commit
that referenced
this pull request
Feb 23, 2023
…tive rings (#18384) This changes the definition of multiplication on `triv_sq_zero_ext R M` as follows ```diff -x * y = (x.1 * y.1, x.1 • y.2 + y.1 • x.2) +x * y = (x.1 * y.1, x.1 • y.2 + op y.1 • x.2) ``` which for `R=M` gives the more natural `x.1 * y.2 + x.2 * y.1` in the second term instead of `x.1 * y.2 + y.1 * x.2`. This adds some slightly annoying typeclass arguments that could eventually be cleaned up by #10716; but that PR has rotted under the mathlib4 tide. Either way, the weird typeclass arguments needed with `triv_sq_zero_ext R M` are all invisible when working with `dual_number R`. This is motivated by wanting to talk about `dual_number (quaternion R)` or `dual_number (matrix n n R)`. Unfortunately this breaks the `topological_semiring` instance (making it need an `@` and trigger the `fails_quickly` linter), but this instance isn't really interesting anyway.
Pull request successfully merged into master. Build succeeded: |
bors
bot
changed the title
refactor(algebra/{dual_number,triv_sq_zero_ext}): support non-commutative rings
[Merged by Bors] - refactor(algebra/{dual_number,triv_sq_zero_ext}): support non-commutative rings
Feb 23, 2023
bors bot
pushed a commit
that referenced
this pull request
Mar 15, 2023
Some more results following on from #18384. For now this just has the list lemmas. The multiset and finset lemmas are hard to state cleanly.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This changes the definition of multiplication on
triv_sq_zero_ext R M
as followswhich for
R=M
gives the more naturalx.1 * y.2 + x.2 * y.1
in the second term instead ofx.1 * y.2 + y.1 * x.2
.This adds some slightly annoying typeclass arguments that could eventually be cleaned up by #10716; but that PR has rotted under the mathlib4 tide. Either way, the weird typeclass arguments needed with
triv_sq_zero_ext R M
are all invisible when working withdual_number R
.This is motivated by wanting to talk about
dual_number (quaternion R)
ordual_number (matrix n n R)
.Unfortunately this breaks the
topological_semiring
instance (making it need an@
and trigger thefails_quickly
linter), but this instance isn't really interesting anyway.