Sage Days 29 Coding Sprint Projects
Contents

Sage Days 29 Coding Sprint Projects
 Bug Days Challenges
 Fixing modular form/symbols related bugs and the linear algebra it uses
 Binary quadratic forms
 Number Theory/Elliptic Curves
 Descent
 Convert GP scripts in data/extcode/pari to pari library interface
 Exact and Double Dense (RDF/CDF) Linear Algebra
 Python 3
 IPython activity
 matplotlib activity
 Algebraic Curves / Function Fields
 Sage Notebook (Server)
 libGAP
 Riemann Theta Functions and Algebraic Curves
For the main SD 29 wiki page go here
Below a list of proposed projects.
Bug Days Challenges
The sponsor of the bugfixing days part of this workshop has the following highpriority challenges for us. It would be great if we could resolve them all.
10975  creation of certain prime finite fields is double dog slow (compared to Magma) (patch up by stein; positive review  David Roe)
10933  time of magma command fails inside function (patch up by derickx; positive review  Martin Raum)
Fixing modular form/symbols related bugs and the linear algebra it uses
PEOPLE: Maarten Derickx, William Stein, Martin Raum
10548 ModularSymbols_clear_cache() not clearing everything (positive review)
10510 ModularSymbols(Gamma1(29), 2).cuspidal_subspace().hecke_algebra().basis() doesn't terminate
10262 memory leak in scalar*vector multiplication
8998 galois_action on cusps has a bug (positively reviewed  JEC)
9526 AtkinLehner operators on modular abelian varieties
8614  Optimize creation of modular symbols spaces by speeding up quotienting out by 2term relations (needs review)
4578  Optimize modular symbols decomposition algorithm (needs review)
10987  Add optional arguement to decomposition_of_subspace making restrict not check the subspace (needs review)
Binary quadratic forms
PEOPLE: Justin Walker
4120 Make progress on getting this patch to pass muster
 New patch posted and ready for review.
Number Theory/Elliptic Curves
PEOPLE: Justin Walker, Gagan Sekhon, William Stein, Rado Kirov, John Cremona, Aly Deines, Jen Balakrishnan, Jamie Weigandt
10973 Integer points for curves over number fields: Import Nook/Cremona/Kirov/Anderson code into Sage
10832 Bug in simon_two_descent() (positive review)
10745 Bug in Elliptic curves gens()
10581 Change Large Cremona Database to mongodb format and extend it.
10152 Bug in integral_points (for elliptic curves over Q)
9371 2torsion rank over arbitrary fields (positive review)
At Sage Days22, Rado Kirov and Jackie Anderson ported Magma code by John Cremona's student Nook (Thotsaphon Thongjunthug), to Sage. The code adds support to Sage for finding integral points on elliptic curves over a number field. This week, we moved this code into the Sage library, and made minor changes to support curves defined over the rationals as well. This code seems to fix #10152, and has been added to #10973 as a patch. There are currently issues with performance, when compared with existing Magma code (when processing curves over Q). We are looking at the performance issues (John, Gagan) and working on Nook's Magma code to add support for curves over Q (John, Justin). Jen is working on her thesis.
Descent
PEOPLE: Jamie Weigandt, Robert Miller, John Cremona, William Stein, Justin Walker
Convert GP scripts in data/extcode/pari to pari library interface
 Simon's scripts qfsolve.gp, ellQ.gp, ell.gp (2descent on elliptic curves over Q and over number fields)
See 11005 for an spkg and two patches (extcode and library) needing review.
 Dokchitser's scrip computel.gp (Lfunctions)
tar file contain rsults of all Cohen's work so far and usage instructions
You can find a trac ticket with spkg and a refactored wrapper at 11024
PEOPLE: John Cremona, William Stein, Jamie Weigandt
Exact and Double Dense (RDF/CDF) Linear Algebra
PEOPLE: Rob Beezer, John Palmieri
10752 make pivots of matrices immutable (positive review)
4983 subdivision attribute is public (positive review)
10595 vector constructor and complex numbers (positive review)
7392 rank of CDF/RDF matrices
10974 matrix stack(), augment() methods (positive review)
11004 tensor product subdivisions, docstring (needs review)
11007 wrap NumPy/SciPy Schur factorization (needs review)
 linear system solving routines, RDF/CDF matrix decompositions
Many patches needing review at http://wiki.sagemath.org/devel/LatexToWorksheet
Python 3
Evaluating which python packages in Sage are ready for Python 3. (Google Spreadsheet, Packages in Sage)
IPython activity
PEOPLE: Fernando Perez, Min RaganKelley, Thomas Kluyver
SQLite based history (Pull request)
TorpedÃ¸ing unicode related bugs (Pull request)
Allow %time magic command to work within functions (10933)
General bug sorting and squashing (bug list, better bug list)
Issues Identified
291 Rename special display methods and put them lower in priority then display functions
296 Automatic PDB via %pdb doesn't work
297 Shouldn't use pexpect for subprocesses in inprocess terminal frontend
matplotlib activity
PEOPLE: Michael Droettboom, Paul Ivanov
 Fix memory leaks in Nose so that matplotlib's unit tests can be run on modest hardware with Python 3.x
See status of matplotlib on Python 3.x here https://github.com/matplotlib/matplotlibpy3/wiki
 Win pub quiz competition [completed]
Algebraic Curves / Function Fields
PEOPLE: Moritz Minzlaff, Maarten Derickx, William Stein, Rado Kirov
Picking up things where Sage Days 21 left them.
positive review: 9053 fixes row echelon form over general PIDs
positive review: 9094 is_square and sqrt for polynomials and fraction fields
9054 create a class for basic function_field arithmetic for Sage
Sage Notebook (Server)
PEOPLE: William Stein, Rado Kirov, Alex Leone, Rob Beezer, Jason Grout, Robert Bradshaw
Flask notebook (Rado Kirov)
Sage Aleph (William Stein and Rado Kirov)
http://aleph.sagemath.org Aleph  simple single cell testing server, being served by apache + mod_wsgi.
MathJax 1.1: #9774 (Rob Beezer)
 Simple Compute Server (William Stein, Rado Kirov)
Simple Python Compute Server (enhanced from January):
libGAP
PEOPLE: Volker Braun, (Dmitrii Pasechnik), Ivan Andrus
Trac ticket #6391
Documentation: http://www.stp.dias.ie/~vbraun/Sage/html/en/reference/sage/libs/gap/libgap.html
 Code cleanup (Volker, Ivan)
 Interact with GASMAN (GAP memory manager) to keep alive Gap Objects as long as needed. (Volker)
 Use libtool to build shared library (Volker)
 remove hardcoded input/output buffer sizes
 trap GAP errors (Dima, Volker)
 Test on various platforms, Linux+OSX works (Volker, Ivan Andrus)
 Implemented special classes for GAP lists, records, and functions (Volker)
Implemented conversion GAP>Sage for booleans, integers, rationals, cyclotomics, permutations (Volker)
Riemann Theta Functions and Algebraic Curves
PEOPLE: Chris Swierczewski, Simon Spicer
Trac ticket #6371 (Chris, needs review)
 Use nonGSL_BLAS for computing finite sum for Riemann theta. (Chris)
 For better performance, determine eccentricity of bounding ellipsoid and apply Siegel transformation.
 Riemann Matrices: (prerequisites)
Resultants over polynomial rings #10799 (positive review)
 Singularities of algebraic curves (elements of polynomial rings over two vars?)
 Puiseux series. Dependent on Dirichlet series. (Simon)