v0.0.29¶
Released May 18, 2022
Breaking changes¶
Moved
galois.square_free_factorization()
function intoPoly.square_free_factors()
method. (#362)Moved
galois.distinct_degree_factorization()
function intoPoly.distinct_degree_factors()
method. (#362)Moved
galois.equal_degree_factorization()
function intoPoly.equal_degree_factors()
method. (#362)Moved
galois.is_irreducible()
function intoPoly.is_irreducible()
method. This is a method, not property, to indicate it is a computationally-expensive operation. (#362)Moved
galois.is_primitive()
function intoPoly.is_primitive()
method. This is a method, not property, to indicate it is a computationally-expensive operation. (#362)Moved
galois.is_monic()
function intoPoly.is_monic
property. (#362)
Changes¶
Added
galois.set_printoptions()
function to modify package-wide printing options. This is the equivalent ofnp.set_printoptions()
. (#363)In [1]: GF = galois.GF(3**5, display="poly") In [2]: a = GF([109, 83]); a Out[2]: GF([α^4 + α^3 + 1, α^4 + 2], order=3^5) In [3]: f = galois.Poly([3, 0, 5, 2], field=galois.GF(7)); f Out[3]: Poly(3x^3 + 5x + 2, GF(7)) In [4]: galois.set_printoptions(coeffs="asc") In [5]: a Out[5]: GF([1 + α^3 + α^4, 2 + α^4], order=3^5) In [6]: f Out[6]: Poly(2 + 5x + 3x^3, GF(7))
Added
galois.get_printoptions()
function to return the current package-wide printing options. This is the equivalent ofnp.get_printoptions()
. (#363)Added
galois.printoptions()
context manager to modify printing options inside of awith
statement. This is the equivalent ofnp.printoptions()
. (#363)Added a separate
Poly.factors()
method, in addition to the polymorphicgalois.factors()
. (#362)Added a separate
Poly.is_square_free()
method, in addition to the polymorphicgalois.is_square_free()
. This is a method, not property, to indicate it is a computationally-expensive operation. (#362)Fixed a bug (believed to be introduced in v0.0.26) where
Poly.degree
occasionally returnednp.int64
instead ofint
. This could cause overflow in certain large integer operations (e.g., computing when determining if a degree- polynomial over is irreducible). When the integer overflowed, this created erroneous results. (#360, #361)Increased code coverage.
Contributors¶
Matt Hostetter (@mhostetter)