Release Notes¶
v0.0.17¶
Breaking Changes¶
Rename
FieldMeta
toFieldClass
.Remove
target
keyword fromFieldClass.compile()
until there is better support for GPUs.Consolidate
verify_irreducible
andverify_primitive
keyword arguments intoverify
for thegalois.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()
andirreducible_polys()
.Add ability to generate primitive polynomials with
primitive_poly()
andprimitive_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¶
Dominik Wernberger (@Werni2A)
Matt Hostetter (@mhostetter)
v0.0.16¶
Changes¶
Add
Field()
alias ofGF()
class factory.Add finite groups modulo
n
withGroup()
class factory.Add
is_group()
,is_field()
,is_prime_field()
,is_extension_field()
.Add polynomial constructor
Poly.String()
.Add polynomial factorization in
poly_factors()
.Add
np.vdot()
support.Fix PyPI packaging issue from v0.0.15.
Fix bug in creation of 0-degree polynomials.
Fix bug in
poly_gcd()
not returning monic GCD polynomials.
Contributors¶
Matt Hostetter (@mhostetter)
v0.0.15¶
Breaking Changes¶
Rename
poly_exp_mod()
topoly_pow()
to mimic the nativepow()
function.Rename
fermat_primality_test()
tois_prime_fermat()
.Rename
miller_rabin_primality_test()
tois_prime_miller_rabin()
.
Changes¶
Massive linear algebra speed-ups. (See #88)
Massive polynomial speed-ups. (See #88)
Various Galois field performance enhancements. (See #92)
Support
np.convolve()
for two Galois field arrays.Allow polynomial arithmetic with Galois field scalars (of the same field). (See #99), e.g.
>>> GF = galois.GF(3)
>>> p = galois.Poly([1,2,0], field=GF)
Poly(x^2 + 2x, GF(3))
>>> p * GF(2)
Poly(2x^2 + x, GF(3))
Allow creation of 0-degree polynomials from integers. (See #99), e.g.
>>> p = galois.Poly(1)
Poly(1, GF(2))
Add the four Oakley fields from RFC 2409.
Speed-up unit tests.
Restructure API reference.
Contributors¶
Matt Hostetter (@mhostetter)