(blanket issue) add features found in libgf2
See original GitHub issueHey, it looks like you’ve done a really thorough job here, at least at first glance.
I have a library, libgf2, which no one else actually uses, that has a couple of features that might be missing from the galois
library, including:
- LFSR support including Berlekamp-Massey for finding the characteristic polynomial of an LFSR sequence
- quotient rings using specified polynomials
- discrete logarithm (in the easier cases)
Give it a look-see… I have zero time right now to help but maybe in a year or so my schedule will ease up and I can help contribute here.
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:8 (5 by maintainers)
Top Results From Across the Web
math / libgf2 · GitLab - Heptapod
libgf2 : a Python module for computation in GF(2^n). This module, which no one else actually uses, is intended for exploration of linear...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Well, I should thank you for your answer on StackOverflow to my question from 2013, otherwise I wouldn’t have found out about this project.
Permission granted on copying anything from libgf2 as long as you give credit + a reference to it. (+ to Part 1 of my articles on LFSRs if you don’t mind) My name is Jason Sachs. I picked the Apache license for libgf2 but I’m open to granting permission for any permissive license; MIT is fine.
I’m curious how performance compares; I was able to get reasonable performance from Python via Cython for multiplication + modulo, but didn’t go any further. I’m very familiar with numba, haven’t tried to use it for this stuff yet so it’s exciting to see this.
There’s also a Java library jlibgf2 which isn’t as mature, but it does have a number of primitive polynomial generation methods implemented whereas libgf2 does not. (See Part XVIII)