Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
OpenMath
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
'''OpenMath''' is the name of a [[document markup language|markup language]] for specifying the meaning of [[mathematics|mathematical]] [[formulae]]. Among other things, it can be used to complement [[MathML]], a standard which mainly focuses on the presentation of formulae, with information about their semantic meaning. OpenMath can be encoded in [[Extensible Markup Language|XML]] or in a binary format. == Coverage == OpenMath consists of the definition of "OpenMath Objects", which is an abstract datatype for describing the logical structure of a mathematical formula and the definition of "OpenMath Content Dictionaries", or collections of names for mathematical concepts. The names available from the latter type of collections are specifically intended for use in extending MathML, and conversely, a basic set of such "Content Dictionaries" has been designed to be compatible with the small set of mathematical concepts defined in Content MathML, the non-presentational subset of MathML. == History == OpenMath has been developed in a long series of workshops and (mostly European) research projects that began in 1993 and continues through today. The OpenMath 1.0 Standard was released in February 2000, and revised as OpenMath 1.1 in October 2002. Two years later, the OpenMath 2.0 Standard was released in June 2004. OpenMath 1 fixed the basic language architecture, while OpenMath2 brought better XML integration, structure sharing and liberalized the notion of OpenMath Content dictionaries. == OpenMath Society == The OpenMath Effort is governed by the OpenMath Society, based in [[Helsinki]], [[Finland]]. The Society brings together tool builders, software suppliers, publishers and authors. Membership is by invitation of the Societies Executive Committee, which welcomes self-nominations of individuals who have worked on OpenMath-related issues in research or application. As of 2007, [[Michael Kohlhase]] is president of the OpenMath society. He succeeded Arjeh M. Cohen, who was the first president. == Example == The well-known [[quadratic formula]]: :<math>x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}</math> would be marked up like this in OpenMath (the representation is an expression tree made up from functional elements like {{mono|OMA}} for function application or {{mono|OMV}} for variables): <syntaxhighlight lang="xml"> <OMOBJ xmlns="http://www.openmath.org/OpenMath"> <OMA cdbase="http://www.openmath.org/cd"> <OMS cd="relation1" name="eq"/> <OMV name="x"/> <OMA> <OMS cd="arith1" name="divide"/> <OMA> <OMS cdbase="http://www.example.com/mathops" cd="multiops" name="plusminus"/> <OMA> <OMS cd="arith1" name="unary_minus"/> <OMV name="b"/> </OMA> <OMA> <OMS cd="arith1" name="root"/> <OMA> <OMS cd="arith1" name="minus"/> <OMA> <OMS cd="arith1" name="power"/> <OMV name="b"/> <OMI>2</OMI> </OMA> <OMA> <OMS cd="arith1" name="times"/> <OMI>4</OMI> <OMV name="a"/> <OMV name="c"/> </OMA> </OMA> </OMA> </OMA> <OMA> <OMS cd="arith1" name="times"/> <OMI>2</OMI> <OMV name="a"/> </OMA> </OMA> </OMA> </OMOBJ> </syntaxhighlight> In the expression tree above symbols—i.e. elements like {{mono|<nowiki><OMS cd="arith1" name="times"/></nowiki>}}—stand for mathematical functions that are applied to sibling expressions in an {{mono|OMA}} which are interpreted as arguments. The {{mono|OMS}} element is a generic extension element that means whatever is specified in the content dictionary referred to in the {{mono|cd}} attribute (this document can be found at the URI specified in the innermost {{mono|cdbase}} attribute dominating the respective {{mono|OMS}} element. In the example above, all symbols come from the content dictionary for arithmetics ({{mono|arith1}}, see below), except for the {{mono|plusminus}}, which comes from a non-standard place, hence the {{mono|cdbase}} attribute here. == OpenMath Content Dictionaries == Content Dictionaries are structured XML documents that define mathematical symbols that can be referred to by <nowiki>OMS</nowiki> elements in OpenMath Objects. The OpenMath 2 standard does not prescribe a canonical encoding for content dictionaries, but only requires an infrastructure sufficient for unique referencing in <nowiki>OMS</nowiki> elements. OpenMath provides a very basic XML encoding that meets these requirements, and a set of specific content dictionaries for some areas of mathematics, in particular covering the K-14 fragment covered by content MathML. For more richly structured content dictionaries (and generally for arbitrary mathematical documents) the [[OMDoc]] format extends OpenMath by a “statement level” (including structures like definitions, theorems, proofs and examples, as well as means for interrelating them) and a “theory level”, where a theory is a collection of several contextually related statements. OMDoc's theories are designed to be compatible to OpenMath content dictionaries, but they can also be set into inheritance and import relations. ==Criticism== OpenMath is criticised for being inadequate for general mathematics, exposing not enough formal precision to capture the intricacies of numerics, lacking a proof-of-concept and as an inferior technology to already established approaches of encoding mathematical semantics, amongst other presumed shortcomings.<ref>{{cite web|url=http://www.cs.berkeley.edu/~fateman/papers/openmathcrit.pdf|title=A Critique of OpenMath and Thoughts on Encoding Mathematics|author=Richard J. Fateman|date=2001-01-17|access-date=2015-04-25|publisher=University of California|place=Berkeley}}</ref> ==See also== *[[List of document markup languages]] *[[Comparison of document markup languages]] *[[MathML]] *[[OMDoc]] *[[TeX]] ==References== {{Reflist}} ==External links== * {{official website|http://www.openmath.org/}} ** [http://www.openmath.org/standard/ Standard definition] ** [http://www.openmath.org/cd/ Content Dictionaries] {{Document markup languages}} [[Category:Markup languages]] [[Category:Mathematical markup languages]] [[Category:XML-based standards]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite web
(
edit
)
Template:Document markup languages
(
edit
)
Template:Mono
(
edit
)
Template:Official website
(
edit
)
Template:Reflist
(
edit
)