- From: Paul Libbrecht <paul@activemath.org>
- Date: Mon, 20 Nov 2006 12:28:07 +0100
- To: Andrew Miller <ak.miller@auckland.ac.nz>
- Cc: "For those interested in contributing to the development of CellML." <cellml-discussion@cellml.org>, www-math@w3.org
- Message-ID: <45619147.2050603@activemath.org>
I know this is probably too much ressembling the content-mathml (and OpenMath) structure but here's a proposal: (t |-> x)' I somewhat find it neat and easy to understand but clearly not usual. I believe there should also be space for dt/dx (with or without bracket) yielding a different content-mathml expression maybe. paul Andrew Miller wrote: > > Hi all, > > I have been developing a plain-text input language for the content > MathML in CellML documents (so that it can be efficiently edited by > users). > > I am seeking opinions on the best way to represent derivatives > (including partials) in the input language. > > I have discussed this with the CellML team at the meeting today, and > several options were suggested. I would welcome opinions on which of > these options is the best, and I would also be keen to hear if you can > think of another different but better representation in input languages. > > All examples refer to the representation of the following content MathML: > <apply><eq/> > <apply><diff/> > <bvar><ci>t</ci></bvar> > <ci>x</ci> > </apply> > <ci>y</ci> > </apply> > > Option one: > Representation: diff(x, t) = y. > Advantages: > * Succinct. > * Follows the same syntax as functions in the rest of the language, > so makes it less complex and easier to understand. > * Easily generalises to partial differentials by replacing diff with > partialdiff or pdiff. > Disadvantages: > * Non-obvious to new users: does diff mean differential, difference, > ...? > * It is unclear to the user what the ordering of x after t means, > i.e. which is the bound variable, so you just have to remember that > the second 'argument' is the bound variable. > > > Option two: > Representation: deriv(x, t) = y > Similar advantages as option one, but also: > Advantages: > * Slightly less potential for confusion. > Disadvantages: > * Slightly longer. > > Option three: > Representation: differential(x, t) or derivative(x, y) > Similar advantages as option one, but also: > Advantages: > * Clearer meaning. > Disadvantages: > * Longer. UIs could simplify input of this by tab-expansion or > type-ahead features. > > Option four: > Representation: d(x)/d(t) > Advantages: > * Similarity to Leibniz notation (arguably more clear meaning) > * Clear distinction between the bound variable and the expression > that the differential is being applied to. > Disadvantages: > * Syntax is inconsistent with the rest of the grammar. > * It incorrectly suggests that differentials could be moved around, > while in reality it is a limited syntax for derivatives. > * Extending it to partial differentials could look messy and > confusing, e.g. del(x)/del(t) . > > Any opinions are welcome. > > Best regards, > Andrew Miller > >
Received on Monday, 20 November 2006 11:28:26 UTC