Changes between Version 2 and Version 4 of Ticket #14832


Ignore:
Timestamp:
Jun 29, 2013, 10:04:28 AM (10 years ago)
Author:
pbruin
Comment:

Moved finite field-specific code from PolynomialRing_field.__init__() to PolynomialRing_dense_finite_field.__init__().

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #14832

    • Property Cc caruso added
  • Ticket #14832 – Description

    v2 v4  
    1 Currently, every finite field implementation (integers mod ''p'', Givaro, NTL, PARI) has its own code for constructing an irreducible polynomial when given a string as the `modulus` keyword.  Here is a patch that creates methods `PolynomialRing_dense_{finite_field,mod_p}.irreducible_element(n, algorithm=None)`.  In a separate ticket (#14833), the `FiniteField` constructor is adapted to call this function.
     1Currently, every finite field implementation (integers mod ''p'', Givaro, NTL, PARI) has its own code for constructing an irreducible polynomial when given a string as the `modulus` keyword.  This ticket does the following:
     2
     3- implement a new class `PolynomialRing_dense_finite_field`
     4- create methods `PolynomialRing_dense_{finite_field,mod_p}.irreducible_element(n, algorithm=None)`.
     5
     6In a separate ticket (#14833), the `FiniteField` constructor is adapted to call the new function.
    27
    38The default choice is now deterministic: Conway polynomials if available, otherwise lexicographically first (via NTL/GF2E) in characteristic 2, Adleman-Lenstra (via PARI) in characteristic > 2.
     
    510Since it uses PARI's `ffinit`, this depends on #14817.
    611
    7 Apply: [attachment:trac_14832_make_irreducible_polynomial.patch]
     12Apply: [attachment:trac_14832-PolynomialRing_dense_finite_field.patch], [attachment:trac_14832-irreducible_polynomial.patch]