stringtranslate.com

Аксиома (система компьютерной алгебры)

Axiomбесплатная система компьютерной алгебры общего назначения . Он состоит из среды интерпретатора, компилятора и библиотеки, которая определяет строго типизированную иерархию.

История

Две системы компьютерной алгебры под названием Scratchpad были разработаны IBM . Первый был начат в 1965 году Джеймсом Грисмером [2] по просьбе Ральфа Гомори и написан на Фортране . [3] Разработка этого программного обеспечения была остановлена ​​до его публичного выпуска. Второй блокнот, первоначально называвшийся Scratchpad II , разрабатывался с 1977 года в Исследовательском центре Томаса Дж. Уотсона под руководством Ричарда Димика Дженкса. [4]

Разработка в основном принадлежит Ричарду Д. Дженксу (IBM Research), Джеймсу Х. Давенпорту (Университет Бата), Барри М. Трэгеру (IBM Research), Дэвиду Ю. Юну (Южный методистский университет) и Виктору С. Миллеру (IBM Research). ). Первыми консультантами проекта были Дэвид Бартон (Калифорнийский университет, Беркли) и Джеймс Тэтчер (IBM Research). В реализации участвовали Роберт Сутор (IBM Research), Скотт С. Моррисон (Калифорнийский университет, Беркли), Кристин Дж. Сундаресан (IBM Research), Тимоти Дейли (IBM Research), Патриция Джанни (Университет Пизы), Альбрехт Фортенбахер (Университет Карлсруэ). ), Стивен М. Ватт (IBM Research и Университет Ватерлоо), Джош Коэн (Йельский университет), Майкл Ротштейн (Кентский государственный университет), Мануэль Бронштейн (IBM Research), Майкл Монаган (Университет Саймона Фрейзера), Джонатан Стейнбах (IBM Research) ), Уильям Бердж (IBM Research), Джим Вен (IBM Research), Уильям Сит (Городской колледж Нью-Йорка) и Клифтон Уильямсон (IBM Research) [5]

Scratchpad II был переименован в Axiom , когда примерно в 1990 году IBM решила сделать его коммерческим продуктом. Через несколько лет он был продан NAG . В 2001 году он был отозван с рынка и перевыпущен под модифицированной лицензией BSD . С тех пор ведущим разработчиком проекта является Тим Дейли.

В 2007 году Axiom дважды разветвлялась , в результате чего возникло два разных проекта с открытым исходным кодом : OpenAxiom [6] и FriCAS [7] из -за «серьезных разногласий по поводу целей проекта». [8] Проект Axiom продолжал развиваться Тимом Дейли.

Текущее направление исследований — «Доказательство разумности аксиомы», то есть логичности, рациональности, рассудительности и здравости.

Дизайн

В Axiom каждый объект имеет тип. Примерами типов являются математические структуры (такие как кольца , поля , полиномы ), а также структуры данных из информатики (например, списки , деревья , хеш-таблицы ).

Функция может принимать тип в качестве аргумента, и ее возвращаемое значение также может быть типом. Например, Fractionэто функция, которая принимает IntegralDomainв качестве аргумента и возвращает поле дробей своего аргумента. Другой пример: кольцо матриц с рациональными элементами будет построено как . Конечно, при работе в этой области интерпретируется как единичная матрица и дает обратную матрицу , если она существует.SquareMatrix(4, Fraction Integer)1A^-1A

Несколько операций могут иметь одно и то же имя, а типы аргументов и результата используются для определения того, какая операция применяется (см. перегрузку функции ).

Axiom поставляется с языком расширения SPAD. Все математические знания Аксиомы записаны на этом языке. Переводчик принимает примерно тот же язык.

Функции

В среде интерпретатора Axiom использует вывод типов и эвристический алгоритм, чтобы сделать явные аннотации типов практически ненужными.

Он имеет HyperDoc, интерактивную справочную систему, похожую на браузер, и может отображать двух- и трехмерную графику, а также предоставляет интерактивные функции, такие как вращение и освещение. Он также имеет специализированный режим взаимодействия для Emacs , а также плагин для редактора TeXmacs .

В Axiom есть реализация алгоритма Риша для элементарного интегрирования, разработанная Мануэлем Бронштейном и Барри Трэгером. Хотя эта реализация может найти большинство элементарных первообразных и узнать, существуют ли они, она имеет некоторые нереализованные ветки и вызывает ошибку, когда такие случаи встречаются во время интеграции. [9] [10]

Смотрите также

Рекомендации

  1. ^ "Теги Дейли / аксиомы" . Докер-хаб . Проверено 25 марта 2022 г.
  2. Fitch, Джон (23 июля 2012 г.). «Джеймс Грисмер 1929–2011». ACM-коммуникации в компьютерной алгебре . 46 (1/2): 10–11. дои : 10.1145/2338496.2338499 . S2CID  36788754.
  3. ^ "Система компьютерной алгебры Axiom" . axiom-developer.org .
  4. ^ "Биографические данные Ричарда Д. Дженкса" . www.eecis.udel.edu .
  5. ^ "ЕВРОКАЛ '85 | SpringerLink" . www.springer.com .
  6. ^ «OpenAxiom: Открытая платформа научных вычислений» . www.open-axiom.org .
  7. ^ "FriCAS 18a5ef5d99c796a89efeac06df40043a85b3d44d — FriCAS" . fricas.github.io .
  8. ^ «История — FriCAS». fricas.github.io .
  9. Бронштейн, Мануэль (5 сентября 2003 г.). «Мануэль Бронштейн об интеграционных возможностях Axiom». groups.google.com . Проверено 10 февраля 2023 г.
  10. ^ «интеграция - существует ли полная реализация алгоритма Риша?». MathOverflow . 15 октября 2020 г. Проверено 10 февраля 2023 г.

дальнейшее чтение

Внешние ссылки

СМИ, связанные с Axiom (программное обеспечение компьютерной алгебры) на Викискладе?

Программные форки: