#18928: A new structure for Reed-Solomon codes in Sage
----------------------------------+------------------------
Reporter: dlucas | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: sage-6.8
Component: coding theory | Resolution:
Keywords: | Merged in:
Authors: | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: #18376, #18813 | Stopgaps:
----------------------------------+------------------------
Description changed by dlucas:
Old description:
> This ticket proposes a new implementation for Generalized Reed-Solomon
> codes in Sage.
> It contains:
>
> - a new code class, `GeneralizedReedSolomonCode`, which wraps Reed-
> Solomon code in the object-oriented structure introduced in #18099,
> - a first new encoder, `GRSEvaluationVectorEncoder`, which can encode
> words from a message space which is a vector space, and
> - a second new encoder, `GRSEvaluationPolynomialEncoder`, which can
> encode words from a message space which is a polynomial ring.
>
> This new implementation properly sets GRS codes in the object-oriented
> structure, which allows the user to use specific methods and algorithms
> to encode (and later decode) words. It also introduces the notion of
> generalized Reed-Solomon codes, which means that the user can now set a
> list of column multipliers for the code.
>
> It also allows to compute parity-check matrix and generator matrix from
> the parameters of the code, through dedicated methods.
>
> As GRS codes are now objects in Sage, it is also possible to ask a GRS
> code for its specific parameters (like the list of its evaluation points,
> or its column multipliers).
>
> The two provided encoders follow the structure introduced in #18376.
>
> More details about GRS codes can be found in the docstring of the
> provided code.
New description:
This ticket proposes a new implementation for Generalized Reed-Solomon
codes in Sage.
It contains:
- a new code class, `GeneralizedReedSolomonCode`, which wraps Reed-Solomon
code in the object-oriented structure introduced in #18099,
- a first new encoder, `GRSEvaluationVectorEncoder`, which can encode
words from a message space which is a vector space, and
- a second new encoder, `GRSEvaluationPolynomialEncoder`, which can encode
words from a message space which is a polynomial ring.
This new implementation properly sets GRS codes in the object-oriented
structure, which allows the user to use specific methods and algorithms to
encode (and later decode) words. It also introduces the notion of
generalized Reed-Solomon codes, which means that the user can now set a
list of column multipliers for the code.
It also allows to compute parity-check matrix and generator matrix from
the parameters of the code, through dedicated methods.
As GRS codes are now objects in Sage, it is also possible to ask a GRS
code for its specific parameters (like the list of its evaluation points,
or its column multipliers).
The two provided encoders follow the structure introduced in #18376.
This ticket also removes the old `ReedSolomonCode` method from the global
namespace as it was deprecated more than a year ago (see #15445).
More details about GRS codes can be found in the docstring of the provided
code.
--
--
Ticket URL: <http://trac.sagemath.org/ticket/18928#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.