ФриКАС

Система компьютерной алгебры
ФриКАС
РазработчикВальдек Хебиш + независимая группа людей
Стабильный релиз
1.3.11 / 1 июля 2024 г. ; 6 месяцев назад ( 2024-07-01 )
Язык реализацииSPAD, Aldor , Boot, Common Lisp
ОСКроссплатформенный
ЛицензияИзмененная лицензия BSD
Расширения имени файла.spad, .input,.as
Веб-сайтfricas.github.io

FriCAS — это универсальная система компьютерной алгебры , которая уделяет большое внимание математическим исследованиям и разработке новых алгоритмов . Она включает в себя интерпретатор , компилятор и постоянно растущую библиотеку [1] из более чем 1000 доменов и категорий.

FriCAS предоставляет строго типизированный язык программирования высокого уровня, называемый SPAD, и похожий интерактивный язык, который использует вывод типов для удобства. Aldor был намеренно разработан как компилятор следующего поколения для Axiom CAS и его ответвлений . FriCAS (опционально) позволяет запускать программы Aldor. Оба языка имеют схожий синтаксис и сложную ( зависимую ) систему типов . [2] [3] [4]

FriCAS полностью документирован и доступен в виде исходного кода и бинарного дистрибутива для наиболее распространенных платформ. Компиляция исходников требует, помимо прочих предпосылок, среду Common Lisp (в которой многие из основных реализаций поддерживаются и свободно доступны как открытый исходный код ).

FriCAS работает на многих платформах POSIX , таких как Linux , macOS , Unix , BSD , а также под Cygwin и Microsoft Windows ( WSL ).

История

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

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

Scratchpad II был переименован в Axiom, когда IBM решила, примерно в 1990 году, сделать его коммерческим продуктом. Несколько лет спустя он был продан NAG . В 2001 году он был отозван с рынка и переиздан Тимом Дейли по лицензии Modified BSD . В 2007 году Axiom был разделен на FriCAS Вальдеком Хебишем после поддержки со стороны Тима Дейли [9] для разрешения разногласий относительно целей проекта. [10]

Примеры

FriCAS имеет в значительной степени полную реализацию алгоритма Риша–Бронштейна–Трейгера . [11]

Еще одна полезная функция — поток :

)установить поток рассчитать 5exp_series := series(exp x, x=0)

        1 + х + 1 2   х 2 + 1 6   х 3 + 1 24   х 4 + 1 120   х 5 + О ( х 6 ) {\displaystyle \ \ \ \ 1+x+{{\frac {1}{2}}\ {{x}^{2}}}+{{\frac {1}{6}}\ {{x}^{3}}}+{{\frac {1}{24}}\ {{x}^{4}}}+{{\frac {1}{120}}\ {{x}^{5}}}+{O\left({{x}^{6}}\right)}}

Тип: ОдномерныйPuiseuxSeries(Выражение(Целое число),x,0)

Таким образом, можно получить любой коэффициент, например : н = 40 {\displaystyle n=40}

коэффициент(exp_series,40)

        1 815915283247897734345611269596115894272000000000 {\displaystyle \ \ \ \ {\frac {1}{815915283247897734345611269596115894272000000000}}}

Тип: Выражение(Целое число)


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

Ссылки

  1. ^ API FriCAS
  2. ^ Полл, Эрик; Томпсон, Саймон (май 1998 г.). «Добавление аксиом в Axiom: к системе автоматизированного рассуждения в Aldor» (монография) . Получено 27.01.2017 .
  3. ^ Полл, Эрик; Томпсон, Саймон. «Система типов Алдора» (Монография) . Получено 27.01.2017 .
  4. ^ Poll, Erik; Thompson, Simon. «Integrating Computer Algebra and Reasoning through the Type System of Aldor». В Hélène Kirchner; Christophe Ringeissen (ред.). Frontiers of Combining Systems . 3rd International Workshop on Frontiers of Combining Systems (FroCoS 2000). Vol. 1794. Nancy, France: Springer-Verlag Berlin. pp.  136–150 . ISBN 978-3-540-67281-4. Получено 27.01.2017 .
  5. ^ Фитч, Джон (23 июля 2012 г.). «Джеймс Грайсмер 1929--2011». ACM Communications in Computer Algebra . 46 (1/2): 10– 11. doi : 10.1145/2338496.2338499 . S2CID  36788754.
  6. ^ «Система компьютерной алгебры Axiom». axiom-developer.org .
  7. ^ «Биографическая информация Ричарда Д. Дженкса». www.eecis.udel.edu .
  8. ^ "EUROCAL '85 | SpringerLink". www.springer.com .
  9. ^ "[Axiom-developer] Скромное предложение". lists.nongnu.org .
  10. ^ "История — FriCAS". fricas.github.io .
  11. ^ "MathAction RischImplementationStatus". wiki.fricas.org . Получено 2021-10-03 .
  • Домашняя страница FriCAS
  • ФриКАС Вики
  • SandBox: Попробуйте FriCAS онлайн
  • Документация на fricas.github.io
  • API FriCAS (сфинкс)
  • Репозитории исходного кода: SourceForge, GitHub
  • Розеттский камень (pdf)
  • Розеттский камень (некоторые другие форматы)
  • Розеттский камень (html)
  • rosettacode.org, Категория:SPAD
  • Форум: fricas-devel
  • Ядро FriCAS Jupyter (jfricas/src)
  • FriCAS Jupyter (pypi)

Связанный:

Взято с "https://en.wikipedia.org/w/index.php?title=FriCAS&oldid=1232389584"