-
-
Notifications
You must be signed in to change notification settings - Fork 522
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
Skew polynomials #13215
Comments
Dependencies: #13214 |
This comment has been minimized.
This comment has been minimized.
Attachment: trac_13215_skew_polynomials.2.patch.gz |
comment:3
File trac_13215_skew_polynomials.2.patch replaces trac_13215_skew_polynomials.patch |
comment:4
With your changes it is now possible to test some element in an Univariate Quotient Polynomial Ring to be a unit and to compute its inverse. Unfortunately, this computation gives wrong results:
Thomas |
comment:5
Thanks for catching this! I've updated my patch. (I've simply decided to raise a NotImplementedError when the base ring is not a field and, by the way, I've added some doctests.) PS: apply patch trac_13215_skew_polynomials.patch and forget trac_13215_skew_polynomials.2.patch (is it possible to remove it?) |
comment:7
Maybe you should produce a seperate trac ticket for the fix of
By the way, I know that this is a problem which also occurs for usual polynomials (because of the default definition of the reduce function). Do you have any idea how to fix this:
|
comment:8
Ok, I split my patch in two parts and I open a new ticket (cf #13303). I'm afraid I don't understand quite well the problem with reduce. Could you explain it a bit more please? |
This comment has been minimized.
This comment has been minimized.
comment:11
Please fill in your real name as Author. |
Author: Xavier Caruso |
comment:13
Hi Xavier, you are right this is a more general problem. I started a discussion on Best, Thomas |
comment:14
It would be great to have all this in Sage. Thanks a lot for your work. I haven't had a chance to look at the patches yet. I will try to make some time available for this in the coming weeks. For now, I have two questions,
|
comment:15
I haven't heard about Plural before that... so, I haven't considered using it for skew polynomials yet. I will compare how fast is the arithmetic with Plural and with my own implementation in Cython and let you know. Ok, I will split my patch in several components. (Is two enough or are you expecting more than that?). |
comment:16
Thanks for the prompt response! I am attending a workshop this week and I haven't had a chance to read through your patch properly yet. So please excuse me if I am completely off the mark in my response below. :) Replying to @xcaruso:
Your patch provides more functionality than Plural, for example gcd's and factoring. The coefficient domains supported by Plural are also limited. I suppose your implementation supports more general coefficient domains, basically anything Sage already knows about. It would be good to have a clear comparison between Plural and your implementation first. But I imagine having two skew polynomial classes in Sage, a generic implementation from your patch and one based on Plural. We could probably share the high level functionality not provided by Plural using the category framework. I am not opposed to just including your patch and think about the Plural part later as an optimization if you say that your implementation is more capable.
I don't know yet. It depends on how many functionally independent parts there are. For instance, the short representations for morphisms can be an independent piece that is trivial to review. The hash functions for morphisms would also be a separate bug fix. Actually, I attempted to fix that a long time ago at #9016. |
comment:17
I had a quick look at the documentation of Plural but I didn't find how to create a skew polynomial ring (i.e. I don't know how to represent a skew polynomial ring as a G-algebra). Could you please learn me this? |
comment:18
Replying to @xcaruso:
For example, QQ[n, S:n->n+1] :
After applying the patches on this ticket and its dependencies, I get the following error:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:242
I'm assuming that you wanted this back to needs review. |
comment:243
Indeed, thanks. I seem to have too many things on my stack today ;-) |
comment:244
This is now one less. :) |
comment:245
Fails on 32-bit
|
comment:246
Ah, right 32v64 bit. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:249
Done. Let's try again :-) |
Changed branch from public/rings/skew_polynomials-13215 to |
If R is a ring equipped with an endomorphism sigma, the ring of skew polynomials over (R,sigma) is the ring of usual polynomials over R with the modified multiplication given by the rule X*a = sigma(a)*X.
Skew polynomials play an important role in several domains like coding theory or Galois representations theory in positive characteristic.
This ticket provides:
CC: @sagetrac-tfeulner @xcaruso @burcin @johanrosenkilde @sagetrac-dlucas @tscrim
Component: algebra
Keywords: skew polynomials, sd75
Author: Xavier Caruso, Arpit Merchant, Johan Rosenkilde
Branch/Commit:
7cb0cce
Reviewer: Burcin Erocal, David Lucas, Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/13215
The text was updated successfully, but these errors were encountered: