Navigate

Friday, February 16, 2007

Accessible Math

The subject of accessibility for mathematical notation came up recently. The expressions in question are displayed as images in HTML documents, created from LaTeX source by the utility latex2html. Some interesting properties about latex2html: it creates source in HTML 3.2; and the last modification appears to be September 2001. Since I couldn't access the download area (not intentional, I'm sure) any hope of updating the utility remains just that - a hope.

In spite of the outdated markup, the quality was very good. Alt attributes were created which contained the LaTeX macros used to create each expression. LaTeX is an old and venerable system to typeset scientific papers for printing, but remains relatively unknown to the current generation of developers and students. Alt text being a text description of the image, or in this case a mathmetical expression, the problem remains how to describe mathematical expressions as text, like this one:

\begin{displaymath}[-1/\sqrt{3},0]\cup [1/\sqrt{3},+\infty[

in which:

alt="\begin{displaymath}[-1/\sqrt{3},0]\cup
[1/\sqrt{3},+\infty]".


Providing useful alternatative text is really the only hope of making math notation accessible. The problem, of course, is who can read LaTeX macros? The idea occured to describe the expression as a statement in a programming language. I recently discussed the idea with Phil Kragnes, a colleague at the University of Minnesota. He has done exactly that, using a personalized blend of LISP and Pascal syntax. But another colleague, Erik Rose, rightly pointed out that programming languages are limited in their ability to describe numerical mathematical expressions, not generalized notation. Duh!

So,


alt="y = mx + b"


is pretty limiting for math instruction.

There is one last method that might provide a general method for describing mathematical notation. Mathematicians are able to audibly describe expressions. Teaching math requires that skill. This method would yield, perhaps,


alt="The union of the range minus 1 divided by the
square root of 3 to zero, and positive one divided
by the square root of three to infinity"


It's possible that the longdesc attribute may be helpful for liking to pages describing extremely complex expressions, or alternative methods of describing expressions; along with supplemental notes. Perhaps longdesc could link to an audio file?

The problem here is that there are at this time no standards for alternate descriptions of math expressions that are natively supported by browsers. The long term solution is the emerging standard of MathML, but as long as it remains in draft form it's unlikely that browser developers are going to support MathML.