#19653: New decoders for Generalized Reed-Solomon codes
-------------------------------------+-------------------------------------
       Reporter:  dlucas             |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.1
      Component:  coding theory      |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  David Lucas        |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/dlucas/grs_decoders              |  7cbcca2969f5a72776eaff64951318a6c3c89a84
   Dependencies:  #18928, #19897     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by dlucas):

 Yum, border cases! I'll investigate this.

 Regarding your
 > *'''Another remark'''*

 your example actually works. See as follows:
 {{{
 sage: C = codes.GeneralizedReedSolomonCode(GF(59).list()[:40], 12)
 sage: c = C.random_element()
 sage: Chan = channels.StaticErrorRateChannel(C.ambient_space(),
 C.decoder().decoding_radius())
 sage: y = Chan(c)
 sage: c == C.encode(C.decode_to_message(y))
 True
 }}}

 What might be bothering you is:
 {{{
 sage: C.decoder().connected_encoder() == C.encoder()
 False
 }}}

 But actually, `AbstractLinearCode.decode_to_message` has been written such
 that it *always* returns the element of the message space as a vector,
 because it seems the more natural way of seeing messages. This generic
 `decode_to_message` is more designed for beginners/people who don't want
 to bother with all the underlying structure, thus we defaulted the the
 most intuitive representation.

 And that's one of the reasons for which we ask `default_encoder` to be
 always set to an encoder whose `message_space` is a vector space.

 David

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