The Disappointment and Embarrassment of MathML
-  update: Including Reactions and Answers
 
 
 

Thomas Cool, April 11, update April 16 2000

Report 2000-04-11 & 16

JEL A00
 
 
 

Abstract






W3C is about to release MathML 2.0. This should have been a joyous occasion, but it appears to be a horror. They created a horrible way to do mathematics on the internet. It is Byzantinely complex, unintuitive, unesthetic, highly undocumented, it requires complex software support, etcetera. A quite perfect alternative already exists in Mathematica: simple, elegant, intuitive, highly documented etcetera - and users of Maple may think similarly about Maple. W3C is reinventing the wheel, making it square, and putting the horse behind the cart. Their talk about providing a ‘service to the scientific and educational community’ is pure nonsense, as they precisely do the opposite. The real reason why W3C developed MathML is (a) that they didn’t do their homework, (b) that they didn’t really deal with the makers of Mathematica (or Maple). We can only solve this situation by have a serious discussion of the copyright status of mathematics. A short run pragmatic solution is to use a <mathematics use=Mathematica> and </mathematics> bracket in HTML (with possible other values, like Maple). This may be ‘expensive’ in the short run, but much cheaper and beneficial in the longer term. Update: This discussion now includes answers to reactions of others. Readers should keep in focus that this paper concludes to the proposal to the scientific community that we have a discussion on the question: Are we going to accept this gift from W3C, or is it something like the Trojan horse, that will actually destroy the intellectual freedom of mathematics ?
 
 

Introduction


The WWW Consortium (W3C) is about to release MathML 2.0. This proposal for incorporating mathematics in HTML turns out to be quite a disappointment and embarrassment.

(Discussion)

We should be grateful, and immensely grateful indeed, for W3C - the guardians of the WWW - in general - and Tim Berners-Lee in specific - but in this specific case of MathML we should be very critical. We should be grateful for the work that they did, but we should not stop here. There is more involved than just a programming language. We are also discussing mathematics here - and the whole of science that depends on math. Let us hope that W3C understands the issue !

You can only properly understand these lines if you go to http://www.w3.org/TR/2000/WD-MathML2-2000328/ or download that document as zip or pdf. Yes, we are using the W3C tools for communication here - which is why they deserve our deep gratitude in general.

Who reads the MathML document about the difficulty of ‘doing math on the computer’ is struck by the resemblance of Stephen Wolfram’s description of Mathematica. But Mathematica is so much more advanced ! See http://www.wri.com. Of course this discussion is not about math only. It is also about doing something with math. Scores of programmes have been written in Mathematica - see for example my own Economics Pack, at http://thomascool.eu. All that software becomes inaccessible in MathML - needs to be retranslated again. Similarly for Maple, Reduce, etc.

Below, we will consider the history of the various developments, the criteria for mathematics on the WWW, consider the situation, and arrive at a suggestion.

The general idea of this paper is that dealing with the language of mathematics is an issue of market structure. The current W3C solution is to "program around" market structure. The W3C solution would be 'open', and all other languages might be turned into property rights. This is an approach that is in direct violation with the tradition of mathematics itself, and that might indeed cause a market structure that we would not want.

Note: The "Discussion" links refer to the Reaction and Answer section in the Appendix.
 
 

History


MathML has been developed over the last five years, and the 2nd version is close to becoming definitive. The key historical comment is:

"The World Wide Web Consortium (W3C) recognized that lack of support for scientific communication was a serious problem. Dave Raggett included a proposal for HTML Math in the HTML 3.0 working draft in 1994. A panel discussion on mathematical markup was held at the WWW Conference in Darmstadt in April 1995." In the five years since then they succeeded into: This, dear people of W3C, is not providing a Service To Mankind. Yes, you have done it once, with the development of HTTP and HTML, but this does not mean that Whatever You Do is such a service.

It turns out that both Wolfram Research and Waterloo Maple have been advising the W3C working group. One can only suppose that the W3C wants to keep an impartial position towards these apparently commercial interests. But the proper historical point of view is that this has actually caused an engagement with such interests. This is a ‘paradox’ that will be explained below.

Reinventing the wheel


In the past five years we have seen the advent of Mathematica 3.0 and even Mathematica 4.0. See e.g. the Ron Shone (2000) software review. Currently, Maple 6.0 is put onto the market.

W3C supposedly comes up with all kinds of subtleties. But it appears that such issues, and even more, already have been covered in Mathematica.

Mathematica is an enormous system. A standard edition takes about 150 MB. The MathSource library is huge. The experience on the programme is huge as well. Now, supposedly, everything is going to be reinvented. Where a mathematics user will have a huge support from Mathematica, all this will have to be developed again for MathML. And surely, MathML is not going to provide that service. They ‘only develop a standard’ and other - commercial ? - institutions will need to provide the real services.

(Discussion)

All the good elements of MathML are already in Mathematica :

Let us verify this. Specifically, the W3C document gives the following goals. All these goals have already been achieved, basically, by Mathematica. BEGIN QUOTE

1.2.5 Design Goals of MathML: In order to meet the diverse needs of the scientific community, MathML has been designed with the following ultimate goals in mind.

MathML should:

No matter how successfully MathML may achieve its goals as a markup language, it is clear that MathML willonly be useful if it is implemented well. To this end, the W3C Math Working Group has identified a short list ofadditional implementation goals. These goals attempt to describe concisely the minimal functionality MathMLrendering and processing software should try to provide. END QUOTE Hence, W3C could reach its objectives by including <mathematics use=Mathematica> and </mathematics> brackets around Mathematica statements. And similarly for Maple, Derive, TEX, etc. Note that there is a MathReader for Mathematica, usable free of charge, so no-one is excluded. One would suppose that the Browser preferences allow the user to specify how to react to whatever 'use=...' value.

