OpenMath - OpenMath
OpenMath это имя язык разметки для уточнения значения математический формулы. Помимо прочего, его можно использовать для дополнения MathML, стандарт, в котором основное внимание уделяется представлению формул с информацией об их семантическом значении. OpenMath можно закодировать в XML или в двоичном формате.
Покрытие
OpenMath состоит из определения «Объекты OpenMath», которые являются абстрактным типом данных для описания логической структуры математической формулы и определения «словарей содержимого OpenMath» или наборов имен для математических понятий. Имена, доступные из коллекций последнего типа, специально предназначены для использования в расширении MathML, и, наоборот, базовый набор таких «словарей содержимого» был разработан для совместимости с небольшим набором математических концепций, определенных в Content MathML, т.е. -представительное подмножество MathML.
История
OpenMath был разработан в ходе длинной серии семинаров и (в основном европейских) исследовательских проектов, которые начались в 1993 году и продолжаются до сих пор. Стандарт OpenMath 1.0 был выпущен в феврале 2000 г. и пересмотрен как OpenMath 1.1 в октябре 2002 г. Два года спустя в июне 2004 г. был выпущен стандарт OpenMath 2.0. OpenMath 1 исправил базовую языковую архитектуру, в то время как OpenMath2 улучшил интеграцию XML, разделение структуры и либерализовали понятие словарей OpenMath Content.
Общество OpenMath
Работа OpenMath регулируется Общество OpenMath, основанный в Хельсинки, Финляндия. Общество объединяет разработчиков инструментов, поставщиков программного обеспечения, издателей и авторов. Членство осуществляется по приглашению Исполнительного комитета обществ, который приветствует самовыдвижение лиц, которые работали над вопросами, связанными с OpenMath, в исследованиях или приложениях. По состоянию на 2007 г. Майкл Кольхейз является президентом общества OpenMath. Он сменил Арджеха М. Коэна, который был первым президентом.
Пример
Известный квадратичная формула:
будут размечены таким образом в OpenMath (представление представляет собой дерево выражений, составленное из таких функциональных элементов, как OMA для применения функции или OMV для переменных):
xmlns ="http://www.openmath.org/OpenMath"> cdbase ="http://www.openmath.org/cd"> cd ="отношение1" имя ="экв"/> имя ="Икс"/> <OMA> cd ="ариф1" имя ="разделять"/> <OMA> cdbase ="http://www.example.com/mathops" cd ="multiops" имя ="плюсминус"/> <OMA> cd ="ариф1" имя ="unary_minus"/> имя ="б"/> </OMA> <OMA> cd ="ариф1" имя ="корень"/> <OMA> cd ="ариф1" имя ="минус"/> <OMA> cd ="ариф1" имя ="мощность"/> имя ="б"/> <OMI>2</OMI> </OMA> <OMA> cd ="ариф1" имя ="раз"/> <OMI>4</OMI> имя ="а"/> имя ="c"/> </OMA> </OMA> </OMA> </OMA> <OMA> cd ="arith1" имя ="раз"/> <OMI>2</OMI> имя ="а"/> </OMA> </OMA> </OMA></OMOBJ>
В дереве выражений над символами, т. Е. такие элементы как <OMS cd="arith1" name="times"/>- обозначение математических функций, которые применяются к одноуровневым выражениям в OMA которые интерпретируются как аргументы. В OMS element - это общий элемент расширения, который означает все, что указано в словаре содержимого, указанном в CD атрибут (этот документ можно найти по URI, указанному в самом внутреннем cdbase атрибут, доминирующий над соответствующими OMS элемент. В приведенном выше примере все символы взяты из словаря содержимого для арифметики (arith1см. ниже), за исключением плюсминус, пришедший из нестандартного места, поэтому cdbase атрибут здесь.
Словари содержимого OpenMath
Словари содержимого - это структурированные XML-документы, которые определяют математические символы, на которые могут ссылаться элементы OMS в объектах OpenMath. Стандарт OpenMath 2 не предписывает каноническое кодирование словарей контента, а требует только инфраструктуры, достаточной для уникальных ссылок в элементах OMS. OpenMath предоставляет очень простую кодировку XML, которая отвечает этим требованиям, и набор специальных словарей контента для некоторых областей математики, в частности, охватывающих фрагмент K-14, охватываемый MathML контента.
Для словарей с более богатой структурой содержимого (и, как правило, для произвольных математических документов) OMDoc Формат расширяет OpenMath на «уровень утверждения» (включая такие структуры, как определения, теоремы, доказательства и примеры, а также средства для их взаимосвязи) и «уровень теории», где теория представляет собой набор нескольких контекстуально связанных утверждений. Теории OMDoc разработаны с учетом совместимости со словарями содержимого OpenMath, но они также могут быть установлены в отношения наследования и импорта.
Критика
OpenMath критикуют за то, что он неадекватен для общей математики, демонстрирует недостаточную формальную точность, чтобы уловить сложности числовых вычислений, отсутствие доказательства концепции и как низкую технологию по сравнению с уже устоявшимися подходами к кодированию математической семантики, среди других предполагаемых недостатков.[1]
Смотрите также
Рекомендации
- ^ Ричард Дж. Фейтман (17 января 2001 г.). «Критика OpenMath и мысли о кодировании математики» (PDF). Беркли: Калифорнийский университет. Получено 2015-04-25.