Есть ли инструмент, который поддерживает дискретную математику? - PullRequest
5 голосов
/ 22 октября 2008

Дискретная математика (также конечная математика) имеет дело с такими темами, как логика, теория множеств, теория информации, частично упорядоченные множества, доказательства, отношения и ряд других тем.

Для других разделов математики существуют инструменты, поддерживающие программирование. Для статистики есть R и S , в которые встроено много полезных статистических функций. Для численного анализа Octave может использоваться как язык или интегрироваться в C ++ ,

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

Ответы [ 8 ]

5 голосов
/ 08 февраля 2009

Текущая версия Mathematica равна 7. Стоимость лицензии:

  1. Домашняя версия : 295 долларов США.
  2. Стандарт: $ 2495 для Win / Mac / Linux PC ($ 3120 для Solaris)
  3. Правительство: 1996 долл. США (2496 долл. США для Solaris)
  4. Образование: 1 095 долл. США (1370 долл. США для Solaris)
  5. Студент: 139,95 $ (без Solaris)

Выше ссылка Home Edition гласит:

Mathematica Home Edition - полнофункциональная версия Mathematica Professional с теми же функциями.

Текущая версия Maple - 12. Стоимость лицензии:

  1. Студент: $ 99
  2. Коммерческие: $ 1895
  3. Академический: $ 995
  4. Правительство: 1 795 $

И да, посмотрите Мудреца, упомянутого выше Томасом Оуэнсом.

3 голосов
/ 03 ноября 2012

Mathematica имеет пакет Combinatorica, который, хотя и весьма почтенный на данный момент, обеспечивает хорошую поддержку комбинаторики и графиков. Доступны такие команды: NecklacePolynomial [8, m, Циклический]; GrayCodeSubsets [{1, 2, 3, 4}]; IntegerPartitions [6]

3 голосов
/ 22 октября 2008

Mathematica

2 голосов
/ 15 декабря 2008

Maple и Matlab - это пара пакетов математического программного обеспечения, которые могут охватывать часть того, что вы хотите.

2 голосов
/ 22 октября 2008

Я также нашел Мудрец . Похоже, что к Mathematica ближе всего подходит открытый код, но я не уверен, насколько хорошо он справляется с дискретной математикой.

2 голосов
/ 22 октября 2008

Я бы сказал, что Mathematica - ваш лучший выбор .. даже если он не поставляется с некоторыми функциональными возможностями из коробки, он имеет очень хорошо разработанные дополнительные пакеты, доступные для него в сети
проверить http://www.wolfram.com/products/mathematica/analysis/
Вас могут заинтересовать ссылки для теории чисел, графических визуализаций

0 голосов
/ 06 ноября 2014

Я люблю Mathematica и использовал его для прототипирования идей во время моей докторской диссертации по вычислительной физике. Тем не менее, Mathematica старается быть всем для всех, и есть несколько минусов:

  • Будучи коммерческой компанией, исправления ошибок иногда появляются в следующем основном выпуске: вы платите.
  • Будучи проприетарным продуктом, делиться кодом с людьми, не принадлежащими к Mathematica (миру), проблематично.
  • Новые функции часто запекаются и ломаются, когда вы пытаетесь вывести их за пределы встроенного примера.
  • Его пользовательская база (учебные пособия, советы, внешние библиотеки) менее активна, чем, например, Python,
  • Многоэлементные фигуры трудно генерировать; см. библиотеку SciDraw .

При этом основная функциональность Mathematica удивительна по следующим причинам:

  • Математические функции по умолчанию достаточно надежны и позволяют быстро находить решения.
  • Позволяет как функциональное, так и процедурное программирование.
  • Можно быстро кодировать и публиковать в различных форматах: PDF, интерактивный веб-сайт.
  • Вышла новая Дискретная Книга .

Итог

  • Пользователям Apple, ожидающим легкости в использовании, понравится Mathematica за то, что она похожа на Apple.
  • Пользователи Linux, которым нужна расширяемость, найдут Mathematica разочарованным в своем подобном Apple дизайне с приваренной коробкой.
0 голосов
/ 05 декабря 2011

Stanford GraphBase , написанный в основном Дональдом Кнутом, является отличным пакетом для комбинаторных вычислений. Я бы не назвал это обширной кодовой базой, но в ней есть отличная поддержка графов, и с точки зрения теории графов можно сформулировать большое количество дискретной математики. Он написан на CWEB, который (IMO) является более читаемой версией C.

РЕДАКТИРОВАТЬ: Это бесплатно.

...