It would be helpful if there also would be a file reference, such as <mathematics use=Mathematica file=myfile.nb> so that such a file would be interpretated by the use-program but the whole displayed in the browser.

(Discussion of quality of languages)
(Discussion of objectives)
(Relation to CA)
(Discussion of object tag)
(Discussion of finite set)
(Relation to Mathematica)
 
 

Making it square


The Byzantine Moguls of MathML want us to tell the computer that ‘2’ is a number. And we have to tell the computer that it is math. ‘Math-number’ becomes ‘mn’. These guys also know how to use the < > signs. So they want us to write ‘<mn>2</mn>’.

The expression (a+b)2 in MathML is to read as (see op.cit. for the explanation):
 
 

<msup>

<mfenced>
<mrow>
<mi>a</mi>

<mo>+</mo>

<mi>b</mi>

</mrow>
</mfenced>
<mn>2</mn>
</msup>
 
 

Conversely, the Mathematica Inputform is: (a+b)^2.

We also see that MathML is starting to deviate from the 'mark-up' idea. The mark-up idea is that the browser is intelligent enough to make all kinds of decisions, and that the information sent over the web is minimised. I think that the browser (or the help program) should be intelligent enough to know that 2 is a number and + an operator. Suddenly, we repeatedly must send over the internet that 2 is a number ! They have been doing something else than making a mark-up language.

OK. The idea is that a user will not see the MathML input. As they say, fallaciously:

"In some ways, MathML is analogous to other low-level, communication formats such as Adobe’s PostScript language. You can create PostScript files in a variety of ways, depending on your needs; experts write and modify them by hand, authors create them with word processors, graphic artists with illustration programs, and so on. Once you have a PostScript file, however, you can share it with a very large audience, since devices which render PostScript, such as printers and screen previewers, are widely available." This is purely fallacious. The PS standard is intended for printers. You cannot compare Mathematica’s InputForm (semantic level) with printers ! It is like arguing: "females can join beauty contests, some fish are female, so fish can join beauty contests". In concreto:


(Discussion of quality of MathML.)
(Discussion of software dependency)
(See the fallacy again)
(Bizantinely complex)
 

Putting the horse behind the cart


What will put the horse behind the cart is that MathML creates the illusion that mathematics as a language is copyrighted - as the language for example is used in Mathematica.

W3C never openly discusses this issue of copyright of the commercial vendors.

Isn’t it curious that they don’t ?

Instead, we should have a discussion !

Do we all really think that (a + b)^2 has a copyright attached to it ?

Mathematics is a language, and a language cannot be appropriated. The fact that Mathematica copies the language of mathematics, does not mean that it can be regarded as a private property. (Discussion) For example, Sin[x] or Log[x] are universal expressions of math, and free from copyright etc. The only commercial avenue for the makers of Mathematica - Wolfram Research Inc. - exists in the programme that interpretes such statements. But W3C may have shied away from dealing with that issue - and implicitly may have attributed WRI ‘property rights’ to the language of math ! (Discussion)

Instead, we should have a mathematical language for use on the computer that is an ANSI standard just like Fortran or C, and freely usable everywhere. A language cannot be property-righted.

The mathematical language looks very much like Mathematica, since, apparently, Mathematica has been written to capture math. They were one of the first on the scene, and MathML comes onto the trail. But it would be wrong to conclude, for copyright issues, that we need something else than mathematics.

(Discussion: WRI's position)
(Discussion: There is something like MINSE - that mirrors my criticism!)
(Discussion: is Mathematica an alternative ?)
(Discussion ANSI)

We should be aware of the ramifications. Let us for example take the simulation software of "Taylor". This packages allows the simulation of queueing or waiting line problems. They have developed a ‘Taylor language’. The program is good, but the language is a bit crummy. The whole would be much more agreeable if we could use mathematics (i.e. Mathematica) as the language. And for sure, we would be longer away from home, if we would have to use MathML.

Hence, in this way, W3C is not providing a service to the community, but making things worse.

In line with Mancur Olson's "logic of collective action", the delusions of a small but active minority group will be at the cost of the unorganised mass - so it is dubious whether the situation can be changed.
 
 

Conclusion


We thus reach the following conclusions:

  1. There should be a discussion about the copyright status of the language of mathematics. An ANSI standard should be developed that takes its point of reference in the history of mathematics and not in commercial developments of the last 10 years.
  2. In the short run, MathML is best reduced to the statement <mathematics use=... file=...> and </mathematics>, and the browser should have to capacity to call onto the computer language package.
  3. In the mean time, the MathML proposal as in the draft paper of course should be published: but not as a new standard but as a contribution to the discussion.
If you agree with this general line of reasoning, it is advisable that you link to this paper very visibly on your website, and call it to the attention of your acquaintances as well.

(Discussion)
(Discussion)
 

References

 
 

Cool, Thomas (1999a), "Beating the software jungle", ewp-get/9904001, http://wueconb.wustl.edu:8089/eps/get/papers/9904/9904001.html - note: see new speed records at http://www.scientificweb.com

Cool, Thomas (1999b), "The Economics Pack User Guide - Applications of Mathematica", Thomas Cool Consultancy & Econometrics, http://thomascool.eu

F&H Simulations, http://www.taylorii.com/ or http://www.taylor-ed.com/

Olson, Mancur (1965), "The logic of collective action", Harvard

Shone, Ron (2000), "Mathematica v4.0 for Windows 95/98/NT", The Economic Journal Feb. 2000 pp F171-186 (this has also a short comparison with Maple)

US. Dept. of Justice, Antitrust division, http://www.usdoj.gov

W3C (2000), "Mathematical Markup Language (MathML) Version 2.0", http://www.w3.org/Math

Wolfram, S. (1996), "Mathematica 3.0", WRI / Oxford, http://www.wri.com



 

Appendix: Reactions and Answers


The choice of words in above paper may be a bit rash for the designers or active users of MathML. They have been working hard, and their goal has been to provide a service to the scientific community - which is a noble enterprise indeed. All this now seems to be under attack.

Yet, obviously, a noble intent does not necessarily imply a noble result. This incongruity also puts a burden onto the messenger of the bad news. Some indiplomacy is likely to occur. Luckily some reactions remain agreeable and diplomatic. Yet others mirror the indiplomacy that I could not avoid. Other reactions show that the paper is not read well.

But all reactions can be answered, and my conclusions still stand. Perhaps that it helps to fully answer to these reactions, since this emphasises the content of what I have to say.

I thank Ka-Ping Yee, Pankaj Kamthan, Andreas Strotmann, Neil Soiffer and Luis Alvarez for their reactions. They are not necessarily on the Working Group. The reactions are given fully on the www-math discussion site.

Below, I will not use the personal names here but will use "person i" labels instead. I have the impression that this helps us to focus on content.
 
 
 

"MathML reinvents the wheel" 
Reaction Person 1: truth is that pretty much all existing CA system languages have been seriously deficient with respect to fundamental design principles
   for content markup languages[1]. OpenMath and MathML are the first to
   fix at least some of the most problematic of those errors.

[1]  L.J. Kohout, A. Strotmann: "Understanding and Improving Content
Markup for the Web: from the Perspectives of Formal Linguistics, Algebraic
Logics, and Cognitive Science."  in: ISIC/CIRA/ISAS '98 Joint Conference on the Science and Technology of Intelligent Systems (IS'98), Gaithersburg, MD, 1998. 

Answer: 
  • You should substantiate "deficient w.r.t. fundamental design principles".
  • You don't deny that we could use Mathematica in the short run - so why don't we ? (Or other languages.)
  • It is an entirely different kind of discussion if you were to say:

  • (a) Let us use Mathematica, in the short run,
    (b) Let us deal with issues of design and copyright in the longer run.
Second Reaction Person 1: Lack of a willingness to do background research is further evidenced by your asking for proof when I'm explicitly giving reference
to the paper that contains that proof -- which you therefore obviously
didn't deign to read. 
Answer: 
  • Why is the crucial information not included in the MathML document ?
  • Could you provide me with a link to the paper on the Web ? 
  • Do you reject Mathematica because of copyright or because of design ? To me this seems rather hazy, and apparently neither issue is discussed in the MathML document.
  • If Mathematica is not copyrighted, and your reason is only design, then let us first start using Mathematica, and deal with your design argument in that situation. So that we don't have to use <mn>2</mn> and &label; uglies.

 
 
 
 
copyrighting the language of maths
 Reaction Person 1:   as anybody in the CA field can tell you, it is extremely ironic to put forward Mathematica as an example for a language that cannot 
   be copyrighted.  Indeed, the infamous mma/mockmma incident a few 
   years back (where a well-known researcher was told off by Wolfram 
   lawyers for using Mathematica's proprietary syntax for his own 
   CA system and algorithm design environment) is an immediate
   refutation, and a direct argument for the need(!!!) for
   an open(!!!) language.  Experience has shown that copyleft is a
   necessary ingredient in maintaining openness.
Answer: 
  • This is very interesting. Now you are talking. So the real issue apparently is not the design, but the legal discussion.
  • Do you have a web-link for this legal incident ?
  • There is a huge need for an open language. But the answer is not to run away from facing WRI, and then making something that is crummy 'but open'.
  • When I say that Mathematica cannot be copyrighted, then I mean this on logical and historical grounds. I don't know about the US legal system. But perhaps all math teachers need to write to the US dept. of Justice, Antitrust division, http://www.usdoj.gov ?
Reaction Person 1:   Trust me, we considered a serious offer of
Mathematica to do exactly as you say five years ago, and turned them down
because the quality of their product was insufficient for our purpose
(it did not properly support a declarative semantics).
Answer:  wow. This is a serious decision that you made then ! 
  • Did WRI really state that there was no copyright on Mathematica, and did they really allow participation in its development ?
  • The WRI documents that I find on the MathML site do not suggest this ! Instead, they contain <brackets> and &labels; that are not Mathematica.
  • I don't think that I should trust you here. Prove it.
Reaction Person 4:  "What will put the horse behind the cart is that MathML creates the illusion that mathematics as a language is copyrighted - as the language for example is used in Mathematica."

There is no illusion. MathML Specification, like all W3C technical reports, 
explicitly state legalities surrounding it. See, for example, 
http://www.w3.org/Consortium/Legal/ipr-notice . 

Answer: This does not answer the question about the supposed copyright for Mathematica (or Maple, or ...) Rather than working hard on making something else (crummy but open), we should focus on the real issue.
Reaction Person 4: 
 Nobody is saying mathematical notations are owned!
  Mathematical notations -> MathML -> Use it the way you want.
  Mathematical notations -> Mathematica's symbolic language which you see
 for example in the "notebooks" IS proprietary. I can not implement it and not
 pay a dime (or guilder) to WRI! This is a huge difference. 
There is a catch: if  WRI implements MathML in Mathematica software system, that
 implementation IS copyrighted; but then MathML can (and is) implemented in
various other software with source code available. 
Answer: Finally, you are responding to the content of my paper ! 

I see no difference between mathematical notation and Mathematica. You apparently do. Please consider: Why do you think that there is a difference ? What is your definition of mathematics ? I think that you have been seriously 'brainwashed' - if I may use that indiplomatic term - into thinking as you do. 

This is the issue that W3C should tackle - and not start to program another language that actually cements the current misconception.


 
 
 
 
"the MathML group didn't deal with the makers of Mathematica (or Maple)"
Reaction Person 1: oh yes they did, even as far back as the beginnings of the OpenMath project that provided many of the MathML researchers responsible for
   Content-MathML.  Collaborators have included people with close ties
   with: Maple (Gonnet, who initiated the OpenMath project), Mathematica
   (several developers are members of the MathML WG), Axiom (Sutor),
   REDUCE (Strotmann, Neun, and others)...
Reaction Person 4: Representatives from both Mathematica and Maple are (have been) on the W3C Math WG.
Answer: Including product vendors at the table is not 'dealing with'. My analysis acknowledges this involvement, but reaches a different conclusion - by looking at the end result. 'Dealing with' is to be read as 'facing up to'.

 
 
 
 
Objectives
Reaction Person 1: It should be noted also that the very idea of OpenMath (and Content-MathML) is
  - to get away from the babel of CA languages, and define a language
    all can agree on
  - to get away from the unnecessary details that some of them need
    for operational purposes (e.g. Axiom's very detailed type system,
    or the distinction between int and Int in Maple)
  - to get away from an operational view of maths and towards a 
    declarative one
  - to go beyond Computer Algebra and into the rest of mathematics
Answer: 
  • If there are more objectives than stated in the MathML document, then this document needs to be adapted.
  • My idea is that this entire discussion is less relevant if we don't take CA as the target. We shouldn't be satisfied with a 'formula editor' only.
  • Yes, we want to get rid of Babel and superfluous detail. So this reaction cannot be seen as criticism.

 
 
 
 
 
Relation to CA
Reaction Person 1: The paper is furthermore rife with misunderstandings of the concepts employed in the definition of MathML and their relation to concepts in
Computer Algebra languages.  Most fundamentally, the distinction between a
declarative semantics of MathML and the operational semantics of a
Computer Algebra system's user language is completely ignored (see e.g.
the introductory chapter on the design decidions for the KIF (knowledge
interchange format) language -- "why not LISP").  At another place, it
fails to distinguish between import and export convertability. 
Answer: 
  • This is below the belt. This person is suggesting that I do not know the distinction between a text editor and a 'calculator'. Or between reading and writing.
  • My idea is that this entire discussion has little meaning if we don't take CA as the target. We shouldn't be satisfied with a 'formula editor' only.
  • Note for example that the distinction between declarative and operational can be subtle. Also operations are math. So Expand[(a + b)^2] is a declaration - defined as a^2 + 2 a b + b^2. Since it is the computer that does the translation (execute the definition), we are wise to target for CA.
Second Reaction Person 1:  My "below-the-belt" comments I am willing to substantiate as soon as you show any willingness for serious research and discussion.
Answer: I am serious. I think that you don't understand my argument that you should not 'program around an issue of market structure'. 

 
 
 
 
 
object tag
Reaction Person 1: The author apparently also fails to realize that his proposal for a <mathematics use=Mathematica> ... </mathematics> already exists: it is
called the "object" tag.

Your research into the background surrounding MathML has obviously been
lousy -- recognizing that plugin technology already implements exactly
what you're asking is something that one can easily ask of a serious
researcher, indeed any HTML novice. 

Answer:
  • Well, I don't know everything. I hope that it is possible to give a criticism on the general objectives and results without being pinned down on a detail. 
  • So this object tag allows me to paste Mathematica code into HTML ? If I look at the HTML 4 specification, I am not convinced.
  • For the record: I use HTML for 7 years now, at more than a novice level. Anyone can see my credentials on the web.
  • Really, if such an object tag already exists, and could be used in that manner, why then continue with the rest of the circus ? Why not tackle the copyright issues, and why proceed with re-inventing the wheel and creating <brackets> and &labels; for which we already have better readable expressions ?
Reaction Person 4:  "In the short run, MathML should be reduced to the statement <mathematics use=...> ... </mathematics> and the browser should have to capacity to call onto the computer language package."

MathML (and other external) objects can be incorporated in XHTML via the 
object tag. However, this plug-in/helper application view has several (by now, 
well-known) limitations. 

Answer: OK, so my impression was correct that there are limitations for the existing code. Let us focus on eliminating those limitations before we continue on re-inventing the wheel. Really, there are a lot of universities who use CA programs, and their purchase departments can have a good discussion with the software vendors ! Don't turn something into a programming problem which is essentially a management problem and a problem of market structure.

 
 
 
quality of MathML
Reaction Person 1: MathML may not be perfect, as I'm the first to conceed ;-), but it is very well designed (compared to, say, Mathematica or REDUCE input languages), and it should be published, even in its imperfect state, as soon as
possible.
Answer:
  • Its design is criticised - and the criticism is not really replied to.
  • The working group has not been impartial - but an arena of different interests.
  • I am always in favour of publishing, so that people can be informed. But W3C should not support it as a 'standard', subject to further evaluation. The only standard that needs support is the <mathematics use=...> bracket.

 
 
 
