#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 jsrn):

 > 1. Well i guess they are so because of the length of line restrictions
 and the automated formatter did everything 'strictly'. 249--255 is indeed
 ugly will change that. 70--75 seems fine though.

 I won't be a stickler, so up to you. I looked up PEP8 and it doesn't seem
 to advocate putting parameters on individual lines.

 > 2. Oh. I guess i will remove the linear_code.py path and use '//'
 instead of '/' in binomial sum. Might be faster too because of integer
 divisions instead of rational numbers.

 Yes.

 > 21. Isn't it sum upto 'k' that we need?

 Yes it is. Just clarify in the docstring ("up to k" is ambiguous in
 English).

 > 22. Directly iterating involves enumeration over the subset redundantly
 if i am not mistaken. Used the iterator to do the generation in one scan.

 Doing `for e in some_iterable` does exactly the same as looping with an
 iterator, memory-wise. What you shouldn't do is `for e in
 some_iterable.list()`.

 > 24. So given the term prod!^m_{i=1} x!^(d_i)_i, exponent is the set
 {!{1}*d_1 {2}*d_2 ...{m}*d_m}. In which case i believe that the generator
 matrix is correct (it matches with polynomial evaluation).
 >  Will use the prod function instead.

 Ah, yes now I see!

 You should probably use `exponents = Subsets(..., k=order)`. Your current
 code
 depends in a fragile, undocumented manner on the order that `Subsets`
 iterates
 over its elements. When using `k=order` you get only subsets of size
 exactly
 `k`, but you could get around this by adding a dummy element `order` times
 to
 the list.

 > Well everything else makes sense. Will implement them :)

 Cool!

--
Ticket URL: <http://trac.sagemath.org/ticket/20705#comment:36>
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.

Reply via email to