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

Use ring.is_finite() for Sp invariant_form check #39858

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

EigenVector22
Copy link

Fixes #36441
The check for whether a custom invariant_form could be used with Sp(n, R) incorrectly used isinstance(ring, FiniteField). Due to this it failed to detect finite rings like Zmod(p) (p prime), leading to the invariant_form being silently ignored by GAP instead of raising the expected NotImplementedError.

Changed the check to ring.is_finite(), which fixes the described limitation.

Added Doctests.

📝 Checklist

  • The title is concise and informative.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation and checked the documentation preview.

⌛ Dependencies

Fixes sagemath#36441
The check for whether a custom invariant_form could be used with
Sp(n, R) incorrectly used `isinstance(ring, FiniteField)`. Due to this
it failed to detect finite rings like Zmod(p) (p prime), leading to
the invariant_form being silently ignored by GAP instead of raising
the expected NotImplementedError.

Changed the check to `ring.is_finite()`, which fixes the described
limitation.

Added Doctests.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GAP Symplectic Group Construction does not see Zmod(N) is finite
1 participant