From a Mathematica user
Reaction Person 2:  Thank you for your ringing endorsement of Mathematica.
Let me assure you that the work you have invested in Mathematica is
not wasted.  MathML is not meant to replace Mathematica or any other
software system.  It is a low level communication and archival XML-based
language.  Indeed, because of MathML, documents you write in Mathematica
can be exported to a variety of other applications, including browsers.
In Mathematica V4, simply choose File:Save as Special:HTML/MathML
and your notebook, math included, will be exported as HTML with MathML
for all StandardForm and TraditionalForm cells.  Similarly, documents
containing math exported by other MathML-enabled applications can be
pasted into Mathematica and used as part of a computation.
Reaction Person 4: 
1. Mathematica documents can be made available on the Web (via plug-in 
solution).
2. Mathematica 4 provides support for Mathematica document conversion 
(import/export) to MathML.
Answer: 
  • I am pretty certain that WRI will cope with MathML. 
  • I am aware about the Save and Import features. 
  • I am not worried about my own work invested Mathematica - for these reasons.
  • I am worried about the general situation as expressed in the paper.
  • Indeed, rather than that we get a good discussion about the language that people use, we will see people converting into MathML. The plug-in facility might be used less often, since MathReader will be regarded as something alien to mathematics rather than as its prerequisite.

 
 
 
Potentially infinite ?
Reaction Person 2: The MathML *standard*, as opposed to your suggestion of using  <mathematics use="xxx"> and </mathematics>
means applications only need to understand one language, not a potentially
infinite number of languages. 
Answer: 
  • Is this a criticism or a support ?
  • My suggestion is that the various software producers (Mathematica, Maple, TEX, ...) all have 'readers' (like MathReader) and that Browsers can call onto such readers. For editing, everyone uses the program of his or her choice. For copying results of others, there are ample conversion programs. So there is a potential infinite number of programs that can be used. The only thing is that the preferences-file of the browser must be able to add new readers. Yes, I am still talking about the short term solution, till we really have that open standard.

 
 
 
Software dependency
Reaction Person 2: Furthermore, the use of XML notation
means that the math is not invisible to standard XML processing tools.
This feature is used in the production of the MathML draft, whereby a
common XML source is processed by XSL transformations to produce HTML
(for the Web) and TeX (for print) versions of the draft.  It is also
planning on being used, I believe, by the Mozilla MathML implementation
to translate content MathML into presentation MathML.  There are many
things that I and others in the MathML group dislike about the SGML/XML
syntax such as its verbosity. But these dislikes are vastly outweighed
by the benefits of having a large and rapidly increasing number of
tools that deal with this syntax...  which as I mentioned earlier,
includes Mathematica.
Answer: 
  • This shows that people are made dependent upon another set of software. We already have Mathematica (or Maple, or ....) and we can read (a+b)^2, and suddenly we need three or four additional programs ! (Except perhaps Mathematica that can do all.)
  • So the development of the future is: Do everything in MathML, since this saves conversion. Forget about readable source code. Use lots of 'tools'. Accept the myth that is created here. Mathematics is not a language, but something created by clicking on menu buttons. Is that the future that we want?

 
 
 
WRI's position
Reaction Person 2:  Wolfram Research understood early on the importance of designing and supporting a standard for mathematical representation on the Web in
particular, and in XML in general.  We have participated since the
beginning of the MathML group to help craft the standard and are on
the whole, quite pleased with the result.  I believe that the other
industrial members of the committee are also pleased with the result.
Answer:  If WRI says something, we better pay attention. Yet:
  • That the industrial members are pleased, is not an argument in itself. As long as the new standard does not 'infringe' on the presumed copyrights, the new standard helps to create the illusion that such copyrights are real. 
  • The standard is so awkward that software tools are required to deal with it, creating another barrier. Curiously, such a barrier does not exist for the Mathematica language, where one can type, read and evaluate expressions directly ... (Mutatis mutandis for Maple, Derive, ....)

 
 
 
 
Fallacy again
Reaction Person 2:  As a Mathematica user, you will probably never need to see the MathML anymore than you need to see the Postscript used for graphics in
Mathematica.  But just as with Postscript and graphics, in the future,
you will benefit from what will hopefully be the universal acceptance
of MathML as a common interchange format for math.
Answer: Well, the paper above explains that this is a fallacy. If I have the expression in Mathematica "{a, 2} . {3, 4}" and I change this into MathML, send it to you, and you read the MathML into your program, let's say Maple. Who is going to guarantee me that Maple will not present this as "{{a . 2}, {3 . 4}}" ? I don't use Maple, I am not going to check. Yes, this is a silly example. But it is an example nevertheless. You want a complexer example ? Let me define a certain symbol in Mathematica. Then I must hope that such freedom of definition is properly supported by MathML and Maple. There will be people who will use both programs, and who will communicate about such translations. Perhaps we have an interchange then. My reasoning however is different. I think that we need a common interchange format for math for people. Not for printers. If people use the same language, then we can write computer programs to support that language. Computer Algebra vendors should compete on such programs, not on syntax.
Reaction Person 4:  "The idea is that a user will not see the MathML input."

Why not? It can (and has) been done. Use, for example, Form + 
CGI/[Programming Language of Choice] + MathML-aware parser.

Answer:  I hope we are not getting confused. As the MathML group presents it: Most users will generally not see MathML. Of course some can - I never said that nobody can read hieroglyphs. 

 
 
 
MINSE
Reaction Person 3: Have you heard of MINSE?  See: http://www.lfw.org/math/

This system was designed, implemented, and deployed in 1996,
many years before MathML came together as a standard.  Today
its implementation is still much more widely accessible than
MathML's -- ever since it was deployed, it has enabled the
display of math expressions at reasonable quality in any
graphical browser, and the easy writing of such expressions
by document authors (neither readers nor authors need install
any software at all).

For the MathML

    <msup>
        <mfenced>
            <mrow>
                <mi>a</mi>
                <mo>+</mo>
                <mi>b</mi>
            </mro>
        </mfenced>
        <mn>2</mn>
    </msup>

