C/C++ Library Interfaces#
An underlying philosophy in the development of Sage is that it should provide unified library-level access to the some of the best GPL’d C/C++ libraries. Sage provides access to many libraries which are included with Sage.
The interfaces are implemented via shared libraries and data is
moved between systems purely in memory. In particular, there is no
interprocess interpreter parsing (e.g., pexpect
),
since everything is linked together and run as a single process.
This is much more robust and efficient than using pexpect
.
Each of these interfaces is used by other parts of Sage. For example, eclib is used by the elliptic curves module to compute ranks of elliptic curves and PARI is used for computation of class groups. It is thus probably not necessary for a casual user of Sage to be aware of the modules described in this chapter.
ECL#
eclib#
FLINT#
Giac#
GMP-ECM#
GSL#
lcalc#
libSingular#
GAP#
- Context Managers for LibGAP
- Common global functions defined by GAP.
- Long tests for GAP
- Utility functions for GAP
- Library Interface to GAP
- Short tests for GAP
- GAP element wrapper
GapElement
GapElement_Boolean
GapElement_Cyclotomic
GapElement_FiniteField
GapElement_Float
GapElement_Function
GapElement_Integer
GapElement_IntegerMod
GapElement_List
GapElement_MethodProxy
GapElement_Permutation
GapElement_Rational
GapElement_Record
GapElement_RecordIterator
GapElement_Ring
GapElement_String
- LibGAP Workspace Support
LinBox#
lrcalc#
mpmath#
NTL#
PARI#
Symmetrica#
- Symmetrica library
bdg_symmetrica()
chartafel_symmetrica()
charvalue_symmetrica()
compute_elmsym_with_alphabet_symmetrica()
compute_homsym_with_alphabet_symmetrica()
compute_monomial_with_alphabet_symmetrica()
compute_powsym_with_alphabet_symmetrica()
compute_schur_with_alphabet_det_symmetrica()
compute_schur_with_alphabet_symmetrica()
dimension_schur_symmetrica()
dimension_symmetrization_symmetrica()
divdiff_perm_schubert_symmetrica()
divdiff_schubert_symmetrica()
gupta_nm_symmetrica()
gupta_tafel_symmetrica()
hall_littlewood_symmetrica()
kostka_number_symmetrica()
kostka_tab_symmetrica()
kostka_tafel_symmetrica()
kranztafel_symmetrica()
mult_monomial_monomial_symmetrica()
mult_schubert_schubert_symmetrica()
mult_schubert_variable_symmetrica()
mult_schur_schur_symmetrica()
ndg_symmetrica()
newtrans_symmetrica()
odd_to_strict_part_symmetrica()
odg_symmetrica()
outerproduct_schur_symmetrica()
part_part_skewschur_symmetrica()
plethysm_symmetrica()
q_core_symmetrica()
random_partition_symmetrica()
scalarproduct_schubert_symmetrica()
scalarproduct_schur_symmetrica()
schur_schur_plet_symmetrica()
sdg_symmetrica()
specht_dg_symmetrica()
start()
strict_to_odd_part_symmetrica()
t_ELMSYM_HOMSYM_symmetrica()
t_ELMSYM_MONOMIAL_symmetrica()
t_ELMSYM_POWSYM_symmetrica()
t_ELMSYM_SCHUR_symmetrica()
t_HOMSYM_ELMSYM_symmetrica()
t_HOMSYM_MONOMIAL_symmetrica()
t_HOMSYM_POWSYM_symmetrica()
t_HOMSYM_SCHUR_symmetrica()
t_MONOMIAL_ELMSYM_symmetrica()
t_MONOMIAL_HOMSYM_symmetrica()
t_MONOMIAL_POWSYM_symmetrica()
t_MONOMIAL_SCHUR_symmetrica()
t_POLYNOM_ELMSYM_symmetrica()
t_POLYNOM_MONOMIAL_symmetrica()
t_POLYNOM_POWER_symmetrica()
t_POLYNOM_SCHUBERT_symmetrica()
t_POLYNOM_SCHUR_symmetrica()
t_POWSYM_ELMSYM_symmetrica()
t_POWSYM_HOMSYM_symmetrica()
t_POWSYM_MONOMIAL_symmetrica()
t_POWSYM_SCHUR_symmetrica()
t_SCHUBERT_POLYNOM_symmetrica()
t_SCHUR_ELMSYM_symmetrica()
t_SCHUR_HOMSYM_symmetrica()
t_SCHUR_MONOMIAL_symmetrica()
t_SCHUR_POWSYM_symmetrica()
test_integer()