Email: {alena,
watt}@orcca.on.ca
(Demo
presentation proposal)
1. Introduction
We present a
software tool to select notations to be used in mathematical applications.
These applications include MathML–based tools such as browsers as well as
computer algebra systems supporting conversion to different math formats. Our
Notation Selection Tool addresses two problems: first, it allows a user to
choose which of several different mathematical notations
to use for the same concept. Second, it allows disambiguation where the same
notation could be used for different concepts.
There may be
several notations for one concept for a number of different reasons: The mathematical
context can lead to the same expressions being written in different
ways, e.g. an ordinary derivative can be denoted as f¢, f_{x}, Df
, df/dx or in some other fashion.
The area of application
may imply default notations, e.g. i for _{} in complex analysis
vs. j for the same quantity in electrical engineering. Likewise one
commonly writes integrals as _{}, but in physics the notation _{} is often preferred. National
and cultural conventions are
sometimes different, e.g. the tangent function is presented by tan in
England but tg in Russia and China. The open interval denoted (a, b)
in the United States, would be denoted as ]a, b[ in France. The
historical period also leads to different notations, e.g. _{} versus the modern 3(a + b).
The level of mathematical sophistication may influence the preferred
representation of expressions, e.g. _{} vs. _{} vs. _{} vs. _{}. Usually first two notations would mean exact division and
would be used, e.g., in primary school.
Equally well, there are often situations where the same notation is
used to represent completely different mathematical ideas. For example, the expression lg can
mean log_{10} or log_{2}. The notation u¢ may mean “derivative”,
“minute”, “logical not”, “group inverse”, “transformation performed on an
original u” etc. Often the meaning is clear from context, but if several
domains of mathematics are used together, then alternative notation must be
used.
Our Notation Selection Tool
is designed to perform conversion of mathematical expressions in XML format.
The simplest use presents a graphical user interface to generate an XSLT
stylesheet. This stylesheet is then used to transform conceptually–oriented
Content MathML to the notationally–oriented Presentation MathML.
The interface
allows the user to select notational conventions from concepts, organized by
mathematical area. (See figure 1). It also allows the user to specify various
file names for associated stylesheets, input and output files, browser to view
conversion results, etc.
2. Implementation
Our Notation Selection Tool
is written primarily in Java and uses the Swing library. The program is initialized by an XMLformat
specification file containing a database of concepts and alternative notations
as well as template transformation rules to be applied for the selected
notations. (See figure 2). The configuration bundle also includes basic XSLT
stylesheet and library of images.
The notations are
organized in categories, called catalogs, related to various areas of
mathematics, e.g. arithmetic, calculus, linear algebra, combinatorics, etc.
Catalogs consist of items, representing different math operations. For example
catalog ARITHMETIC can contains items division, multiplication and continual
fractions, catalog CALCULUS is subdivided
into differentiation, partial differentiation, definite and
indefinite integration. Each item has assigned to it
list of notations choices. For example partial
differentiation can have following notation choices:_{}, _{},_{},_{},_{}, _{}. Each choice defines the appearance of the notation (given
as a reference to an image file), a key value to serve as a reference ID to
this particular choice of notation, and an XSLT template to define the
transformation of mathematical content to its presentation, according to the
notation choice.
We would like to
emphasize, that the actual content of catalogs, items and notations can be
extended or redefined by the user of the Notation Selection Tool; the user may
wish to reuse an existing notation configuration file, extend it or write
another.
3. Conclusion
Advantages of
this approach include flexibility and extensibility. The idea of using an
initialization file for the Notation Selection Tool allows the user to introduce
new notations for existing math concepts simply by updating this
initialization file. In the same way new mathematical concepts can be
introduced in existing settings.
This entails introducing notational
choices, backed by stylesheet tools to act as targets of those choices,
e.g. binomial or continued fractions are defined neither in Content MathML, nor
in Presentation MathML, but they can be introduced as additional stylesheet
templates. The same approach allows to set preferred rendering for OpenMath CDs
This tool can be
used to drive the conversion between a number of mathematical data formats, as
shown in figure 3. The common characteristics of these conversions is that
they typically take objects from hight–level semantic views to lowerlevel
renderings.
A second area of
possible application is that of mathematical education where students require a
high degree of notational consistency within a syllabus. Our tool allows an
instructor to reuse material with different notational
conventions from one course to another. In distance learning students
might prefer to see mathematical expressions in the format of their locality,
so our tool could be used to select these preferences.
Figure
1.
<catalog>
<name>Arithmetic</name>
<itemlist>
<item>
<keyword> DIVISION </keyword>
<choicelist>
<choice>
<image src = "div1.gif"/>
<keyvalue> 1 </keyvalue>
<presentation>
... <! XSLT template for this notation>
</presentation>
</choice>
... <! other choices for DIVISION >
</choicelist>
</item>
... <! other items for Arithmetic >
</itemlist>
</catalog>
Figure
2.
Content MathML 




Presentation MathML

OpenMath





T_{E}X

Maple 





content math
formats 

presentation
math formats 
Figure
3.
[1] B. Naylor and S. Watt,
Metastylesheets for the conversion of mathematical documents into multiple
forms, in: Annals of Mathematics and Artificial Intelligence 38, (2003).
[2] D. Lui, A notation Selection
Tools for MathML stylesheets, MSc Project University of Western Ontario
(2001).
[3] S. Huerter, I. Rodionov, and
S. Watt, ContentFaithful Transformations for MathML, in: MathML International
Conference 2002, http://www.mathmlconference.org/2002/presentations/huerter
[4] MathML spec:
http://www.w3.org/TR/MathML2/
[5] XSLT spec:
http://www.w3.org/TR/xslt.
[6] XML spec:
http://www.w3.org/XML.
[7] OpenMath: www.openmath.org.