the corresponding MINSE form is simply

    (a+b)^2

as anyone might reasonably expect.

You quoted the design goals of MathML in your document, and
i agree with you that Mathematica meets most of them -- but
not all of them.  Mathematica notation isn't extensible to
support new expression forms in general, simply because all
the Mathematica forms are required to be implementable with
a real algorithm (as far as i know).  You can't just make up
a new kind of form to represent a concept by itself, or a type
of value that is not already part of Mathematica's type system.
Of course, it is also the case that since Mathematica is
tightly controlled by a single company, it is difficult for an
individual to extend the system even within its assumptions.

MINSE addresses that goal by allowing extensible representation
(you can add new compounds) and an extensible stylesheet
mechanism for presentation.  Its attempt to provide a generic
hierarchical structure for data with a generally applicable
transformation mechanism, though not as popular, predates the
arrival of XML and XSL on the scene.  When it was presented to
the MathML group the goal of extensibility was scoffed at,
though it is clear now that others have finally come around to
recognizing the importance of extensibility and flexibility,
leading them back to XML.  It is comforting to see that we have
at least this goal in common, even if it is four years later.

All we need now is a short form for XML -- like MINSE -- that
is readable and enterable by humans, and we will have come
full circle back to achieving the dreams of MINSE in 1996,
except that this time around, there is all the hype necessary
to provide a greater chance of success.

Answer:  I hadn't heard of MINSE - but these points make sense. No doubt people will argue that MINSE 'has fundamental design errors' ? This is something that the math world (AMS) should look into.
Reaction Person 4: "Please, if Mathematica can read "(a + b)^2", why should MathML make it so difficult ?!"

MathML is based on XML syntax. This can (but not always) lead to verbosity. 
This is an issue but there are several benefits (such as, more precise 
resource discovery) as trade-offs that outweigh that. It, however, remains an 
issue (typing errors, "too much" markup for "too little" result) if you insist on 
text-oriented editing (such as, via Emacs). Whether mathematical notations 
should be based on XML or whether embedded markup is the right direction,
is an entirely different issue. See http://www.xml.com/pub/w3j/s3.nelson.html .

Answer: That MathML is based on XML does not answer the question posed: why would you want to do that ? Why not use Mathematica ? 
Reaction Person 4:  Good question. There are several reasons that I'll not mention here. (Look into any introductory books, overviews.) But if you can come up with a
 reason of not using XML and something else which is feasible and open, that
 will be important. 
 Why not use Mathematica? I am repeating; it is proprietary. The the 2D symbolic language it uses is not open for public discussion, the software costs, there is no reason of getting locked into ONE company's vision of  computing, and so on. 
Answer: So it seems that the issue boils down to copyright anyway. And my paper concludes to the proposal to the scientific community: Are we going to accept this gift for W3C, or is it something like the Trojan horse, that will actually destroy the intellectual freedom of mathematics ?

 
 
 
 
"It is Byzantinely complex, unintuitive, unesthetic, highly undocumented,
it requires complex software support, etcetera." 
Reaction Person 4: 

What exactly is complex? [Re]presenting mathematical notation on the Web 
for subsequent actions is a nontrivial problem. Nontrivial problems can have 
nontrivial solutions. (Now, if only there were (on a 8 1/2 x 11 inch paper) a 
one-line proof of the Fermat's Last Theorem or one-line numerical solutions of 
bifurcation problems in nonlinear elliptic partial differential equations ...)

MathML is not designed (only) for aesthetics. Aesthetics in mathematical 
notation have no known bearing towards human understanding or machine-
based "intelligent" searching. Whether raw MathML is/is not "aesthetically 
pleasing" is subjective. The burden of aesthetics is on the processor at the 
delivery-end (renderer, printer). If needed, MathML can be transformed to 
"aesthetically pleasing" formats, including [La]TeX and/or PDF.

MathML is not "highly undocumented"; see the pointers at 
http://www.w3.org/Math/ .
In particular, (aging) http://indy.cs.concordia.ca/mathml/ and 
http://www.webeq.com provide documentation on various aspects of MathML.
 

Answer:
  • It is highly undocumented compared to e.g. the documentation for Mathematica
  • Yes, I understoond that 'aesthetics' have not come into play. My paper above specifically quotes the MathML paper on the PostScript analogy. However, I have explained that this line of reasoning is a fallacy. Let me try again: In Excel I can create a formula by clicking on buttons. I can turn on the recorder, and thus I get a series of commands. That series can be regarded as the "PostScript" for creating that formula. The MathML working group of course has been working in a more systematic manner. So, I hope that it is clear that I understand the concept of the PostScript analogy. (And I am happy that there is GhostScript !) The point that I make in the paper however is that this analogy is a fallacy - and that the proper language for math on the web should be human readable and quite alike Mathematica.
  • Yes, we should not let us be seduced into a discussion of 'complexity'. What I mean to say is that (a + b)^2 is simpler than its translation into MathML. I know that computer input differs from what people are used to - for example 2 1/2 is two-and-a-half for people and two-times-a-half for Mathematica. I even consider such things the real challenge of the use of math on the web, rather then the Bizantine complexities that MathML is creating.

 
 
 
 
 
"A quite perfect alternative already exists in Mathematica: simple, elegant, 
intuitive, highly documented etcetera - and users of Maple may think similarly 
about Maple."
Reaction Person 4:

1. Mathematica or Maple are not perfect alternatives to MathML. They
all serve different purposes (though overlap in intent) and are complementary.
This judgement is based on experience with all three, and not heuristics.
2. Mathematica and Maple are both proprietary solutions. MathML is not.
3. Simple, elegant, intuitive, ... are all subjective terms. Arbitrarily complex 
Mathematica or Maple programs can be written and so can MathML 
documents.

