-
-
Notifications
You must be signed in to change notification settings - Fork 580
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
reduce in quotient rings is broken #33217
Comments
comment:1
Currently, the implementation first computes |
comment:2
The example in the description comes from this computation which depends on the correct behavior of
|
comment:3
The equivalent computation in Singular works correctly:
Also, Singular returns the same Gröbner basis for
So perhaps Gröbner bases in quotient rings can be meaningful, but the implementation of |
This comment has been minimized.
This comment has been minimized.
Author: Markus Wageringel |
Branch: u/gh-mwageringel/33217 |
Commit: |
comment:5
The result of More precisely: If This is also what Singular does via I have fixed this for the New commits:
|
comment:7
I am not sure how I feel about testing if the ring is a quotient ring versus doing a proper subclass of the ideal for quotient rings. Granted, it is not too much technical debt as it is easy to separate later. Are there any other methods that will need similar changes (such as |
comment:8
Replying to @mwageringel:
You mean
Then you say |
comment:9
Replying to @tscrim:
You are right. It is better to move this to a subclass. I will try to implement it. Something similar is done in #33237 right now, but probably there is no overlap with multivariate polynomial rings.
The
Though, this might be a problem of the quotient ring class rather than the ideal. Replying to @kwankyu:
No,
|
comment:11
Replying to @mwageringel:
Okay. Now I understand. Thanks. |
comment:13
Replying to @tscrim:
I have now moved the implementation to a new subclass. I have also fixed the implementations of |
comment:14
Thank you. I think you are correct in your assessment that the issue you bring up is with the quotient ring implementation. One thing that should be reverted is the change to |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:16
Replying to @tscrim:
Thanks for catching that. I have reverted the import to its previous format. Though, I have to admit I do not fully understand the reasoning behind it yet. |
comment:17
Replying to @mwageringel:
My understanding is it is because someone (in the future I think, not yet) could have loaded/installed the quotient rings but not the polynomial rings. This removes it as a compile-time dependency IIRC. Does anyone else have any other comments? I am ready to set this to a positive review (once the patchbot gets around to it). |
Reviewer: Travis Scrimshaw |
comment:18
The patchbot is green. If there are any other comments, feel free to revert the positive review. |
comment:19
Thank you both for your comments. |
Changed branch from u/gh-mwageringel/33217 to |
Reduction modulo ideals in quotient rings does not return unique minimal representatives.
In this example, the ideal
J
in the quotient ringQ = R/I
contains the elementt^2 - z^2
, soreduce
should return0
.These results do not agree with the documentation:
The expected behavior would be the same as lifting the ideal
J
to the cover ringR
, perform reduction there (in terms of the ideal generated byI
and the lifted generators ofJ
) and map the result back toQ
(by e.g. Thm. 9.19 in [https://doc.sagemath.org/html/en/reference/references/index.html#bw1993 [BW1993]]):Possibly related: #27508, #32291
CC: @mjungmath @tscrim
Component: commutative algebra
Author: Markus Wageringel
Branch/Commit:
0cc8b67
Reviewer: Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/33217
The text was updated successfully, but these errors were encountered: