LINUX.ORG.RU

системы символьных вычислений

 


0

1

хочу понять как пишутся алгоритмы для символьных вычислений, типа того что делает Maple или Mathematica

упрощение выражений, дифференцирование, и тому подобное

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

начал смотреть код cadabra2, но пока мне там ничего не понятно


статьи нужно читать, а не код. и книжки по математике. без теор знаний нихрена ты код там не поймёшь.

anonymous
()

Смотри код SymPy и книгу «Символьный C++. Введение в компьютерную алгебру с использованием объектно-ориентированного программирования»

AKonia ★★★
()

не знаю, то или нет, но в maxima открытый исходный код и написано на lisp вроде

IvanR ★★★
()

SICP вторая глава.

ugoday ★★★★★
()

хочу понять как пишутся алгоритмы для символьных вычислений, типа того что делает Maple или Mathematica

Для затравки ознакомься с книгой `Искусство программирования на языке пролог` за авторством Стерлинга и Шапиро, там был пример программы для символьных вычислений по решению полинома.
Но сразу предупреждаю, при всей простоте изложения тема крышеснос.

В общем тебе надо искать пересечение `символьные вычисления` и языки программирования Lisp или Prolog, я посмотрел, поисковая выдача по Прологу довольно замусоренная, но может тебе и повезёт.

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

Prolog это просто `функциональный` язык логического программирования, популярный, но как я читал не самый совершенный.

Так же тебе надо ознакомится с концепцией логического и функционального программирования вообще.

torvn77 ★★★★★
()
Последнее исправление: torvn77 (всего исправлений: 2)

Выражение представляется в виде дерева, дальше есть правила преобразования этого дерева.

Можно ручками написать символьное дифференцирование например, на питоне это просто.

AntonI ★★★★★
()

соглашусь с тем, что код читать достаточно бесполезно, лучше книжку.

относительно стандартный рабоче-крестьянский текст на эту тему: https://www.goodreads.com/book/show/620875.Computer_Algebra_and_Symbolic_Computation (там две части, тебе стоит начать с elementary algorithms. легко найдётся в pdf)

вот тут в принципе полезные рекомендации (существенную часть ссылок придётся читать через wayback machine): https://stackoverflow.com/questions/348847/introduction-to-computer-algebra-systems

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.