The Math Forum

Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Math Forum » Discussions » Inactive » comp.soft-sys.math.mathematica

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: [mg6136] Re: [mg6104] Using subscripts in variable _names_!!!
Replies: 0  

Advanced Search

Back to Topic List Back to Topic List  
Don J. Orser

Posts: 13
Registered: 12/3/04
[mg6136] Re: [mg6104] Using subscripts in variable _names_!!!
Posted: Feb 23, 1997 12:20 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

Hi Guy and MMa Group!

Your (Guy Delamarter's) complaint about MMa notation is exactly on
target. (See below.) I don't have a solution but you might want to check out
Scientific Word/Workplace at for commercial
software which allows accessing MMa within a word processing/TeX
enviornment. It has its own drawbacks as it provides for only a limited
access to MMa. In particular, you can't access your own functions, but it
does provide for subscripts in the standard way. It's designed for doing
publishing, not mathematics.

In fact, your problem is an instance of a very much larger problem,
and one which is the harbinger (hoefully) of a future system designed around
the concept that the notation/language used by mathematics/mathematicians is
of first and central importance, and must take precedence over program(ming)

In short, you (Guy), are expecting an (interactive) programming
language designed by (primarily) programmers (not the mathematical content,
though, presumably) to be similar to standard mathematical notation.
However, the fact is, neither computational mathematics nor "very standard,
accepted sort of notation" are up to it.

I have also used Macsyma since about 1974 at MIT and believe that,
while MMa, Macsyma, Maple, ISETL, Prolog, etc., are major advances in
computational power/convienence (I use/have used all together with TeX and
Sci Workplace), for the most part, the "user languages" they provide are
very poorly designed. All are kludges making no distinction between
programming artifact, logically sound mathematical semantics, issues of
representation etc., with far too many redundant and overlapping functions
to learn, as opposed to a well thought out core of operations and data
structures. This becomes very evident when one attempts to move into
non-numeric mathematics, e. g., combinatorics, computational geometry etc.,

However, mathematicians must also realize that
algorithmic/representational oriented mathematics requires the introduction
of a number of new concepts, as what you describe below as "very standard,
accepted sort of notation" does not in fact exist, or at best is
insufficient for the modern job required.

In particular, the concepts of Church's lambda calculus, (and
Curry's combinatorial logic), and Lisp, e. g., the idea, among others, that
a function can control the evaluation of its arguments/domain (special
functions in Common Lisp, another kludge, in which the simplicity of the
original Lisp got lost) is central to the semantics of the new computational
mathematics and must be understood and incorporated into any implementation
of it. (BTW, Slagle's Symbolic Automatic INTegrator (SAINT, 1961) and Joel
Moses's Macsyma (1967) were both written in Lisp and precisely because they
provided both a theoretical basis as well as a convenient one.)

A very simple example of the two approaches (computational versus
"standard math") is the "quote" function of Lisp/MMa and the concept of the
"identity" function in mathematics, and must somehow be combined so as to be
viewed as the same sematic operation.

The "notational schema" of functional composition within "standard
mathematical notation" must be enlarged to include primitive recursion and
general recursion in some standard "notational schema". Delarative and
"value" only type specifications must be differentiated from "programming
state transition" type semantics, e.g., mathematical function definitions
versus algorithmic transformation of representations of instantiated
abstract mathematical structures, i. e., "declarative" versus "instatiation"

My personal belief is that something on the order of 25-50
"notational schemas" of a very general, complimentary and nonredundant
nature, complimented with the appropriate "data structures", will suffice
for providing a common base for further extensions into specialized areas of
mathematics incorporating add on packages etc.

The point of this "diatribe" is that the community is in a state of
transition. The current sate of affairs in which the mathematics community
is forced to put up with two parallel notations within which to express
itself cannot long endure. The concepts/notation schemas are there, but it
will take (a) new beginning(s) to build a "computer algebra" system which
simultaneously provides the mathematical community an acceptable notation
for communication with other humans as well as provideing a notation for
representation/algorithmic specification.

I do not have all the answers, or for that matter, any of them, but
I would like to see some organized attempt at understanding these long term
(twenty five years) very important issues, Guy having brought a very good
instance to our attention. The "efficiency" at which the community does
future mathematics is at stake.

Sorry to get so long winded and hope this is not too much out of
place for this forum.

Don J. Orser

>My department has finally purchased and installed Mathematica 3.0 and
>I was looking forward to using variable names that LOOKED like the
>variables I use in and read from technical documents. However, it
>appears that Mathematica assumes that subscripts are array indicies.
>I would gladly give up the ability to use subscripts as array
>addressing and use square brackets instead, if I could then use
>subscripts to denote unique names. For example, I would like it so
>that (using TeX notation, where _ denotes subscript) R_{sub} is a
>totally independent variable from R_{x}. As it stands now, the former
>accesses the sub'th element of R and the latter accesses the x'th
>element of R - and assumes R is some sort of array. In some cases
>this is okay, in others it isn't. One case where it isn't is when I
>want to define R_{sub} in terms of R_{x}. I obtain recusrsion in that
>case. Another case is where I want to apply Clear to R_{x}, but not
>Since what I am asking for is the ability to write in a very standard,
>accepted sort of notation, I would hope that 3.0 has a way of obtaining it.
>Guy Delamarter
>Guy Delamarter <>

Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2018. All Rights Reserved.