Sage Days 23.5 Coding Sprint Projects

Python <--> Singular Linking Discussion

Have a technical discussion of linking Python and Singular and Sage.

Singular Parallel Build

Doctest the Free Algebra Quotient code

The file SAGE_ROOT/devel/sage/sage/algebras/free_algebra_quotient.py has no doctests. Get it to 100% coverage. The point of this is that it is related to wrapping something like letterplace.

Letterplace

Do a very basic wrapping of letterplace for Sage. Use this to replace some of the lame old code in the SAGE_ROOT/devel/sage/sage/algebras/ directory. See here: #7797

error: out of memory

Relative number field arithmetic

Gröbner bases in Sage: Optional parameters

In Singular, one can use various options (redTail, e.g.) and also a degree bound (degBound) for Gröbner basis computations. Aim: Allow the same for libSingular, and also introduce a decorator that can be used for methods that use the Singular expect interface: Save the current options and set a certain value when entering the function, and reset the options when leaving. In other words: Fix #1396!!

extend polynomial rings mod 2^n to n > 30

Rings mod 2^n are limited to n <= 30, but we'd like to have n<=62 by using longs. This would be relevant for some crypto applications

big exponents

Provide an interface to use Singular monomials with big exponents (64-bit instead of 16-bit)

Simon King mentioned that sometimes his code crashes/leaks/etc. So make it so one can do:

@fork
def f(x,y,z,...):
    ...

and then f gets computed in a blocking forked process, and the result is returned via pickling. This is 100% to thwart mem leaks, segfaults, and guaranteed timeout possibility. This could be basically just a light wrapper around @parallel(1). Also, make a global flag to turn this off, so @fork does nothing.

Plural interface

Revive #4539 to provide a basic interface to Plural. This will involve writing new parent and element classes for plural at least.

Sage Nagbot could Doctest some tickets

The Sage Nagbot could be made able to run doctests for a ticket, say in the one obvious case where there is precisely one patch attached to the ticket, and it is set to "needs review". The nagbot code is here.