-
Notifications
You must be signed in to change notification settings - Fork 161
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
Wrong result in IsIntegralRing #3975
Comments
In that example, the zeros don't appear on the diagonal:
|
Thanks for another example @Stefan-Kohl - will look tomorrow, and will use this opportunity to create a proper test for |
Aha, the reason for
|
The first one fixes an off-by-one error causing missing the case when zero appears in the diagonal in the multiplication table. The second one removes incorrect true method wrongly claiming that a non trivial unique factorisation ring is an integral ring. Closes gap-system#3975.
In the
This is also a regression from GAP 4.10. (Since I mostly touched the zmodnz code, most likely this will turn out to be my fault sigh). So let's bisect it: Create file
Now start the bisect:
Result after a few minutes: 0f9c104 is the first commit (of course as predicted by me, yay :-). Now gotta see what's wrong with it... |
This fixes an off-by-one error causing missing the case when zero appears in the diagonal in the multiplication table. Closes gap-system#3975.
It was added in commit 0f9c104 and caused IsIntegralRing wrongly return 'true' e.g. for Integers mod 6, as reported in gap-system#3975.
A related issue is
|
@grahamknockillaree yes, this isn't a bug (one could get a similar confusion with |
The following method introduced in 0f9c104 (the commit @fingolfin bisected the problem to) is inconsistent with GAP:
In particular, the GAP documentation for
Therefore, as things are documented, In more detail, the result of removing the
because there is no longer a matching declaration. This is because
Now, I understand from the helpful message from @fingolfin that his new methods use the notion of Euclidean from http://dx.doi.org/10.1016/0021-8693(71)90110-4, which is more general. Therefore, either this broader notion of Euclidean needs a different name in GAP, or we need to agree to change the behaviour and documentation of GAP to use this the broader notion. |
Sorry, I missed the linked pull request #3976! |
This fixes an off-by-one error causing missing the case when zero appears in the diagonal in the multiplication table. Closes gap-system#3975.
Reported by @grahamknockillaree:
The problem is in the line
gap/lib/ring.gi
Line 704 in 86c4135
which should be
to check the diagonal as well.
Thank you for reporting it - I will make a PR tomorrow.
The text was updated successfully, but these errors were encountered: