33

Кто-нибудь знает какие-либо ресурсы (книги, классы, лекции или что-либо еще) об общей теории систем компьютерной алгебры (например, mathematica, sympy)?Введение в системы компьютерной алгебры?

«Вводные» материалы являются предпочтительными, но я понимаю, что с таким специализированным предметом все должно быть достаточно продвинутым.

ответ

30

«Общая теория» КАН довольно огромный простор для вопроса. При этом я сделаю все возможное, чтобы как можно больше накрывать надежды на то, что что-то поможет вам найти то, что вы ищете :)

В материалах групп ISSAC и SIGSAM, несомненно, есть некоторые хорошие вещи о методах построения систем CAS. Список различных тем в общей области здания CAS можно найти здесь: http://www.cs.berkeley.edu/~fateman/algebra.html

Если вы больше ищите информацию о том, как закодировать часть математики, я являюсь поклонником «Численных рецептов», серии; он предоставляет пример кода и достаточно приличное объяснение математики по широкому кругу тем. Последнее, что я проверил, онлайн-версию более старой версии книги была доступна здесь: http://www.nrbook.com/a/bookcpdf.php (Обратите внимание, что это форма «Численные рецепты в C», есть версии на других языках).

Для создания CAS в целом одно место для запуска может быть здесь: «Построение среды компьютерной алгебры по составу совместных инструментов» Кайлера и Сафира; Другое место, которое вы можете проверить, находится здесь: http://www.math.wpi.edu/IQP/BVCalcHist/calc5.html, где перечислены описания на высоком уровне того, как несколько человек внедрили CAS.

Другая вещь, которую вы могли бы попробовать дайвинг в код несколько CAS проектов с открытым исходным кодом, которые существуют: YACAS (Yet Another система компьютерной алгебры: Java), Axiom и т.д. Мне нравится список здесь: http://en.wikipedia.org/wiki/List_of_computer_algebra_systems

Надеюсь, что-то там было полезно!

+0

Спасибо за информацию, я проверю ссылки и, возможно, буду приставать к вам за дополнительной информацией в будущем. – 2008-12-08 15:53:11

6

я нашел алгоритмы компьютерной алгебры по нокаут Геддес ... будет очень полезен. Я младший студент с легким математическим фоном, работающим над OpenAxiom (CAS). Приготовьтесь к тяжелой, тяжелой математике, хотя мой лучший совет - иметь пару книг, если только иметь другую перспективу, если вы «застряли».

Это может помочь, если вы предлагаете то, что вы ищете в, какие области вы заинтересованы в и т.д.

6

Основы красиво покрыты: PAIP; исходный код free online - см., в частности, исходные файлы с именем «macsyma» в названии. Темы включают системы rewrite-rule, упрощение с использованием канонических форм, интеграцию и дифференциацию, а также компиляцию и запоминание правил перезаписи для скорости.

1

В своем вопросе вы указываете SymPy, поэтому я поговорю с этим кратко.

Проект и сообщество SymPy сами по себе являются очень хорошими ресурсами.

  1. Существует множество экспертов, которые регулярно проверяют и реагируют на mailing list.
  2. Код открыто доступен on github.
  3. documentation довольно полный и часто включает в себя академические цитаты.

Если вас интересует CASs, пройдите мимо. Участникам нравится говорить о том, над чем они работают. Если вам интересно, это easy to get started и добавьте свои собственные взносы.

3

Вот две книги, описывающие алгоритмы, используемые для реализации систем компьютерной алгебры:

Computer Algebra and Symbolic Computation: Elementary Algorithms

Computer Algebra and Symbolic Computation: Mathematical Methods

Я использовал эти книги для реализации библиотеки для компьютерной алгебры в схеме (MPL) и C# (Symbolism).