Существует ли инструмент, поддерживающий дискретную математику?
-
03-07-2019 - |
Вопрос
Дискретная математика (также конечная математика) рассматриваются такие темы, как логика, теория множеств, теория информации, частично упорядоченные множества, доказательства, отношения и ряд других тем.
Для других разделов математики существуют инструменты, поддерживающие программирование.Для получения статистики существует R и S в которые встроено множество полезных статистических функций.Для численного анализа, Октава может быть использован как отдельный язык или интегрирован в C++.
Я не знаю ни одного языка или пакета, который имел бы дело конкретно с дискретной математикой (хотя практически любой язык может быть использован для реализации алгоритмов, используемых в дискретной математике, должны существовать библиотеки или среды, разработанные специально для этих приложений).
Решение
Текущая версия Mathematica составляет 7. Стоимость лицензии:
<Ол>Выше ссылка Home Edition гласит:
Mathematica Home Edition - полнофункциональная версия Mathematica Professional с теми же функциями.
Текущая версия Maple составляет 12. Стоимость лицензии:
<Ол>И да, посмотрите Мудреца, упомянутого выше Томасом Оуэнсом.
Другие советы
Математика
Mathematica имеет пакет Combinatorica, который, хотя и весьма почтенный на данный момент, обеспечивает значительную поддержку комбинаторики и графиков. Такие команды доступны: NecklacePolynomial [8, m, Циклический]; GrayCodeSubsets [{1, 2, 3, 4}]; IntegerPartitions [6] р>
Я бы сказал, что Mathematica - ваш лучший выбор .. даже если он не поставляется с некоторыми функциональными возможностями из коробки, он имеет очень хорошо разработанные дополнительные пакеты, доступные для него в сети
проверить >
Вас могут заинтересовать ссылки для теории чисел, графических визуализаций
Я также нашел мудреца . Похоже, что ближе всего к Mathematica это открытый исходный код, но я не уверен, насколько хорошо он справляется с дискретной математикой.
Stanford GraphBase , написанная в основном Дональдом Кнутом, является отличным пакет для комбинаторных вычислений. Я бы не назвал это обширной кодовой базой, но в ней есть отличная поддержка графов, и с точки зрения теории графов можно сформулировать большое количество дискретной математики. Он написан на CWEB, который (IMO) является более читаемой версией C.
РЕДАКТИРОВАТЬ: это бесплатно.
Я люблю Mathematica и использовал ее для создания прототипов идей во время моей докторской диссертации по вычислительной физике.Однако Mathematica старается быть всем для всех людей, и в этом есть несколько недостатков:
- Поскольку компания является коммерческой, исправления ошибок иногда появляются в следующем крупном выпуске:ты платишь.
- Поскольку продукт является проприетарным, совместное использование кода с людьми, не относящимися к Mathematica (всему миру), проблематично.
- Новые функции часто являются незавершенными и ломаются, когда вы пытаетесь вывести их за рамки встроенного примера.
- Его пользовательская база (учебные пособия, советы, внешние библиотеки) менее активна, чем, скажем, у python,
- Многопанельные цифры сгенерировать сложно;видишь СкиДроу библиотека.
При этом основная функциональность Mathematica удивительна по следующим причинам:
- Его математическая функциональность по умолчанию достаточно надежна, что позволяет быстро принимать решения.
- Это позволяет осуществлять как функциональное, так и процедурное программирование.
- Можно быстро кодировать и публиковать в различных форматах:pdf, интерактивный веб-сайт.
- Новый Дискретный Книга вышел.
Итог
- Пользователям Apple, ожидающим простоты использования, Mathematica понравится за то, что она похожа на Apple и позволяет быстро вставать и работать.
- Пользователи Linux, которым нужна расширяемость, сочтут Mathematica разочаровывающей из-за ее дизайна, похожего на Apple, с приваренной коробкой.