Yacas
Yacas /ˈjækəs/ — система компьютерной алгебры. Название — акроним от Yet Another Computer Algebra System (Ещё одна компьютерная алгебраическая система)[2].
Yacas | |
---|---|
Тип | Система компьютерной алгебры |
Написана на | C++ |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 1999 |
Последняя версия | |
Лицензия | LGPLv2.1+ |
Сайт | yacas.org |
Выпускается под лицензией GNU Lesser General Public License. Yacas свободное программное обеспечение[3].
История
Система компьютерной алгебры Yacas начала создаваться с начала 1999 года. Разработчики преследовали цель создать компактную систему для лёгкого построения и исследования символьных математических алгоритмов. Другая задача — разработать полноценную систему компьютерной алгебры.
По состоянию на версию 1.0.49 Yacas содержал 22 тысячи строчек на C++ и 13 тысяч на скриптовом языке[4].
Особенности
англ. Ayal Z. Pinkus и англ. Serge Winitzki из Университета Тафтса замечают, что программное обеспечение, кроме свободности, ещё обладает богатым и гибким скриптовым языком. Он похож на LISP, но имеет рекурсивный инфиксный синтаксический анализатор грамматики, включающий преобразование выражений, и поддерживает определение инфиксных операторов[4].
Новые правила могут объявляться динамически как побочный эффект при вычислении, то есть нет никакого предзадекларированного алфавита ранжирования. Новые правила можно вводить в зависимости от аргументов и стирать.
Описание
Yacas — программа для символьного вычисления математическими выражениями[5]. В ней используется собственный язык программирования, предназначенный как для символьных, так и для числовых вычислений произвольной точности. Его разработка началась в начале 1999 года.
Ввод и вывод обрабатывается в простом ASCII или OpenMath, интерактивно или в пакетном режиме.
Системно есть библиотека скриптов, реализующих многие операции символьной алгебры; новые алгоритмы могут быть легко добавлены в библиотеку.
Yacas устанавливается с обширной документацией, охватывающей язык сценариев с реализованными функциональными возможностями и алгоритмами.
Примеры
Построение простого графика функции:
In> Plot2D(Cos(x))
Out> True
Галерея
- Ряд Тейлора для аркосинуса в нуле.
- Интерфейс Online Yacas
Документация
Документация Yacas доступна на официальном сайте.
|
История версий
Ниже описаны последние релизы Yacas.
Версия | Дата Релиза | Описание |
---|---|---|
1.4.0 | 4 февраля 2016 года | Первый релиз, размещённый на GitHub; изменена лицензия; перевод сайта на новый дизайн и обновление документации. |
1.5.0 | 9 мая 2016 года | Добавлены несколько улучшений, убраны Java-апплеты. |
1.6.0. | 3 ноября 2016 года | Обновление затронуло текстовую консоль, графический интерфейс и ядро yacas для Jupyter Notebook. Добавлен Yacas Online. |
1.6.1 | 8 ноября 2016 года | Исправлены проблемы с графической консолью. |
1.7.0 | 26 июня 2019 года | Добавлены несколько новых правил; cyacas стал совместим с C++ 17 и улучшена производительность; изменены движки для GUI. |
1.8.0 | 31 октября 2019 года | Solve() теперь решает простые системы из многочленов; GUI использует plotly. |
1.9.1 | 4 июля 2020 года | В Jupyter добавлены графики. |
Примечания
- Release 1.9.1 — 2020.
- SD-CAS: Spin Dynamics by Computer Algebra System
- Free software and open source applications in higher education
- Volker Sorge, Belaid Benhamou, Laurent Henocque, Jacques Calmet, Olga Caprotti. Artificial Intelligence, Automated Reasoning, and Symbolic Computation. — 2002.
- англ. Semantic Evaluation Services for Web-Based Exercises