+1 for this to available in Sage. Since it is mostly in C it could be a separate package (in the same way as eclib is) which is compiled at build time. The interface can then go in src/sage/libs -- it could go into a separate directory there or not (as for ratpoints). We would need to decide which functions went in the global namespace (WeilPolynomials yes, anything else?).
The people who look after the Sage build system can help set this up or you could take ratpoints as a model. I would go for this being a standard package right away, but some people might want it to be optional first. On 12 October 2017 at 06:56, Kiran Kedlaya <[email protected]> wrote: > Over a number of years, I have put together some decent code for enumerating > Weil polynomials of a given shape. Originally, I needed this to test whether > some of my p-adic point-counting algorithms could be used with less p-adic > precision than one would have predicted. More recently, the same code was > used as a step in generating the tables of abelian varieties over finite > fields which have just gone live in the LMFDB. > > Currently, this code sits in a Github repo: > https://github.com/kedlaya/root-unitary. Over the past couple of weeks, I've > done some work on revamping the interface, notably in order to provide > Python iterators. That allows list comprehensions of the form > > [pol for pol in WeilPolynomials(q, d) if pol.is_irreducible()] > > At this point, I'd appreciate feedback about how, if at all, this code > should be incorporated into Sage. The code is mostly in C (using FLINT for > multiprecision integer polynomials) with a small Cython wrapper providing > direct access from Sage. I also have various test scripts which, for one, > test the output against Kronecker's theorem that the algebraic integers > whose conjugates all lie on the unit circle are precisely the roots of > unity. > > For future developments, keep an eye on trac #23946. > > -- > You received this message because you are subscribed to the Google Groups > "sage-nt" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/sage-nt. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "sage-nt" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send an email to [email protected]. Visit this group at https://groups.google.com/group/sage-nt. For more options, visit https://groups.google.com/d/optout.
