Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dedicated constructors for Cyclic codes #32

Open
3 of 6 tasks
Fe-r-oz opened this issue Sep 7, 2024 · 0 comments
Open
3 of 6 tasks

Dedicated constructors for Cyclic codes #32

Fe-r-oz opened this issue Sep 7, 2024 · 0 comments

Comments

@Fe-r-oz
Copy link

Fe-r-oz commented Sep 7, 2024

These are some of the dedicated cyclic code constructors that would be nice to have. This was brought up in an insightful discussion with Eric.

Chapter 6 of Error-Correction Coding and Decoding has a nice introduction on some of these cyclic codes. For more thorough reading, it is always best to follow MacWilliams Book on Theory on Error Correction Codes. Some of the cyclic codes are as follows:

  • Fire codes
  • Goppa codes
  • Alternate codes
  • Multidimensional cyclic codes
  • Duadic codes
  • Lagrange Codes via Lagrange Interpolation

I worked on an ugly implementation of Goppa codes here which as Eric notes, can be boiled down into ~20 lines. Eric correctly pointed out that I needed to focus on doing operations on matrix algebras rather than explicitly doing it on vectors/elements of matrices (the latter is a coarse approach). There seems to be two descriptions of Goppa codes in literature: Cyclic Construction which is most often found in the books. The other construction, taken from section 2 of Notes on Goppa Codes is shown as follows:

goppa

@esabo, please correct me if this construction does not seem like another formulation of Goppa codes from the cyclic construction. If I am not mistaken, in Goppa's original paper, he used the cyclic construction based on generator polynomials, etc. The paper is in Russian, so the next best paper is by Berlekamp. Thank you for your insights.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant