External Packages¶
Standard Packages¶
The Sage distribution includes most programs and libraries on which Sage depends. It installs them automatically if it does not find equivalent system packages.
_prereq: Represents system packages required for installing SageMath from source
alabaster: Default theme for the Sphinx documentation system
boost_cropped: Portable C++ libraries (subset needed for Sage)
brial: Boolean Ring Algebra implementation using binary decision diagrams
cddlib: Double description method for polyhedral representation conversion
combinatorial_designs: Data from the Handbook of Combinatorial Designs
conway_polynomials: Tables of Conway polynomials over finite fields
cypari2: Python interface to the number theory library libpari
cython: C-Extensions for Python, an optimizing static compiler
defusedxml: Addresses vulnerabilities of XML parsers and XML libraries
docutils: Processing plaintext documentation into useful formats, such as HTML or LaTeX
eclib: Enumerating and computing with elliptic curves defined over the rational numbers
entrypoints: Discover and load entry points from installed Python packages
fflas_ffpack: Dense linear algebra over word-size finite fields
flintqs: Multi-polynomial quadratic sieve for integer factorization
fplll: Lattice algorithms, including LLL with floating-point orthogonalization
gap: Groups, Algorithms, Programming - a system for computational discrete algebra
gcc: The GNU Compiler Collection, including the C, C++ and Fortran compiler
gf2x: Fast arithmetic in GF(2)[x] and searching for irreducible/primitive trinomials
givaro: C++ library for arithmetic and algebraic computations
iconv: Library for language/country-dependent character encodings
importlib_metadata: Library to access the metadata for a Python package
ipython: Interactive computing environment with an enhanced interactive Python shell
ipywidgets: Interactive HTML widgets for Jupyter notebooks and the IPython kernel
jupyter_client: Jupyter protocol implementation and client libraries
kiwisolver: An implementation of the Cassowary constraint solving algorithm
libatomic_ops: Access hardware-provided atomic memory update operations
linbox: Linear algebra with dense, sparse, structured matrices over the integers and finite fields
mathjax: A JavaScript library for displaying mathematical formulas
maxima: System for manipulating symbolic and numerical expressions
MemoryAllocator: An extension class to allocate memory easily with cython.
mpc: Arithmetic of complex numbers with arbitrarily high precision and correct rounding
mpfi: Multiple precision interval arithmetic library based on MPFR
mpfr: Multiple-precision floating-point computations with correct rounding
mpir: Multiple precision integers and rationals (fork of GMP)
mpmath: Pure Python library for multiprecision floating-point arithmetic
nauty: Find automorphism groups of graphs, generate non-isomorphic graphs
nbformat: Base implementation of the Jupyter notebook format
notebook: Jupyter notebook, a web-based notebook environment for interactive computing
openblas: An optimized implementation of BLAS (Basic Linear Algebra Subprograms)
pari: Computer algebra system for fast computations in number theory
pari_galdata: PARI data package needed to compute Galois groups in degrees 8 through 11
pari_seadata_small: PARI data package needed by ellap for large primes (small version)
pexpect: Python module for controlling and automating other programs
pickleshare: A ‘shelve’ like datastore with concurrency support
polytopes_db: Databases of 2- and 3-dimensional reflexive polytopes
prometheus_client: Python client for the systems monitoring and alerting toolkit Prometheus
psutil: Python library to retrieve information on processes and system utilization
ptyprocess: Python interaction with subprocesses in a pseudoterminal
py: library with cross-python path, ini-parsing, io, code, log facilities
pynac: A fork of the symbolic computation software GiNaC that uses Python objects
r: A free software environment for statistical computing and graphics
Sage: Open Source Mathematics Software: Build system of the Sage documentation
sagenb_export: Convert legacy SageNB notebooks to Jupyter notebooks and other formats
sagetex: Embed code, results of computations, and plots from Sage into LaTeX documents
send2trash: Send file to trash natively under Mac OS X, Windows and Linux
setuptools_scm: Python build system extension to obtain package version from version control
simplegeneric: Simple single-dispatch generic functions for Python
snowballstemmer: Stemmer algorithms for natural language processing in Python
sphinxcontrib_applehelp: Sphinx extension which outputs Apple help book
sphinxcontrib_devhelp: Sphinx extension which outputs Devhelp documents
sphinxcontrib_htmlhelp: Sphinx extension which outputs HTML help book
sphinxcontrib_jsmath: Sphinx extension which renders display math in HTML via JavaScript
sphinxcontrib_qthelp: Sphinx extension which outputs QtHelp documents
sphinxcontrib_serializinghtml: Sphinx extension which outputs serialized HTML files
sympow: Computes special values of symmetric power elliptic curve L-functions
terminado: Tornado websocket backend for the term.js Javascript terminal emulator library
threejs: JavaScript library to display 3D graphics in the browser
tornado: Python web framework and asynchronous networking library
tox: tox is a generic virtualenv management and test command line tool
typing_extensions: Backported and Experimental Type Hints for Python 3.5+
vcversioner: Python build system extension to obtain package version from version control
webencodings: Character encoding aliases for legacy web content
widgetsnbextension: Jupyter notebook extension for interactive HTML widgets
Optional Packages¶
For additional functionality, you can install some of the following optional packages.
4ti2: Algebraic, geometric and combinatorial problems on linear spaces
_bootstrap: Represents system packages required for running the top-level bootstrap script
_recommended: Represents system packages recommended for additional functionality
admcycles: Computation in the tautological ring of the moduli space of curves
atlas: Automatically Tuned Linear Algebra Software (BLAS implementation)
barvinok: Projections of integer point sets of parametric polytopes
benzene: Generate fusenes and benzenoids with a given number of faces
bliss: Computing automorphism groups and canonical forms of graphs
cbc: COIN-OR branch and cut solver for mixed-integer programs
coxeter3: Library for Coxeter groups, Bruhat ordering, Kazhdan-Lusztig polynomials
cunningham_tables: List of the prime numbers occuring in the Cunningham table
d3js: JavaScript library for manipulating documents based on data
database_knotinfo: Content of the KnotInfo and LinkInfo databases as lists of dictionaries
database_mutation_class: Database of exceptional mutation classes of quivers
database_odlyzko_zeta: Table of zeros of the Riemann zeta function
database_stein_watkins: Database of elliptic curves (full version)
database_stein_watkins_mini: Database of elliptic curves (small version)
database_symbolic_data: Database from the SymbolicData project
isl: Sets and relations of integer points bounded by affine constraints
jupyterlab: An extensible environment for interactive and reproducible computing
jupyterlab_widgets: A JupyterLab extension for Jupyter/IPython widgets
kenzo: Construct topological spaces and compute homology groups
latte_int: Count lattice points, compute volumes, and integrate over convex polytopes
libnauty: Find automorphism groups of graphs, generate non-isomorphic graphs (callable library)
llvm: The LLVM Compiler Infrastructure, including the Clang C/C++/Objective-C compiler
lrslib: Reverse search algorithm for vertex enumeration and convex hull problems
mcqd: An exact algorithm for finding a maximum clique in an undirected graph
mpfrcx: Arithmetic of univariate polynomials over arbitrary precision real or complex numbers
nodejs: A JavaScript runtime built on Chrome’s V8 JavaScript engine
p_group_cohomology: Modular cohomology rings of finite groups
pandoc_attributes: A parser and generator for pandoc block attributes
pari_galpol: PARI data package for polynomials defining Galois extensions of the rationals
pari_seadata: PARI data package needed by ellap for large primes (full version)
perl_cpan_polymake_prereq: Represents all Perl packages that are prerequisites for polymake
polytopes_db_4d: Database of 4-dimensional reflexive polytopes
pybtex: A BibTeX-compatible bibliography processor in Python
qhull: Compute convex hulls, Delaunay triangulations, Voronoi diagrams
rst2ipynb: Convert reStructuredText files to Jupyter notebooks
sage_numerical_backends_coin: COIN-OR backend for Sage MixedIntegerLinearProgram
sage_numerical_backends_cplex: Cplex backend for Sage MixedIntegerLinearProgram
sage_numerical_backends_gurobi: Gurobi backend for Sage MixedIntegerLinearProgram
sage_sws2rst: Translate legacy Sage worksheet files (.sws) to reStructuredText (.rst) files
sip: Python extension module generator for C and C++ libraries
sirocco: Compute topologically certified root continuation of bivariate polynomials
snappy: Topology and geometry of 3-manifolds, with a focus on hyperbolic structures
topcom: Compute triangulations of point configurations and oriented matroids
Experimental Packages¶
Some packages that provide additional functionality are marked as “experimental”. Developers are needed in order to improve the integration of these packages into the Sage distribution.
deformation: Count points on hypersurfaces using the deformation method
gap3: A minimal distribution of GAP 3 containing packages that have no equivalent in GAP 4
lie: Library for the representation theory of complex semisimple Lie groups and algebras
perl_term_readline_gnu: Perl extension for the GNU Readline/History libraries
qepcad: Quantifier elimination by partial cylindrical algebraic decomposition
surf: Visualization of algebraic curves, algebraic surfaces and hyperplane sections of surfaces
valgrind: Memory error detector, call graph generator, runtime profiler