SageMath

SageMath Descrizione dell'immagine Sage logo new.png. Descrizione di questa immagine, commentata anche di seguito Interfaccia (Jupyter) in un browser per SageMath Informazione
Sviluppato da William Stein et al.
Prima versione 2005
Ultima versione 9.3 (9 maggio 2021)
Depositare git.sagemath.org/sage.git
Scritto in Python , Cython , C , C++ e Fortran
Sistema operativo Linux , Microsoft Windows e macOS
Ambiente Multipiattaforma
genere Sistema di computer algebra
Licenza GNU General Public License versione 2
Sito web sagemath.org

SageMath (precedentemente Sage) è un software di calcolo matematico generico gratuito .

Il progetto SageMath mira a "sviluppare un'alternativa open source praticabile" ai sistemi algebrici Magma , Maple e Mathematica e al software di calcolo digitale MATLAB .

SageMath ha funzionalità avanzate in aree come l'algebra lineare , l' algebra commutativa , la teoria dei numeri o la combinatoria algebrica .

D'altra parte, il suo supporto per il calcolo simbolico classico ( somma e integrazione simbolica , risoluzione di equazioni differenziali , asintotica ...), punto di forza di sistemi come Maple e Mathematica, è in questa fase limitato.

Un'importante originalità architettonica di SageMath, rispetto alla maggior parte degli altri sistemi di computer algebra, è il modo in cui si basa sul software esistente. Anziché fornire un linguaggio di comando specifico, SageMath utilizza Python , un linguaggio di programmazione generico preesistente. Le stesse funzionalità matematiche sono inoltre largamente basate su altri software, che SageMath include e per i quali unifica l'interfaccia.

Il sistema SageMath è quindi composto sia da una distribuzione di software di terze parti, da una libreria Python per il calcolo matematico, alcune delle cui funzionalità richiamano direttamente il software della distribuzione, sia da interfacce utente che consentono l'utilizzo interattivo di tale libreria.

SageMath è rilasciato sotto i termini della GNU General Public License Versione 2.

Caratteristiche

Oltre alle sue funzionalità matematiche, SageMath fornisce un'interfaccia Python per il software che include, ad esempio Maxima , PARI/GP e Singular , nonché per vari software matematici non integrati come Fricas , gnuplot , GNU Octave , Maple, Magma e Matematica.

La sua interfaccia a riga di comando è basata su IPython . Un "preparatore" aggiunge al linguaggio Python alcune estensioni sintattiche che facilitano l'uso interattivo della libreria Sage. Inoltre, un'interfaccia grafica chiamata notebook ("blocco note"), che funziona in un browser Web, consente di creare fogli di calcolo combinando testo e calcoli effettuati con SageMath o altri software. Tramite questa interfaccia web è possibile connettersi a un server SageMath installato su un computer remoto. Diversi server SageMath pubblici ora consentono di utilizzare SageMath senza installarlo sul proprio computer.

Architettura

La libreria SageMath è scritta principalmente nei linguaggi Python e nella programmazione Cython . Tra i software matematici esterni su cui si basa in maniera maggiore possiamo citare le librerie MPIR , MPFR , Flint , NTL , o anche Linbox , oltre ai più specializzati software di computer algebra GAP , Maxima , PARI/GP e Singular. . Questi sono scritti in particolare in C , C++ , Python , Lisp e Fortran .

Vedi anche

Articoli Correlati

link esterno

Riferimento

  1. Tour della versione Sage 9.3  "
  2. https://raw.github.com/sagemath/sage/master/README.txt
  3. http://alpha.sagenb.org "Copia archiviata" (versione del 23 luglio 2018 su Internet Archive ) https://cloud.sagemath.com https://sagecell.sagemath.org
  4. Sage ha componenti significativi scritti nei seguenti linguaggi: C/C++, Python, Lisp e Fortran. File LEGGIMI.txt; versione 4.2