Компилятор mathematica от Wolfram обеспечивает эффективный способ масштабирования математических вычислений, переписывая их более алгоритмическими способами. Mathematica включает суперфункции для компиляции, около 5030 встроенных функций, мета-алгоритмы и модули для улучшения вычислений на языке вольфрам. Mathematica - это мастерство в области машинного обучения, анализа данных, бизнес-анализа, обработки и сжатия изображений, когнитивно-интеллектуальных подходов, представления знаний и естественного языка и многого другого. В этой статье рассматривается системный компилятор mathematica, его символическая сила, его конфигурация и разнообразные функции для обработки параллелизма, вычислений на графическом процессоре и многого другого.

I. ВВЕДЕНИЕ

Самая общая дилемма, встречающаяся при использовании компилятора, заключается в том, что он рассматривается как компилятор C, C ++ или java, когда вся программа компилируется сразу. Здесь, в mathematica, динамика компилятора связана с конкретным системным доменом через фундаментальные массивы и числовые типы данных. Это обеспечивает быстрое вычисление, поскольку механизм работает над разделением вычислений на части небольших математических функций.

Компилятор mathematica используется для анализа вычислений языка Wolfram Language. Wolfram в значительной степени создан для генерации программистов, основанных на знаниях, язык wolfram включает алгоритмические вычисления для изображений, геометрии, визуализации, медицинских данных, графиков, машинного обучения, глубоких сетей, набора лингвистических данных, финансовых и высших математических вычислений. Таким образом, Mathematica была первым выпуском продукта wolfram cosmos, нацеленного на предоставление эффективных вычислительных ресурсов ядра для исследований и разработок.

II. Mathematica - системный компилятор Wolfram

А. Функции

С помощью функции compile любой ввод действительного числа может привести к точному выводу, позволяющему проанализировать данное выражение. Синтаксис:

  1. Скомпилируйте [{x1, x2, x3, x4,… .. xn}, выражение] - где xi числовые значения, как показано на рисунке ниже.
  2. Скомпилируйте [{{x1, ty1},… ..}, выражение] - где xi соответствует ti. Общая оценка может быть выражена следующим запросом на рисунке.
  3. Скомпилировать [{{x1, ty1, n1},…}, выражение]
  4. Скомпилируйте [переменные, выражение, {{p1, pt1}, {p2, pt2},…}] - где выражения совпадают для pi и pti.

Б. Примеры

Чтобы скомпилировать функцию x ³-1 / (1- x) для действительного целого числа x:

cf = Compile[{{x, _Real}}, x^3 - 1/(1 + x)]

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

C. Проверка компилятора

Если скомпилированная функция не может оценить аргументы сгенерированного скомпилированного кода, мы используем общий код языка вольфрам. Сгенерированный им вывод будет давать действительные числа, поэтому для его выполнения нужен третий аргумент. Функция «HoldAll» компилятора mathematica требует компиляции [, .., оценки [expr]] в качестве предварительного условия. CompilationOptions необходимо настроить для процесса компиляции, позже целевую среду выполнения для генерации кода переносит $ CompilationTarget.

На рисунке выше показано, как с его помощью можно улучшить сложность пространства поиска. Пакет CCompilerDriver используется для работы с компиляторами C. Он вызывается компилятором системы Wolfram, когда CompilationTarget вызывается компилятором C. Он широко используется для динамического связывания библиотек вольфрамов с целью их последующего встраивания в язык вольфрамов. Wolfram alpha дополнительно разделяет эти функции по частям для получения надежных математических / вероятностных выходных данных.

III. Символическое вычисление

Особенность, которая отличает wolfram mathematica и wolfram alpha от других вычислительных компиляторов, заключается в его способности принимать каждое входное выражение, переменную и объект как символ. В математике он принимает содержимое или объекты любых чисел, изображений, массивов, графиков, формул, интерфейсов, кода, документов, строк, ботов и т. Д. Как часть символа. На рисунке ниже показано, как wolframAlpha вычисляет математические функции для вычисления любых математических данных.

А. Символическое представление

Часто вычисление наглядного числового уравнения, такого как 5–34 + 7 (которое дает -22), отличается от символьного вычисления, например: 3x-x + 2 (которое дает 2 + 2x). компилятор системы вольфрам автоматически выполняет фундаментальные алгебраические вычисления с помощью своего операторского средства - «арифметики». На рисунках показаны аналогичные вычисления для уравнения. Компилятор здесь не имеет ограничений или набора правил для вычисления выражения, он делает это, воспринимая каждый символ в операторе как индивидуальную идентичность, которую нужно вычислить.

