Skip to content

galois v0.0.17

Choose a tag to compare

@github-actions github-actions released this 15 Jun 22:04

Breaking Changes

  • Rename FieldMeta to FieldClass.
  • Remove target keyword from FieldClass.compile() until there is better support for GPUs.
  • Consolidate verify_irreducible and verify_primitive keyword arguments into verify for the galois.GF() class factory function.
  • Remove group arrays until there is more complete support.

Changes

  • Speed-up Galois field class creation time.
  • Speed-up JIT compilation time by caching functions.
  • Speed-up Poly.roots() by JIT compiling it.
  • Add BCH codes with galois.BCH.
  • Add ability to generate irreducible polynomials with irreducible_poly() and irreducible_polys().
  • Add ability to generate primitive polynomials with primitive_poly() and primitive_polys().
  • Add computation of the minimal polynomial of an element of an extension field with minimal_poly().
  • Add display of arithmetic tables with FieldClass.arithmetic_table().
  • Add display of field element representation table with FieldClass.repr_table().
  • Add Berlekamp-Massey algorithm in berlekamp_massey().
  • Enable ipython tab-completion of Galois field classes.
  • Cleanup API reference page.
  • Add introduction to Galois fields tutorials.
  • Fix bug in is_primitive() where some reducible polynomials were marked irreducible.
  • Fix bug in integer<-->polynomial conversions for large binary polynomials.
  • Fix bug in "power" display mode of 0.
  • Other minor bug fixes.

Contributors

Commits

0134648 Version bump to 0.0.17
ec0009b Update release notes for v0.0.17
288526f Fix contributors in release notes
cca0e91 Fix bug in power representation of constant elements
6a3fcb1 Improve code coverage
8d46346 Remove target keyword until there is better support
a5f9f16 Rename FieldMeta to FieldClass
1e73ca9 Fix syntax highlighting of sphinx markdown document
92be9bd Enable tab-completion of Galois field classes
22e581b Restructure FieldMeta and FieldArray
87f6013 Remove group arrays until there is better support
8c5fab2 Allow poly coefficients for irreducible_poly and primitive_element in galois.GF
746576a Unify verify arguments to class constructor galois.GF
49f8f1d Make prime factoring of perfect powers efficient
1ecbd56 Add primitive binary BCH codes
af54a87 Make GF._poly_divmod() support 2-D dividends
22b1fd9 Re-architect JIT compilation and caching process
856a47a Make GitHub releases drafts
747672f Ensure GF2 has a ufunc for each arithmetic type
1025738 Unify JIT keyword arguments
32532f6 Add Berlekamp-Massey algorithm
649280d JIT compile Poly.roots()
bbeac79 Add irreducible_polys() function
bc61bea Add primitive_polys() function
3577ae5 Add input checking for irreducible_poly() and primitive_poly()
0f4315f Minor cleanup
54459b7 Fix bug preventing instantiating a large prime field in its extension field
677218b Reduce JIT compile times
1e79bb9 Add Intro to Galois Fields tutorials
840d479 Add arithmetic_table() method
944dcdf Add repr_table() method
d7f544a Suppress erroneous pylint warnings
ee66cc2 Fix bug in degree of large binary polynomials
59bc0cc Fix bug in "power" representation display mode
4af9bf1 Consolidate functions in modular.py
04605b7 Fix bug in Roots constructors with FieldArray roots
209b8d5 Hide classes flyweights
5504b71 Fix typos in README
1701467 Remove functions from bottom of API reference page
8f060e8 Fix typo
08aa24f Fix math representation
97c35af Add generation of minimal polynomials
ef1e778 Enable irreducible and primitive tests of degree-1 polynomials
b37f811 Add ability to generate a primitive polynomial
ec3c66b Fix bug in is_primitive where some reducible polynomials were marked as primitive
0e96460 Add ability to generate an irreducible polynomial
c5cd6b6 Fix bug in integer-poly conversions due to math.log inaccuracy
96211b4 Fix broken hyperlinks in README