"upto" appears ambiguous, until you realize that the other possibility is "upthrough", which presumably has no ambiguity at all. Like I said, computer languages have now destroyed the original meaning(s) of "to". "less than or equal to" is also an ugly mouthful, and the fact that there is no ascii for a mathematical "<=" sign has always been distressing. Natural language has always made true mathematical (& algebraic) equivalence difficult to express, prehaps because in the real world, there ia almost no such thing as truly "equal" things. Perhaps learning the true meaning of "=" is the first step towards mathematical abstraction. At 10:41 AM 7/4/2004, Daniel Asimov wrote:
Henry writes:
<< Computer languages are just as bad.
"from m to n" now means [m..n] inclusive, although English was never so unambiguous prior to computer languages. Fortran never took a stand, as it simply used "1,N", and didn't use an English word.
I have always advocated "from m upto n" for the non-inclusive [m..n), since this matches 0-origin indexing much better than the "to" form: "from 0 upto length(vector)".
Now, I don't think it's such a bad thing that math or computer languages use ambiguous English to mean unambiguous things. Virtually any English word is somewhat ambiguous (multibiguous?), and it seems wworthwhile to use English words & phrases in math and computer languages instead of making up a new word for every concept or operation.
In computer languages, you just have to learn them, that all there is to it.
In math, there are a number of cases where "standardized" language really isn't standard, even for the simplest things. Does "the natural numbers N" mean {1,2,3,...} or {0,1,2,3,...}? Depends who you ask.
(On the other hand, I don't know if I think using "upto" to denote "up to but not including" is all that unambiguous; it's almost unambiguous for the opposite meaning: If in English someone says "He took care of those files up to Q, but no further", it would seem quite clear that Q was included.)
--Dan