Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

SageMath (ранее Sage или SAGE , «Система для экспериментов с алгеброй и геометрией» [2] ) - это система компьютерной алгебры (CAS) с функциями, охватывающими многие аспекты математики , включая алгебру , комбинаторику , теорию графов , численный анализ , теорию чисел , исчисление. и статистика .

Первая версия SageMath была выпущена 24 февраля 2005 г. как бесплатное программное обеспечение с открытым исходным кодом в соответствии с условиями Стандартной общественной лицензии GNU версии 2, с первоначальной целью создания «альтернативы с открытым исходным кодом для Magma , Maple , Mathematica и MATLAB. ". [3] Инициатор и руководитель проекта SageMath, Уильям Штейн , был математиком в Университете штата Вашингтон .

SageMath использует синтаксис , напоминающий Python S», [4] , поддерживающие процедурные , функциональные и объектно-ориентированные конструкций.

Развитие [ править ]

Уильям А. Штайн

При разработке Sage Уильям Стейн осознал, что существует множество математических программных пакетов с открытым исходным кодом, уже написанных на разных языках, а именно на C , C ++ , Common Lisp , Fortran и Python .

Вместо того, чтобы изобретать колесо , Sage (который в основном написан на Python и Cython ) объединяет многие специализированные программные пакеты CAS в общий интерфейс, для которого пользователю необходимо знать только Python. Однако Sage содержит сотни тысяч уникальных строк кода, добавляющих новые функции и создающих интерфейс между его компонентами. [5]

SageMath использует для развития как студентов, так и профессионалов. Развитие SageMath поддерживается как волонтерской работой, так и грантами . [6] Однако только в 2016 году был нанят первый штатный разработчик Sage (финансируемый за счет гранта ЕС ). [7] В том же году Штайн описал свое разочарование в связи с отсутствием академического финансирования и полномочий для разработки программного обеспечения, сославшись на это как на причину своего решения оставить свою постоянную академическую должность, чтобы работать над проектом на полную ставку в недавно созданной компании. , SageMath, Inc. [7]

Достижения [ править ]

  • 2007: первая премия в отделе научного программного обеспечения на международном конкурсе бесплатных программ Les Trophées du Libre . [8]
  • 2012: один из проектов, отобранных для Google Summer of Code . [9]
  • 2013: Приз Дженкса ACM / SIGSAM. [10]

Производительность [ править ]

И двоичные файлы, и исходный код доступны для SageMath на странице загрузки. Если SageMath построен из исходного кода, многие из включенных библиотек, таких как ATLAS , FLINT и NTL, будут настроены и оптимизированы для этого компьютера с учетом количества процессоров, размера их кешей, наличия аппаратной поддержки для Инструкции SSE и т. Д.

Cython может увеличить скорость программ SageMath, как Python код преобразуется в C . [11]

Лицензирование и доступность [ править ]

SageMath - бесплатное программное обеспечение , распространяемое в соответствии с условиями Стандартной общественной лицензии GNU версии 3. [1]

Хотя Microsoft спонсировала собственную версию SageMath для операционной системы Windows , до 2016 года не было планов по созданию собственного порта, и пользователям Windows приходилось использовать технологию виртуализации, такую ​​как VirtualBox, для запуска SageMath. [12] Начиная с SageMath 8.0 (июль 2017 г.), разработка финансируется проектом OpenDreamKit , [7] он успешно построен на Cygwin , и доступен двоичный установщик для 64-разрядных версий Windows . [13]

Дистрибутивы Linux, в которых SageMath доступен в виде пакета, - это Fedora , Arch Linux , Debian , Ubuntu и NixOS . В Gentoo он доступен непрофессионалам в оверлее "sage-on-gentoo" [14] . Пакет, используемый NixOS, доступен для использования в других дистрибутивах из-за того, что его менеджер пакетов Nix не зависит от дистрибутива .

Префикс Gentoo также предоставляет Sage в других операционных системах.

Программные пакеты, содержащиеся в SageMath [ править ]

Философия SageMath заключается в использовании существующих библиотек с открытым исходным кодом везде, где они есть. Поэтому он использует множество библиотек из других проектов.

См. Также [ править ]

  • CoCalc
  • Список систем компьютерной алгебры
  • Сравнение программ численного анализа
  • Сравнение статистических пакетов

Ссылки [ править ]

  1. ^ a b "COPYING.txt - sage.git" . Хранилище мудрецов . Проверено 4 апреля 2017 года .
  2. ^ Штейн, Уильям. "SAGE: компьютерная система для экспериментов по алгебре и геометрии" . Проверено 30 марта 2012 года .
  3. Стейн, Уильям (12 июня 2007 г.). «Дни мудрецов 4» (PDF) . Архивировано из оригинального (PDF) 27 июня 2007 года . Проверено 2 августа 2007 года .
  4. ^ Анастассиу, Джордж А.; Мезей, Разван А. (2015). Численный анализ с использованием Sage . Нью-Йорк: Спрингер. стр. x1 и 1. ISBN 9783319167381.
  5. ^ «Дни мудреца 7: Комбинаторика» . SageWiki . 14 ноября 2008 . Проверено 9 декабря 2013 .
  6. ^ «Мудрец - Благодарность сторонникам» . Проверено 6 января 2017 года .
  7. ^ a b c Уильям Штайн: Истоки SageMath - создание жизнеспособной альтернативы с открытым исходным кодом для Magma, Maple, Mathematica и Matlab (презентация, 11 июня 2016 г.)
  8. ^ «Бесплатное программное обеспечение обеспечивает доступность и прозрачность математики» . Science Daily. 7 декабря 2007 . Проверено 6 января 2017 года .
  9. ^ "Система математического программного обеспечения Sage" . Google Summer of Code / Архив кода . Проверено 6 января 2017 года .
  10. ^ "Премия Мемориальной премии Ричарда Димика Дженкса 2013" . Ассоциация вычислительной техники - SIGSAM . Проверено 6 января 2017 года .
  11. ^ Штейн, Уильям (3 ноября 2010 г.). «Cython, Sage и жажда скорости» . Проверено 6 января 2017 года .
  12. Стейн, Уильям (16 марта 2012 г.). "Re: Вопрос о Sage" . Проверено 6 января 2017 года .
  13. ^ Lelièvre, Самуэль (18 августа 2017). «Установщик SageMath 8.0 для Windows» . Проверено 28 августа 2017 года .
  14. ^ "sage-on-gentoo Wiki" . Проверено 6 января 2017 года .
  15. ^ «Стандартные пакеты» . doc.sagemath.org . Проверено 6 января 2017 года .

Внешние ссылки [ править ]

  • Официальный веб-сайт