W3C home > Mailing lists > Public > www-math@w3.org > April 2002

RE: Assignment Vs conditions

From: Jimmy Cerra <jimbofc@yahoo.com>
Date: Fri, 26 Apr 2002 19:36:01 -0400
To: "'David Carlisle'" <davidc@nag.co.uk>
Cc: "'Bill Naylor'" <bill@scl.csd.uwo.ca>, <www-math@w3.org>
Message-ID: <000001c1ed7b$23fae4d0$0100a8c0@locutus>
---
(from B. Naylor)
> I would have thought that most MathML literate people would interpret this
> Markup as y of x, ie. y(x) where presumably y is a function and x is some
> variable.

Well, I never said it was a *good* idea; I was just brainstorming!  Isn't that
what this forum is all about?  The spec wasn't clear to me, so I spouted a
suggestion based on my understanding of MathML.  I've learned. :)


---
(from D. Carlisle)
> MathML, like any other language, starts to lose any meaning if you take
> standard constructs and use them for totally different meanings.

I just misinterpreted the meaning of "apply" in MathML.  Thanks for the
correction. :)


---
> If you can read the above as x=y then you can presumably read
> <apply>
>   <sin/>
>   <ci>x</ci>
> </apply>
> as sin=x and so no content mathml expression will mean the same for you
> as it does for anyone else.

I was thinking that "<apply> <sin/>..." means "Apply the function 'sin' to...,"
since <sin/> is a function that means "the function 'sin'."

However, since "<ci>x</ci>" means, "the mathematical object x," then "<apply>
<ci>x</ci>..." would mean, "Apply the mathematical object x..."  I interpreted
this as equality.

The important point is that <sin/> means a "function" and not a "mathematical
object" as I understand the term.  Thus, it is impossible to take:
> <apply>
>   <sin/>
>   <ci>x</ci>
> </apply>
...as meaning "sin=x".  If <sin/> simply meant the symbol, "sin," then I would
understand your interpretation.  However, that's not how I see the term (in the
spec, 4.4.8.1, "These operator elements denote the standard trigonometrical
***functions***").

Likewise, "<ci>x</ci>" doesn't just mean the symbol, "x" but "the mathematical
operator x" or "the variable x" (this is also from the spec, 4.4.1.2, "The ci
element is used to name an identifier in a MathML expression (for example a
variable). Such names are used to identify mathematical objects").

That's why I came up with the (crazy, dumb) idea.  I know I'm missing something;
what is is?
---
Jimmy Cerra



-----Original Message-----
From: David Carlisle [mailto:davidc@nag.co.uk]
Sent: Friday, April 26, 2002 7:09 PM
To: jimbofc@yahoo.com
Cc: www-math@w3.org
Subject: Re: Assignment Vs conditions


: I have an idea...  How about using the apply element as the following:
:
: <apply>
:   <ci>y</ci>
:   <ci>x</ci>
: </apply>
:
: Where the above means, "Apply y to x,"
yes
: or "Make x the value of y,"
no
: or "x=y".
no

MathML, like any other language, starts to lose any meaning if you take
standard constructs and use them for totally different meanings.
If you can read the above as x=y then you can presumably read

<apply>
  <sin/>
  <ci>x</ci>
</apply>

as sin=x and so no content mathml expression will mean the same for you
as it does for anyone else.

If you want to have an assignment operator and mathml doesn't provide
one then the extension mechanism is to use csymbol as in
I have an idea...  How about using the apply element as the following:

<apply>
  <csymbol definitionURL="URI to your description of the semantics of
  assign">assign</csymbol>
  <ci>y</ci>
  <ci>x</ci>
</apply>


or if you think assignment is a form of equality then
<apply>
  <eq definitionURL="URI to your description of the semantics of
  assign"/>
  <ci>y</ci>
  <ci>x</ci>
</apply>



David



_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
Received on Friday, 26 April 2002 20:10:20 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Saturday, 20 February 2010 06:12:51 GMT