# SageMath external packages

A tentative list of external packages for SageMath (spkg, pip-installable packages, etc).

- Feel free to add more packages, links, notes.
- Use this list to add examples to the Code Sharing Workflow wiki page.
- Note also Chris Swierczewski's Creating External Sage Packages.
- With the SageMath sample package you will find a minimal example of a Sage package.
- See an April 2020 sage-devel thread on CI infrastructure options for external Sage packages.

See also

- Packages on PyPI matching 'sagemath'
- Packages on PyPI matching 'sage' and Mathematics
- Packages on PyPI matching 'sage' and Science
- Sage-wiki page for SPKGs
- Packages on github matching "Sage code"

### List of external packages

See also https://github.com/slel/external-packages

#### Modular Abelian Varieties

by William Stein and Hao Chen

Links:

#### Python implementation of chebfun

by Chris Swierczewski

#### Purple Sage

by William Stein

A Library of Number Theory Code that depends on Sage.

#### Sébastien Labbé's research code

by Sébastien Labbé

See also this blog post

Notes:

- This is an spkg, rather than a standard pip-installable package.
- Version 0.1 contains modules on digital geometry, combinatorics on words and more.
- Version 0.2 provides modules on multidimensional continued fraction algorithms, matrix cocycles, languages and tikzpictures.
- Version 0.3 to be released will be pip-installable.

#### CHA

by Nicolas Borie

A Sage Library of Combinatorial Hopf algebras.

#### Sage-semigroups

by Nicolas M. Thiéry

A semigroup (representation) theory library for SageMath.

(very preliminary!!!)

#### Automata and semigroups

by Charles Paperman

#### ss-isogeny-software

by Luca De Feo

keywords: isogeny elliptic curve cryptography quantum

#### Abel Functions

by Chris Swierczewski

Discussion at https://groups.google.com/d/msg/sage-devel/29ndCD8z94k/K6H2OK5TAgAJ

#### Schottky uniformization

by Jeremy Upsal

Various ideas from Schottky uniformization are implemented in Sage. These now include the SK prime function and will later include the Riemann Theta function built from a RS via Schottky uniformization due to Darren Crowdy.

#### flatsurf: flat surfaces

by Vincent Delecroix and Samuel Lelièvre

#### sage-flatsurf: flat surfaces

by Vincent Delecroix and Pat Hooper

#### Lyapunov exponents for multidimensional continued fractions

by Vincent Delecroix and Sébastien Labbé

Links:

#### Sage train track

by Thierry Coulbois

#### Flagmatic

by Emil R. Vaughan

(it is a subject of a GSoC 2016 project to port it to Sage 7.4)

#### Chow

by Christoph Sorger and Manfred Lehn

A Sage library for computations in intersection theory.

#### Carleman linearization of polynomial differential equations

by Marcelo Forets

#### ore_algebra

by Manuel Kauers et al.

A Sage implementation of Ore algebras and Ore polynomials.

#### ecfactory

The library implements algorithms to construct elliptic curves with certain desired properties.

#### cryptosage

by Sara Forouhar

CryptoSage provides cryptography algorithms in SageMath.

#### cutgeneratingfunctionology (formerly infinite-group-relaxation-sage-code)

by Matthias Köppe, Yuan Zhou, C. Y. Hong, and Jiawei Wang

Python code for computation and experimentation with cut-generating functions, in particular the Gomory-Johnson model

#### multipolynomial-bases

by Viviane Pons

A Sage package to work on multipolynomials bases (Schubert, Grothendieck, Key).

#### Zeta

by Tobias Rossmann

Zeta provides methods for computing local and topological zeta functions arising from the enumeration of subalgebras, ideals, submodules, representations, and conjugacy classes of suitable algebraic structures, as well as some other types of zeta functions.

#### Igusa and topological zeta

by Juan Viu-Sos

Calculation Of The (Local) Igusa And Topological Zeta Functions Of A Non-Degenerated Polynomial With Respect To His Newton'S Polyhedron.

#### admcycles

by Johannes Schmitt et alii

admcycles is a SageMath module to compute with the tautological ring of the moduli spaces of complex curves.

#### conrey-dirichlet-characters

by Jonathan Bober

This contains some Sage/Cython code for working with Dirichlet characters using a numbering scheme described by Brian Conrey.

by Stefan Wewers, Julian Rüth

A Sage toolbox for computing with Models of Curves over Local Fields.

#### Usain Boltz

by Matthieu Dien and Martin Pépin

Usain Boltz is a Python/Cython library meant to automate the random generation of tree-like structures.

#### addcombq

by Matt Torrence

This is a Sage package for fast Additive Combinatorics functions.

#### sage-numerical-interactive-mip

by Peijun Xiao, Zeyi Wang, and Yuan Zhou

Interactive mixed integer linear programming solver

#### ResSing

by Suchandan Pal

This is a package for calculating regular models of curves.

#### Yacop

by Christian Nassau

Sage package for Steenrod algebra cohomology.

#### Torus Knots Counter

by Ángel González-Prieto (Universidad Politécnica de Madrid) and Vicente Muñoz (Universidad de Málaga).

SageMath script that computes the motive of the irreducible SL(r,k)-character variety of an (n,m)-torus knot

#### fgb_sage

by Markus Wageringel

Sage interface for computing Gröbner bases with FGb.

#### guptri_py

by Markus Wageringel

Sage/NumPy interface for solving generalized eigenvalue problems of singular matrix pencils with GUPTRI.