#19623: Syndrome decoder is not a syndrome decoder
-------------------------------------+-------------------------------------
Reporter: dlucas | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-7.0
Component: coding theory | Resolution:
Keywords: | Merged in:
Authors: David Lucas | Reviewers: Julien Lavauzelle
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/dlucas/generic_decoders | fc79446d6948143d32a9065410453379c79ef2b2
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by jsrn):
Replying to [comment:12 dlucas]:
> Replying to [comment:10 jsrn]:
> > Replying to [comment:9 jlavauzelle]:
> > > * I also think that your description of the decoder ("correcting up
to `number_errors` errors") could fool the user, as `number_errors` may be
set up to `n` whereas the decoder will never decode an error of weight
`n`.
> >
> > Indeed, we seem to have an issue with what `decoding_radius` should
mean. Should it here be `min(number_errors, halft-min-dist)`, or should it
just be `number_errors`, with the understanding that it chooses the
nearest neighbour?
>
> Forget my previous answer, I vote for your solution : number errors
returns `_number_errors` as it was set at construction time, and
`decoding_radius` returns `min(number_errors, half-min-dist)`
Hmm, I'm not sure this is my solution ;-) There are decoding methods which
decode up to, say t > d/2 errors, but which might fail with low
probability (interleaved codes, power decoding, ao.). Should
`decoding_radius` really return `d/2` for all these? Perhaps it's the
definition of `decoding_radius` which should change. In this case it's
"the maximal number of errors a received word can have and for which the
decoder will always return a most likely codeword".
> Yes it is, for now it's:
>
> {{{
> LinearCodeSyndromeDecoder._decoder_type = {"hard-decision", "unique",
"always-succeed", "complete"}
> }}}
>
> It's not shown in the diff because it was set like this before, and I
did not change it.
OK, I missed it when browsing the local file then. "complete" should only
be
added if one sets `number_errors` at least the covering radius of the
code.
--
Ticket URL: <http://trac.sagemath.org/ticket/19623#comment:14>
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.