Paragraph about Scientific software

Even within the SGML framework, one can consider various levels of verbosity (I am grateful to Neil Soiffer for offering these examples), depending on how much information you encode in the leaves (CDATA) of the SGML tree, and how much you encode in the SGML structure itself. Consider the expression 2x+y, which might be encoded as Where MI means Math Identifier, MO means Math Operator, and we have used [] to enclose the SGML markers. By contrast, extended MathML with a parser that knows some precedence rules could have a simpler SGML:

[MATH] 2 x + y [/MATH]The tradeoff is that the first version might allow standard SGML to validate, search, index (or whatever) the math expressions. The second version requires some external parser that knows about precedence (etc), but is easier for a human to comprehend Scientific software and write, and simpler to transmit (and probably to store). There are intermediate choices as well.

More chatting up of alternatives to this kind of encoding are provided in the discussion in minutes of a 1996 SGML Math workshop held at the University of Illinois, as part of its digital library project on ``Federating Repositories of Scientific Literature.'' Perhaps all of this will converge with the OpenMath group's work, which I see as following the notion that mathematics must be made formal and explicit but is based not on axiomatic set theory and logic. Rather, it is to be built on some combination of rigorous "classic" modern algebra, some applied analysis, and a strong dose of programming language design. The OpenMath working group is now working on ``Content Dictionaries'' expressed in a version of SGML. You can view them by following links from the home page. The success of this effort is predicated on the cooperation mathlab (and funding) of participants interested in a grand programme of automated mathematics. Some preliminary and anticipatory work in relation to OpenMath is is the work at the polymath group of Simon Fraser University, who have put together a library and a collection of "Java beans" implementing draft OpenMath communications standards. The North American Open Math Initiative is an effort to produce and promulgate this standard, involving IBM, Maple, and a variety of other organizations including a number of Western Canadian institutions. To the extent that it attempts to provide some rigor, the OpenMath effort is slightly reminiscent of the QED Manifesto. Yet it appears to be far more pragmatic in being driven in by needs of available computer algebra/ plotting/ network display programs, as well as the hope that Java, in some kind of virtual networked world will provide solutions for portable scientific communication. This and the polymath project are actively growing and their pages are worth browsing, especially if you are willing to run their Java applets.