Sage Days 16 Project Idea Page

Implement evaluation of elliptic curve isomorphism at a point

PEOPLE: William Stein

sage: E = EllipticCurve('37a'); F = E.quadratic_twist(-17)
sage: K.<a> = QuadraticField(-17); E = E.change_ring(K); F = F.change_ring(K)
sage: phi = E.isomorphism_to(F); phi(E.gens()[0])
Traceback (click to the left for traceback)
NotImplementedError: not implemented.

Create a Cython class for points on elliptic curves and optimize basic arithmetic

PEOPLE: William Stein

Create elliptic curve classes for elliptic curve models in the Explicit-Formulas Database

PEOPLE: David Kohel

See the EFD:

Rewrite abelian groups (hard)

PEOPLE: William Stein

Optimize/better document/generally improve graph theory library in Sage

PEOPLE: Robert Miller

Cliquer SPKG for Sage

PEOPLE: Robert Miller, Nathann Cohen (remotely)

Take a look at the possibility of making GAP a dynamically loadable library

PEOPLE: Robert Miller, Martin Albrecht (hopefully)

Python implementation of Ford-Fulkerson algorithm

PEOPLE: Robert Miller

I plan on at least copying the Python implementation on wikipedia, since now we have nothing at all for max flow problems. Hopefully then someone who really cares about it will try to use it, realize it is slow, start improving it, etc. etc. etc.

Frobenius number and genus of numerical semigroups using toric Grobner bases

PEOPLE: Bjarke Hammersholt Roune

PolyBoRi and Singular

PEOPLE: Martin Albrecht, Burcin Erocal

Both PolyBoRi's (Gröbner bases in GF(2)[x_i]/<x_i^2+x_i>) and Singular's interface need some (engineering) work & documentation.

Elliptic curves isogenies -- greatly improve usability

PEOPLE: William Stein

Dan Shumow wrote new code for computing isogenies between elliptic curves, but it is still very rough around the edges. Fix it up. See e.g.,

Multimodular reconstruction implementation

Fix / Unify code / optimize the hell out of it

Add the early termination technique for the reconstruction of multiple values Apply it to Burcin's computation of nullspace over Z[x]

PEOPLE: Burcin Erocal, Clément Pernet

Minpoly over small finite field

#6296 Implement a certified computation of minpoly over a small finite field.

PEOPLE: Clément Pernet

Refactor symbolic functions

Merge the PrimitiveFunction and SFunction classes in sage.symbolic.function and make it easier to define new special functions with custom evaluation, printing, etc. methods. This also involves adding capability to represent symbolic sums and integrals in Sage as a first step to adding native Sage code to deal with these.

PEOPLE: Burcin Erocal

M4RI: improvement of PLUQ factorization

Change/improve the slow columnswap in PLUQ factorization

PEOPLE: Martin Albrecht, Clément Pernet

LinBox wrappers

Rewrite LinBox wrappers using C++ wrappers of Cython directly

PEOPLE: Burcin Erocal, Clément Pernet

Ray class groups and Groessencharacters

Implement computations of the ray class group modulo an ideal of a number field, and the corresponding character group.

PEOPLE: David Loeffler