Answer:
  • I say "quite" perfect. So let's use these in the mean time.
  • What is proprietary: do you think that the Mathematica language is a property of WRI ? Wow ! You give away the history of mathematics to a person or group who once happened to type it over into a computer ?
  • Simple, elegant, intutitive ... are perhaps subjective, but also inter-subjective. The MathML document itself recalls the dx/dy dy/dz notation. Please don't dodge the real issue by sophistry.
Reaction Person 4: Mathematica has a bent towards symbolic computation. Now they have added some numerical computation routines which are fine at an undergraduate level but not at higher level. Complex problems in ODEs and PDEs can not be solved by Mathematica. Yes, it has a programming language but like any other programming language, it has its limitations.
     MathML is a markup language. It has NOTHING to do with computation. It is designed for semantically-oriented typesetting and extensibility. Mathematica is not a data format but MathML is. That is why Mathematica and MathML are complementary: use MathML (instead of TeX) for typesetting and Mathematica for computation. If one doesn't find Mathematica good enough for the application in question, replace it by another engine: use Maple, REDUCE, MACSYMA, ... If everything was proprietary, things would be less flexible. 
Answer: 
  • It is a bit curious to say that MathML needs only representation, and criticise Mathematica for not being able to solve issues (though I don't know what you mean by ODE or PDE).
  • Mathematica can also be used for representation. Let us do this in the short run. And repair the supposed design problems.
  • There is good reason to target for a representational language that also can be evaluated. See my comment on market structure.

 
 
 
"W3C supposedly comes up with all kinds of subtleties. But it appears that 
such issues, and even more, already have been covered in Mathematica. 
They ‘only develop a standard’ and other - commercial ? - institutions will need 
to provide the real services."
Reaction Person 4: 

W3C has developed:

1. Amaya, which provides rendering for MathML Presentation Markup.
2. EzMath, which provides a plug-in and an editor for MathML Content Markup.

Answer:

OK, W3C does a bit more. 

I was speaking 'relatively'. I really doubt whether you can provide the same service as users really would like. And for support I call your phone ?

OK. So in Word for Windows, there is a formula editor, and when I convert into HTML now, I get a GIF. In the future, I suppose I still cannot paste a Mathematica cell into Word, and I still get MathML when I convert to HTML again. I suppose that I must export from Mathematica to MathML, use the EzMath to correct it, and import it into Word - and then Word's formula editor should be able to handle this ?

Reaction Person 4:
Don't be sarcastic. Now, this is indiplomacy. Free and Open Source software has lot of benefits, but who said there are no trade-offs. I can use a variety of software to do different things with MathML (or other formats). I can not with Mathematica files unless you point me that a large base of free Mathematica file processing software. Cost is always an issue. 
Answer: My suggestion for market structure is that the language of mathematics is open and free, but that programs for handling it - e.g. editing, printing, evaluating - could be proprietary. Vendors could compete on the quality of their editors or evaluators or speeds. The question on support may come across as sarcastic, but is a real one. In a school I would learn mathematics (at a cost, too), and there would be support for math and the language of math. But I doubt if there is support for MathML. So, what about saying that it is free ? OK, so there is also ExMath. But my experience with Mathematica is that help files are quite important here. Perhaps MathML creates a common conversion standard - which is nice for the industry. But for someone who is doing math ?

 
 
 
"... An ANSI standard should be developed that takes its point of reference in 
the history of mathematics and not in commercial developments of the last 10 
years."
Reaction Person 4: 

MathML Specification takes into account and makes several references to 
mathematical development that go beyond the last 10 years. See, for example, 
http://www.w3.org/TR/MathML2/appendixi.html

The power of MathML comes from several sources, including:

1. MathML is an open, extensible format that leverages on other (open) 
standards. Nobody "owns" SGML, XML or MathML.
2. Based on XML syntax, as well as with the induction of semantics for both 
presentation and content MathML provides data (machine-to-machine 
interface) and as well as document view (human-to-machine 
interface) of the same MathML file, MathML record in a relational database, 
MathML object delivered by an Object Request Broker, and a MathML stream 
of bytes arriving at a network socket. Since the structure is separated from 
presentation, you can author MathML once, and use it in various contexts: 
present it (using CSS, XSL) on different devices (on desktop, PDA), 
manipulate/interact with it (using Computer Algebra Systems, DOM, XSLT), 
print it (by MathML -> PDF), exchange it between two MathML-aware servers.

In conclusion, MathML related issues remain (and are being addressed, within 
or outside the scope of MathML Specification), including: 

1. A robust infrastructure for large-scale, transparent (minimal, ideally zero 
loss of information) and automated (such as, by batch processing) legacy 
(say, [La]TeX, RTF) document transformation to MathML Content Markup.
2. Native rendering support in "popular" user agents to ensure a broad 
accessibility of MathML.
3. Mathematics-specific metadata that conforms with RDF Schema and takes 
into account existing metadata efforts (such as, Dublin Core, IMS metadata).
4. A stable list of MathML Content Markup elements that addresses 
localization. (It takes into account basic and widely-used mathematical 
notations used around the world (and not just those in USA or Europe.)
5. Semantic bindings for representing mathematical notations within the XML 
architecture that are external to the list of MathML Content Markup elements 
as well as external to OpenMathML CDs.

A (constructive) criticism is useful but your work, unfortunately, misrepresents 
the capabilities of both MathML and Mathematica (as well as, other Computer 
Algebra Systems), and does not address the essence of the issue well.

The horse is in front of the cart and galloping.
 

Answer: 
  • The logic of this argument is not sound.
  • This is not answering to the criticism, but just repeating what was criticised.
  • My paper is accused of misrepresentation, but no example of misrepresentation is given.
  • As e.g. Mathematica is based on ASCII only, Mathematica can be embedded into HTML, and if the Server (Browser) is Mathematica-aware, the browser can represent the math. You can do with Mathematica whatever is claimed for MathML. (WRI will make sure of convertibility.)
  • The statement that MathML is not 'owned' suggests that Mathematica is 'owned'. But mathematics cannot be owned, and Mathematica is mathematics (as WRI itself admits). W3C does not provide a service to mankind if it helps creating the illusion that the language of mathematics (e.g. Mathematica) is copyright.
  • I can see something galloping - into the direction of a ravine. I hope it are not lemmings.
Reaction Person 4:  Yes, it is probably not answering to the criticism completely. No it isn't repeating what was criticised as you did not mention the points I did. 
Answer:  The structure of our communication here is:
  • I: "We should not use this car. For today, let's use the train." 
  • You:"The car is blue." 
  • I: "You don't reply to my criticism. You repeat what is criticised."
  • You: "You didn't mention the points I did."

 
 
 
 
Why write this paper
Reaction Person 4: 

If you don't believe XML works, nothing can change it. If you don't believe MathML works, nothing can change that either. Then why write this report? If you think they are "reinventing the wheel" why should that affect you? You can keep on using Mathematica; there is nothing stopping you ... unless WRI stops the Mathematica line of products (and support). You and I can not control, predict or dictate that it will not happen. THAT is the power of an open standard. If W3C does not come out with iterative versions of MathML, no problem, we can make our own extensions, by oneself or by collaboration and put it back in the public's eye instead of locking it with patents. If one company stops producing a software, others may already be there. If not, we can write our own. 

Answer:
  • I write this paper because I am concerned about losing the intellectual freedom of mathematics. The use of the computer should increase that freedom, not reduce it.
  • I am concerned about the situation that people think that the language of mathematics is proprietary - and the MathML project seems to enhance that thought. (See here.)
  • If the MathML community speaks about the elegance of math, and then produces its ugly language, then they deserve some criticism.

 
 
 
 
Embarrassment
Reaction Person 4: 

Disappointment is a two way channel: I can be disappointed by my work and you can tell me that you are disappointed by my work. Embarrassment is not. It is a personal experience. I can be embarrassed by my work and but why should you be embarrassed by my work (if we are not related at all)? Whether W3C should be embarrassed is a different matter and a strong statement. If they are not embarrassed, why should you impose upon them that they should be? Would you like it if I told you that your report is an embarrassment for you, for me and for the entire publishing industry, and published this? The point is: not everything we think has to be put on the paper. There are limits but I will not dictate them. You should be wise enough. 

Answer: 
  • Dutch culture has the concept of "being embarrassed for someone else". Suppose some person is to give the keynote address of a convention, and it turns out that he or she has not really prepared it. In Dutch culture you might feel embarrassed for that person. I suppose that it is part of the process of starting to take part of the blame - for one shouldn't have invited that person or have gone to that presentation anyway.
  • I would not like being told that a performance is an embarrassment.
  • Yes, the scope of having an impact with this paper is low. But I'd rather write it and publish it, than not doing so. Since I think that the story needs to be told.
  • I hope that W3C does not like being told that their performance here is an embarrassment. And that they reconsider what they have been doing.

 
 
 
 
Reply
Reaction Person 5: 

"You are probably under the impression that MathML is a good idea." 
MathML is an attempt to standardize mathematics in a medium where protocols and standards are fundamental in order to join  the millions of machines and users around the world. The Internet is a connection between so many different computers and systems that if we want two random machines to communicate we need a common interface. 

MathML is a good idea because it proposes a solution taylored specifically for the web. It was inspired by OpenMath's ability to allow communication between computer algebra systems, and adds a presentation component which is aesthetically pleasant to the user. Especially on the Internet where good presentation goes hand in hand with success. 

"It is Byzantinely complex, unintuitive, unesthetic, highly undocumented, it requires complex software support, etcetera." 

As was mentioned before, the verbosity of MathML might seem at first decouraging for any user. But MathML was not designed to be handwritten directly by a human. This is why there has been a boom in different MathML compliant applications which intend to edit and produce MathML, read-in MathML, display and render MathML. 

All of this without the user needing to directly deal with the verbosity of the MathML notation. However Mathematics are complex and do not lend themselves easily to representation. Developing a representation which englobes semantic meaning in a way computers can understand is a non trivial task. 

Furthermore the boom of MathML compliant applications is just the proof of the communities' approval of the MathML idea. I have been involved in the development of MathML applications for REDUCE, and believe that MathML has helped push down many barriers. Mainly it has enabled communication between different systems, just as other standards have done in the past for other purposes (ie TCP/IP). It has imposed a common representation between so many applications. REDUCE, just as other computer algebra systems, can now benefit of the sharing of mathematics, and thanks to the applications, it imposes no heavy burden on the user. 

Finally your proposed <mathematics use="..."> ... </mathematics> tag is a curious idea but for it to work, it would need a browser or a computer algebra package to have interfaces with all the different computer languages. This would be problematic when new computer algebra packages would appear or when existing ones would modify their languages as they evolve in time. Not all browsers and computer algebra systems would be able to posses the large amount of interfaces and finally only the most used languages would succeed, leading perhaps to the adoption of a few as standards. Simply a long path to where we are now. 

I believe a few of your comments do have a constructive value, but many others need revising and a better understanding of the history of mathematics publishing on the web, OpenMath and MathML. 
 

Answer:  This is not answering to the criticism, but just repeating what was criticised.