190 likes | 286 Views
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:
E N D
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) Semantic Web Technologies
Explicit Context: let p be any prime number; thena, 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
OpenMath • A standard mechanism for representing mathematical objects electronically • Unambiguous semantics • Machine-processable • System-independent • Extensible • Lightweight • Scalable Semantic Web Technologies
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
OpenMath Objects • Abstract model for a concrete mathematical entity Semantic Web Technologies
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
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
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
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
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
The OpenMath Standard • Formal specifications of: • OpenMath objects • XML encoding • Binary encoding • Syntax for Content Dictionaries • Basic symbols for Content Dictionaries Semantic Web Technologies
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
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
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
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
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
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