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 pull request is work in progress, DO NOT MERGE!
We currently only really support polynomials and rings in characteristic 0 when it comes to conversion (and even that is lacking). There is not yet much support for working over finite fields, not even over prime fields.
As long as one only works with Singular objects, and never needs to convert them back to GAP objects, that may be fine. But on the long run, we really need to provide conversion methods for as many of these as possible; at least for all finite fields and for Z/mZ.
Back in January, I picked Hans' brain on this, and collected sufficient information to get started on converting Singular "number" objects (i.e. coefficients). Sadly, beyond taking some notes and some code skeletons, I did not get around to actually implementing anything.
I put my notes for that into this branch, in the hope that I or somebody else can pick up this work later on. (Of course you'll then want to start a new branch or rebase this one, instead of keeping the nonsense commit).
Beyond coefficient conversions, we are also in dire need of functions which easily convert between GAP polynomials and Singular polynomials (clearly, in general this requires coefficient conversions to work, but even for rational coefficients the situation is not great). I'll add some incomplete prototypes of that, too.