Он принимает ввод от пользователя и получает вывод, применяя совокупные математические модели и правила, в которых коэффициент завершения поиска определяется самим компилятором.

Б. Символические выражения

Язык вольфрамов является полностью символическим, поэтому «неизвестные переменные / идентификаторы / слова / токены» автоматически помечаются как символы. Бывают случаи, когда невозможно статистически вывести формулу в качестве результата вычислений. Например: когда кто-то пытается оценить уравнение, для которого существует решение с нулевой замкнутой формой, в этих случаях нужно склоняться к статистическим методам и модельным механизмам.

Гибридный символьно-числовой метод, являющийся важным определяющим фактором математики, позволяет пользователям легко интегрировать и получать точные результаты.

В. Символьные вычисления

WolframAlpha - это целый спектр технологий, которые ищут API, который позволяет разработчикам интегрировать свои данные и вычисления. Но с более поздними улучшениями в интерфейсе к WolframAlpha, mathematica обрабатывает все возможности API. От интерактивности до операций по манипулированию данными и предоставления любого набора данных для вывода или графического представления - с этим справится mathematica.

Компилятор системы mathematica генерирует выражение CompiledFunction, которое состоит из набора понятных инструкций для решения вопроса или выражения Mathematica или WolframAlpha. Инструменты для более адаптивных вычислений также могут быть написаны в компиляторе Mathematica. Встроенная виртуальная машина и IRM (идеализированная регистрационная машина) выполняет работу по выполнению CompiledFunction и пакета CompiledFunctionTools.

То, как mathematica поддерживает систему типов, является самой причиной того, как она получает быстрый поток вычислений. тип каждого промежуточного вычисления определяется данными функции и типом списка ее аргументов. В компиляторе Mathematica можно использовать следующие типы: Boolean, Integer, Real, Complex, Complex types и Tensor. Основная работа компилятора управляется CompiledFunctionTools, а более поздняя версия CompilePrint выполняет задачу отображения деталей. Будь то приведение типов или согласованность типов, mathematica обрабатывает это, определяя тип немедленных результатов вычислений.

Компилятор mathematica может генерировать инструкции для разнообразных команд, поддерживающих систему типов. Первоначально виртуальная машина Mathematica запускает скомпилированную функцию для определенных команд, аргументов и, когда она выполняет, возвращает действительный результат. Перечисляемый скомпилированный аргумент полезен для функций, которые будут развертываться с массивными наборами данных и чьи тесты должны выполняться в обязательном порядке.

С производной компиляцией более поздняя программа mathematica ищет интеллектуальный генератор кода для арифметических бесконечных вычислений, которого достаточно для самого языка Wolfram Language.

IV. ЗАКЛЮЧЕНИЕ

В этой статье рассказывается о том, как Mathematica беспрецедентно создает алгоритмы, автоматизирующие все области вычислительных данных. Mathematica как система для реализации формальных знаний представляет собой надежную среду для вычислений, разработки или развертывания систем всех видов. WolframAlpha, которая полностью построена на Mathematica, становится все более доступной для пользователей по всему миру, которые используют WolframAlpha, что похоже на запуск массивных программ Mathematica. Возможности Mathematica в будущем будут заключаться в ее тщательно отобранных и вычислимых данных, передаваемых пользователями - чем больше данных, тем надежнее вычислительный механизм. Mathematica, если она интегрирована с машинным обучением и эвристическим модулем, автоматизирует сколь угодно глубокие и глубокие недостатки всех выражений. Более того, Mathematica была больше платформой, используемой во всем мире для сложных вычислений. С появлением бережливого бизнеса, основанного на корпоративных версиях WolframAlpha, компиляция получает все больше преимуществ.

использованная литература

  • Альфред Ахо, Рави Сетхи, Джеффри Д. Уллман, «Принципы, методы и инструменты составителей», Pearson Education, Азия
  • Центр документации по языку и системе Wolfram.
  • Вводная книга по Wolfram Language, Wolfram | Alpha.
  • Клеточные автоматы и сложность: сборник статей Стивена Вольфрама.
  • Экономическое и финансовое моделирование с помощью математики Хэла. R Вариан.
  • Прикладная математика: начало работы, начало работы Уильям Шоу и Джейсон Тигг.
  • Прикладное математическое программное обеспечение: Mathematica от Мехрзада Горбани.
  • Прикладной численный анализ с помощью Mathematica Ренато Котта и М.Д. Михайлова
  • Афоризмы по математике с Шивамом Пателем.