Changes between Initial Version and Version 3 of Ticket #18376
- Timestamp:
- 05/07/15 15:11:48 (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #18376
-
Property
Status
changed from
new
toneeds_review
-
Property
Commit
changed from
to
bad97158f1e6b46821bb311422c2e0f73b06319d
-
Property
Branch
changed from
to
u/dlucas/encoder
-
Property
Authors
changed from
to
David Lucas
-
Property
Status
changed from
-
Ticket #18376 – Description
initial v3 1 For now, linear codes don't have a proper structure for encoding, "encoding" meaning handle the bijection between themessage space of the code and its ambient space.1 For now, linear codes don't have a proper structure for encoding, "encoding" meaning handle the bijection between a message space of the code and its ambient space. 2 2 3 3 We propose in this ticket a new structure, designed to handle message -> codeword and codeword -> message transformations. The former operation is designated as encoding, the latter as unencoding. … … 45 45 With this design, we are able to satisfy specific experimentation which requires specific encoders as well as generic experimentation for which any encoder will be fine. 46 46 47 Note that, as it sounds more intuitive to manipulate vectors, `C.unencode()` will always return an element of a vectorial space. 47 Users will probably most often use and expect the message space `F^k`, 48 where `k` is the dimension of the code, and `F` the field. For this reason, 49 the default encoder should be an encoder with this message space, such 50 that `C.encode(m)` expects `m` from `F^k` and `C.unencode(c)` returns an 51 element of `F^k`. 52 48 53 We also now have a default implementation of `generator_matrix` in `AbstractLinearCode` which calls the `generator_matrix` method of the selected encoder.