#20705: Classes for Reed Muller Codes
-------------------------------------+-------------------------------------
Reporter: panda314 | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-7.3
Component: coding theory | Resolution:
Keywords: | Merged in:
Authors: Parthasarathi | Reviewers: David Lucas
Panda | Work issues:
Report Upstream: N/A | Commit:
Branch: | 13cda90026b28644ed1c018d7628ea1e007cd4ef
u/dlucas/classes_for_reed_muller_codes| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by panda314):
Replying to [comment:33 jsrn]:
Regarding '17.' Is there any way one can pass a sub ring of a multivariate
polynomial ring consisting of polynomials over a subset of the variables?
Like F[x_1,x_2,x_3] is to F[x_1,x_2,x_3,x_4]? The num_of_var parameter
used in the function sort of does that.
> 13. Could you please add to the doctest of
`_multivariate_polynomial_interpolation` that the returned polynomial
interpolates the input values?
> 1. Could you please add to the example blocks of `ReedMullerCode`
something that prints the length and dimension and min-dist of the code?
That is good for paedagogy.
> 1. What happens in `_multivariate_polynomial_interpolation` if one
inputs evaluations which cannot be interpolated by a polynomial of total
degree `order`? Document.
> 1. Consider using more mathematical docstring description rather than
programming-like. See for instance
`_multivariate_polynomial_interpolation`, where the first sentence could
instead read something like `Return $f \in \GF(q)[X_1,...,X_m]$ such that
$f(\mathbf a) = v[i(\mathbf a)]$ for all $\mathbf a \in \GF(q)^m$, where
$v \in GF(q)^{q^m}$ is a given vector of evaluations, and $i(a)$ is a
specific ordering of $GF(q)^m$ (see below for details)."
> 1. The input `num_of_var` to `_multivariate_polynomial_interpolation` is
redundant since you get the polynomial ring. Use
`len(polynomial_ring.gens())` or something.
> 1. In `_multivariate_polynomial_interpolation` you misspelled
"coordinate".
> 1. Instead of `Tuples(F.list(), m)` you should probably use
`(F^m).list()`.
> 1. Be careful with micro-optimisations that end up not having a real
impact but makes the code denser to read. An example is the use of `z` and
`x` in `_multivariate_polynomial_interpolation`. In line 117 you could
also just write `polyVector += [base_field.zero()]*(d-len(polyVector))`.
> 1. The doc of `_binomial_sum` sounds like it sums *up to and including
`k`*. But it is only up to and including `k-1`.
>
--
Ticket URL: <http://trac.sagemath.org/ticket/20705#comment:37>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.