Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download
Views: 2730

Sage talk (20 min)

What to do? I could talk about:

  • ways to use sage today, e.g,.

    • cell server, download, cocalc, jupyter kernel, and sagetex

Or I could talk about:

  • history and motivations for the project

My abstract says: "I will describe the motivation behind Sage, what technology has come out of the project over the years (such as Cython and web-based code notebook interfaces), and where Sage might go when we have the resources that we need."

Motivation: create a viable open source free alternative to Magma (and later orther Ma's). Not worried about competing with anything in open source, not worried about grants, or even this being my "research area". I just wanted a tool that works, ASAP. Others do too.

Tech that came out of Sage or at least inspired by it:

  • Cython

  • Jupyter (via Sagenb) I can't really think of much else. Mostly it goes the other way.

Ways to use Sage today:

  • cell server, download, cocalc, jupyter kernel, and sagetex

Where Sage could go with resources:

  • Finish implementing a wide range of technical advanced mathematical functionality that is missing from all open source. For example "arithmetic of quaternion algebras over totally real fields", "three descent", etc., etc. Mathematicians are of course doing this all the time, but there is too much friction:

    • lack of a dedicated "editor" to ensure refereeing of code happens efficiently

    • many people who would LOVE to work fulltime on implementing something (e.g., instead of teaching calculus next semester), but don't have the funds

  • More documentations, books, etc., along the lines of:

    • "Sage for undergraduates"

    • "Mathematical Computation with Sage"

  • Finish the Python3 switch!

  • Get Sage into PyPi, so people can do pip install sagemath.

  • Smooth bridge to Julia? Be prepared for when there's uniquetly powerful functionality in Julia to support math software.

  • Refactor Sage:

    • A core minimal sage:

      • integers and rational numbers would obviously be in this

      • elliptic curves, manifolds, graph theory, etc., definitely would not be.

    • pip installable packages for everything else in the library, e.g.,

      • pip install sagemath-manifolds

    • Our release process and build testing would still involve installing all these packages.

  • Make Sage startup much quicker, e.g., less than a half second:

    • Right now, with an SSD and warm cache, it takes about 3s.

    • On a slower disk, it can easily be 15s or much longer.

    • Python stats like 100K files on import of the Sage library.