OpenMath

OpenMath

OpenMath is the name of a markup language for specifying the meaning of 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 XML or in a binary format.

Contents

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:

x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

would be marked up like this in OpenMath (the representation is an expression tree made up from functional elements like OMA for function application or OMV for variables):

<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>
          <OMI>2</OMI>
        </OMA>
      </OMA>
      <OMA>
        <OMS cd="arith1" name="times"/>
        <OMI>2</OMI>
        <OMV name="a"/>
      </OMA>
    </OMA>
  </OMA>
</OMOBJ>

In the expression tree above symbols — i.e. elements like <OMS cd="arith1" name="times"/> — stand for mathematical functions that are applied to sibling expressions in an OMA which are interpreted as arguments. The OMS element is a generic extension element that means whatever is specified in the content dictionary referred to in the cd attribute (this document can be found at the URI specified in the innermost cdbase attribute dominating the respective OMS element. In the example above, all symbols come from the content dictionary for arithmetics (arith1, see below), except for the plusminus, which comes from a non-standard place, hence the cdbase attribute here.

OpenMath Content Dictionaries

Content Dictionaries are structured XML documents that define mathematical symbols that can be referred to by OMS 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 OMS 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.

See also

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • OpenMath — ist ein Standard zur Beschreibung der Semantik mathematischer Formeln. Im Gegensatz zu Satzprogrammen wie LaTeX, die Formeln nur darstellen, versucht OpenMath den mathematischen Inhalt mit seinen eigenen Gesetzmäßigkeiten zu repräsentieren.… …   Deutsch Wikipedia

  • OpenMath — es el nombre de un lenguaje de marcas para especificar el siginificado de formulas matemáticas. Permitiendo entre otras cosas, su uso como complemento de MathML (un estándar centrado principalmente en la presentación de formulas, con información… …   Wikipedia Español

  • MathML — For help writing formulae in Wikipedia, please see Help:Formula. (MathML) Mathematical Markup Language Developed by World Wide Web Consortium Type of format Markup language Extended from XML Standard(s) …   Wikipedia

  • OMDoc — Open Mathematical Documents Filename extension .omdoc Internet media type application/omdoc+xml Developed by Michael Kohlhase Type of format Markup language Container for Ma …   Wikipedia

  • OMDoc — Vorlage:Infobox Dateiformat/Wartung/MagischeZahl fehltVorlage:Infobox Dateiformat/Wartung/Art fehltVorlage:Infobox Dateiformat/Wartung/Website fehlt OMDoc (Open Mathematical Documents) Dateiendung: .omdoc MI …   Deutsch Wikipedia

  • James Davenport (professor) — James Harold Davenport (born 1953) is a British computer scientist who works in computer algebra. He is the Hebron and Medlock Professor of Information Technology at the University of Bath in Bath, England.He is an author of a textbook about… …   Wikipedia

  • Michael Kohlhase — Born September 13, 1964(1964 09 13) …   Wikipedia

  • MML — Vorlage:Infobox Dateiformat/Wartung/magic fehltVorlage:Infobox Dateiformat/Wartung/genre fehltVorlage:Infobox Dateiformat/Wartung/website fehlt Mathematical Markup Language Dateiendung .mml MIME Type text/mathml …   Deutsch Wikipedia

  • MathML — Vorlage:Infobox Dateiformat/Wartung/magic fehltVorlage:Infobox Dateiformat/Wartung/genre fehltVorlage:Infobox Dateiformat/Wartung/website fehlt Mathematical Markup Language Dateiendung .mml MIME Type text/mathml …   Deutsch Wikipedia

  • Mathml — Vorlage:Infobox Dateiformat/Wartung/magic fehltVorlage:Infobox Dateiformat/Wartung/genre fehltVorlage:Infobox Dateiformat/Wartung/website fehlt Mathematical Markup Language Dateiendung .mml MIME Type text/mathml …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”