Text-based input formats for mathematical formulas

Friday, December 8, 2006 - 11:30am - 12:00pm
EE/CS 3-180
Peter Jipsen (Chapman University)
This talk discusses and compares several approaches that can be used to
produce mathematical content on the web. Emphasis is placed on the input that the
user has to create, in particular on ease-of-use, readability, familiarity, generality,
availability and other criteria. While LaTeX to PDF is generally considered the de
facto standard in research publications, we will also examine input languages for
several computer algebra systems, online assessment/courseware systems and word
processors, as well as ASCIIMath.

Since the ASCIIMath language is a relative newcomer (but mostly a refinement of
the well known tradition of approximating formulas by ascii characters), the talk
includes a brief description and motivation for some of the design decisions. The
core of this mathematical input language consists of only 8 lines of BNF, yet it can
express most of undergraduate mathematics in a predictable way that generally
matches what users expect. In addition the language constructs map in a direct
way to a subset of Presentation MathML. E.g. 4/3pir3 translates to


and displays in standard typeset form. A JavaScript implementation ASCIIMathML.js parses this
syntax and applies the translation in the client's browser. This program has been
downloaded by thousands of users in over 90 countries and is currently used in
numerous blogs, wikis and course management systems, partly because it enables
cross-browser MathML to display in legacy HTML (rather than XHTML) pages.
Since the language overlaps with LaTeX and TI-83 syntax, it is familiar to mathematicians
and school children, and is also used as input for online calculators.
ASCIIMath has been implemented by others in PHP and C#, as well as modified
to LaTeXMathML.js. Experiments with an online WYSIWYG HTML editor, called
ASciencePad, indicate that ASCIIMath is a convenient alternative to toolbar-driven
formula editors. In summary, it appears that an input format like ASCIIMath is
a desirable addition to the various ways of creating mathematical content online.
Further information can be found at