De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

SageMath (anteriormente Sage o SAGE , "Sistema de experimentación de álgebra y geometría" [2] ) es un sistema de álgebra computarizado (CAS) con características que cubren muchos aspectos de las matemáticas , incluyendo álgebra , combinatoria , teoría de grafos , análisis numérico , teoría de números , cálculo y estadísticas .

La primera versión de SageMath fue lanzada el 24 de febrero de 2005 como software libre y de código abierto bajo los términos de la GNU General Public License versión 2, con los objetivos iniciales de crear una "alternativa de código abierto a Magma , Maple , Mathematica y MATLAB ". [3] El creador y líder del proyecto SageMath, William Stein , era un matemático de la Universidad de Washington .

SageMath usa una sintaxis parecida a la de Python , [4] soportando construcciones procedimentales , funcionales y orientadas a objetos .

Desarrollo [ editar ]

William A. Stein

William Stein se dio cuenta en el diseño de Sage que había muchos paquetes de software de código abierto matemáticas ya escritos en diferentes idiomas, a saber, C , C ++ , Common Lisp , Fortran y Python .

En lugar de reinventar la rueda , Sage (que está escrito principalmente en Python y Cython ) integra muchos paquetes de software CAS especializados en una interfaz común, para lo cual el usuario solo necesita conocer Python. Sin embargo, Sage contiene cientos de miles de líneas de código únicas que agregan nuevas funciones y crean la interfaz entre sus componentes. [5]

SageMath utiliza tanto estudiantes como profesionales para el desarrollo. El desarrollo de SageMath está respaldado tanto por trabajo voluntario como por subvenciones . [6] Sin embargo, no fue hasta 2016 que se contrató al primer desarrollador de Sage a tiempo completo (financiado por una subvención de la UE ). [7] El mismo año, Stein describió su decepción por la falta de financiación académica y credenciales para el desarrollo de software, y lo citó como la razón de su decisión de dejar su puesto académico titular para trabajar a tiempo completo en el proyecto en una empresa recién fundada. , SageMath, Inc. [7]

Logros [ editar ]

  • 2007: primer premio en la división de software científico de Les Trophées du Libre , un concurso internacional de software libre. [8]
  • 2012: uno de los proyectos seleccionados para el Google Summer of Code . [9]
  • 2013: Premio ACM / SIGSAM Jenks. [10]

Rendimiento [ editar ]

Tanto los binarios como el código fuente están disponibles para SageMath desde la página de descarga. Si SageMath se construye a partir del código fuente, muchas de las bibliotecas incluidas, como OpenBLAS , FLINT , GAP (sistema de álgebra informática) y NTL , se ajustarán y optimizarán para esa computadora, teniendo en cuenta la cantidad de procesadores y el tamaño de sus cachés. , si hay soporte de hardware para instrucciones SSE , etc.

Cython puede aumentar la velocidad de los programas de SageMath, como el Python código se convierte en C . [11]

Licencias y disponibilidad [ editar ]

SageMath es software libre , distribuido bajo los términos de la Licencia Pública General GNU versión 3. [1]

Aunque Microsoft patrocinaba una versión nativa de SageMath para el sistema operativo Windows , antes de 2016 no había planes para un puerto nativo y los usuarios de Windows tenían que usar tecnología de virtualización como VirtualBox para ejecutar SageMath. [12] A partir de SageMath 8.0 (julio de 2017), con el desarrollo financiado por el proyecto OpenDreamKit , [7] se basa con éxito en Cygwin , y hay disponible un instalador binario para versiones de 64 bits de Windows . [13]

Las distribuciones de Linux en las que SageMath está disponible como paquete son Fedora , Arch Linux , Debian , Ubuntu y NixOS . En Gentoo , está disponible vía layman en la superposición "sage-on-gentoo" [14] . El paquete utilizado por NixOS está disponible para su uso en otras distribuciones, debido a la naturaleza independiente de la distribución de su administrador de paquetes, Nix .

El prefijo de Gentoo también proporciona Sage en otros sistemas operativos.

Paquetes de software contenidos en SageMath [ editar ]

La filosofía de SageMath es utilizar las bibliotecas de código abierto existentes dondequiera que existan. Por lo tanto, utiliza muchas bibliotecas de otros proyectos.

Ver también [ editar ]

  • CoCalc
  • Lista de sistemas de álgebra informática
  • Comparación de software de análisis numérico
  • Comparación de paquetes estadísticos

Referencias [ editar ]

  1. ^ a b "COPIA.txt - sage.git" . El repositorio de salvia . Consultado el 4 de abril de 2017 .
  2. ^ Stein, William. "SAGE: un sistema informático para la experimentación de álgebra y geometría" . Consultado el 30 de marzo de 2012 .
  3. ^ Stein, William (12 de junio de 2007). "Días sabios 4" (PDF) . Archivado desde el original (PDF) el 27 de junio de 2007 . Consultado el 2 de agosto de 2007 .
  4. ^ Anastassiou, George A .; Mezei, Razvan A. (2015). Análisis numérico utilizando Sage . Nueva York: Springer. págs. x1 y 1. ISBN 9783319167381.
  5. ^ "Días sabios 7: Combinatoria" . SageWiki . 14 de noviembre de 2008 . Consultado el 9 de diciembre de 2013 .
  6. ^ "Sage - reconocimiento a los partidarios" . Consultado el 6 de enero de 2017 .
  7. ^ a b c William Stein: Los orígenes de SageMath: creación de una alternativa viable de código abierto a Magma, Maple, Mathematica y Matlab (presentación, 11 de junio de 2016)
  8. ^ "El software libre aporta asequibilidad, transparencia a las matemáticas" . Ciencia diaria. 7 de diciembre de 2007 . Consultado el 6 de enero de 2017 .
  9. ^ "Sistema de software matemático sabio" . Google Summer of Code / Code-in Archive . Consultado el 6 de enero de 2017 .
  10. ^ "Premio Richard Dimick Jenks Memorial Prize 2013" . Asociación de Maquinaria Informática - SIGSAM . Consultado el 6 de enero de 2017 .
  11. ^ Stein, William (3 de noviembre de 2010). "Cython, Sage y Need for Speed" . Consultado el 6 de enero de 2017 .
  12. ^ Stein, William (16 de marzo de 2012). "Re: Pregunta sobre Sage" . Consultado el 6 de enero de 2017 .
  13. Lelievre, Samuel (18 de agosto de 2017). "Instalador de SageMath 8.0 para Windows" . Consultado el 28 de agosto de 2017 .
  14. ^ "Wiki de salvia sobre gentoo" . Consultado el 6 de enero de 2017 .
  15. ^ "Paquetes estándar" . doc.sagemath.org . Consultado el 6 de enero de 2017 .

Enlaces externos [ editar ]

  • Página web oficial