Skip to content

Faster GF(p^n) arithmetic for p^n >= 2^16 #417

Open

Description

@malb

The Pari+Python interface is too slow. ntl.ZZ_pE+Cython should be much faster.

CC: @sagetrac-ylchapuy @koffie

Component: basic arithmetic

Issue created by migration from https://trac.sagemath.org/ticket/417

Activity

  1. sagetrac-mabshoff commented on Oct 27, 2007

    sagetrac-mabshoffmannequin
    Mannequin
    comment:2

    Hmm, could this have been fixed by the NTL wrapper rewrite?

    Cheers,

    Michael

  2. added this to the sage-2.8.9 milestone on Oct 27, 2007
  3. malb commented on Oct 30, 2007

    @malb
    MemberAuthor
    comment:4

    No, this was not fixed by the NTL wrapper rewrite. NTL still needs to be actually used internally by FiniteField. This ticket requires two new implementations. GF(pn) for p < (sizeof(long)<<3) and for p >= (sizeof(long)<<3). These are different classes in NTL and should both be wrapped.

  4. sagetrac-johanbosman commented on Aug 18, 2011

    sagetrac-johanbosmanmannequin
    Mannequin

    Replying to @malb:

    The Pari+Python interface is too slow. ntl.ZZ_pE+Cython should be much faster.

    I completely agree. How much work has been done on this yet and how much work still needs to be done?

  5. malb commented on Aug 18, 2011

    @malb
    MemberAuthor
    comment:7

    I don't think anybody worked on this much. GF(2e) was switched to NTL, but nothing else happened.

    However, the GF(2e) should be a reasonable starting point for doing other fields (word-sized primes and general primes).

    Also, we should eventually move sparse moduli interally but that's for another project :)

  6. modified the milestones: sage-5.11, sage-5.12 on Aug 13, 2013
  7. added a commit that references this issue on Dec 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions