1 / 19

The OpenMath Project

The OpenMath Project. Mike Dewar NAG Ltd, UK miked@nag.co.uk. What is OpenMath?. A technology for encoding the semantics of mathematical objects so that they can be exchanged between applications and users IST Project 1997-2000 International Society ( www.openmath.org ). Explicit Context:

sakura
Download Presentation

The OpenMath Project

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The OpenMath Project Mike Dewar NAG Ltd, UK miked@nag.co.uk

  2. What is OpenMath? • A technology for encoding the semantics of mathematical objects so that they can be exchanged between applications and users • IST Project 1997-2000 • International Society (www.openmath.org) Semantic Web Technologies

  3. Explicit Context: let p be any prime number; thena, ap a mod p Implicit Context: a x+b x +c x +d x+e f=f=1 ; f = f + f ei Conventions: sin(x) vs f(x) sin(x) vs f(x) sin(x) vs f(x) Syntax: sin(x) or Sin[x] or \sin{(x)} or ... Rf(x)dx or R f(y)dy Understanding Mathematical Notation Semantic Web Technologies

  4. OpenMath • A standard mechanism for representing mathematical objects electronically • Unambiguous semantics • Machine-processable • System-independent • Extensible • Lightweight • Scalable Semantic Web Technologies

  5. MathML • Recommendation from W3C • Mainly presentation • Small content part (high school mathematics) • Can embed OpenMath using semantics tag • Can transform between OpenMath and MathML using e.g. XSL Semantic Web Technologies

  6. OpenMath Objects • Abstract model for a concrete mathematical entity Semantic Web Technologies

  7. Specify semantics associated with symbols Extensible Standardised by OpenMath Society Persistent http://www.openmath.org/cd Private <CDDefinition> <Name> sin </Name> <Description> The sine function as described in Abramowitz and Stegun, section 4.3. </Description> </CDDefinition> Content Dictionaries Semantic Web Technologies

  8. Content Dictionaries • Definition of each symbol can include: • informal descriptions • formal mathematical properties • examples of use • Associated information can include: • default presentation information • associated type information • other mathematical properties Semantic Web Technologies

  9. Organising CDs • CDs contain groups of related symbols • e.g. transc1 contains transcendental functions • Related CDs collected into CD Groups • e.g. Linear Algebra CD Group • linalg1: simple operations such as determinant • linalg2: row-oriented constructors • linalg3: column-oriented constructors • linalg4: advanced operations such as eigenvalue • linalg5: constructors for structured matrices Semantic Web Technologies

  10. Some more CD Groups • MathML • Symbols corresponding to content part of MathML 2 • Basic calculus, sets, linear algebra, arithmetic, numbers, transcendental functions ... • Polynomial • Special Functions • Number Theory • Groups • ... Semantic Web Technologies

  11. Provides concrete representation for an OpenMath object. Desirable features: linear compact XML encoding. Binary encoding. ... <OMOBJ> <OMA> <OMS name=“sin” cd=“transc1”/> <OMV name=“x”/> </OMA> </OMOBJ> Encodings Semantic Web Technologies

  12. The OpenMath Standard • Formal specifications of: • OpenMath objects • XML encoding • Binary encoding • Syntax for Content Dictionaries • Basic symbols for Content Dictionaries Semantic Web Technologies

  13. Associated Documents • Type systems: • Simple Type System (STS) • Extended Calculus of Constructions (ECC) • Content Dictionaries • Also: • Guidelines for writing CDs • CD standardisation procedure • Correspondence between MathML(C) and CD Group Semantic Web Technologies

  14. Building Applications With OpenMath

  15. Mathematical Components • Interface described in terms of CDs “recognised” • Use standard tools for translating between OpenMath and proprietary representations • Software layer which does this is called a Phrasebook • Use any convenient mechanism to link components together • sockets, RPC, Active-X, ... Semantic Web Technologies

  16. Interactive Documents • Mathematical objects encoded as OpenMath • Manipulations/Calculations via plug-ins and applets • renderers, editors, ... • Translators for existing content in LaTeX • Standard frameworks to handle interaction: • XML/DOM, CORBA, ... • OMDoc Semantic Web Technologies

  17. Mathematical Databases • OpenMath API to existing databases • Databases of OpenMath objects • “Smart Databases”: • read CDs dynamically to extract mathematical properties • use properties in resolving queries Semantic Web Technologies

  18. Computing with OpenMath Objects • OpenMath does not mandate a default action. • Typesetter • Algebra system • Numerical software • OpenMath consists of nouns not verbs. • Onus is on phrasebook writer to implement “correct” behaviour. Semantic Web Technologies

  19. Summary • OpenMath provides a standard representation for semantically-rich mathematical data. • OpenMath is a complementary technology to MathML. http://www.nag.co.uk/projects/openmath http://www.openmath.org Semantic Web Technologies

More Related