Re: Re: Simplifying and Rearranging Expressions
- To: mathgroup at smc.vnet.net
- Subject: [mg96051] Re: [mg96008] Re: Simplifying and Rearranging Expressions
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Tue, 3 Feb 2009 06:32:30 -0500 (EST)
- References: <gls1u8$hjl$1@smc.vnet.net> <15441402.1233316177571.JavaMail.root@m02> <gm0q6p$rpr$1@smc.vnet.net> <200902010940.EAA22741@smc.vnet.net>
On 1 Feb 2009, at 10:40, AES wrote:
> In article <gm0q6p$rpr$1 at smc.vnet.net>,
> "David Park" <djmpark at comcast.net> wrote:
>
>> Nevertheless, I would still argue that users should be encouraged
>> to do
>> derivations completely ACTIVELY using Mathematica. They may think
>> about the
>> principles, strategy and tactics of a derivation when they are away
>> from
>> Mathematica. But implementing a derivation or proof actively on
>> Mathematica
>> has many advantages.
>
> I'll back down on my recent assertions on this point. People doing
> analyses should do them in whatever way works for them, and both David
> and I can well have different but valid suggestions on this.
>
> What I'm not at all ready to back down on at all-- and what Andrzej
> Kozlowski appears to agree with me on, at least partially -- is the
> broader assertion:
>
> Proposing to do analysis; numerical calculation; graphing and
> animation;
> and preparation of final expositions or presentations (i.e., reports,
> articles, talks, online web sites), using just one massive
> "integrated"
> package (e.g., Mathematica) and/or one single format (e.g.,
> Mathematica
> notebooks), is an absolutely bad, undesirable, misguided, unworkable
> idea.
>
> It may be workable, even convenient, in some limited cases: A simple
> derivation, leading to a simple report or memo, which also functions
> as
> a seminar presentation or class lecture.
>
> But as a general or universal approach, it's a terrible idea, for many
> reasons, not all of these connected specifically with Mathematica, but
> with many of them very well illustrated by Mathematica.
>
Well, I am not sure if I agree or not because I am not sure exactly
what point you are making. In fact, when reflect on how I use
Mathematica, it seems to me that I see a number of different issues
that have been conflated in this thread. One of them is using
Mathematica when (informally) working on mathematics. A different one
concerns preparing a paper for publication (I call this "working
formally"). Yet another one is when one is actually computing
(programming). Yet another one concerns teaching. There is also at
least one other, that I will describe at the end, and probably many
more than I am not aware of.
One issue is how a program like Mathematica should be used when
actually working ("informally") on some mathematics. I don't think
there is any universally valid answer to this because there are so
many different types of mathematics and so many different approaches
to doing it.
I myself wear several mathematical and programing hats and each of
them comes with a somewhat different working style. As an algebraic
topologist I do most of my work in my head, with the help of
pictures, which I prefer to draw on a blackboard or a white board
rather than on paper (the main reason being that whiteboards or
blackboards unlike pieces of paper do not have the habit of
disappearing when one needs them). Writing graphic programs in
Mathematica would not be of much use in this, for this pictures are
symbolic rather than literal. But the new set of simple graphic tools
that became available in Mathematica 6 is actually often quite
sufficient for this purpose and I have found myself using them quite
often for this sort of informal sketching.
The second stage of my work as a topologist is often computational.
Part of this work is algorithmic and I some times use Mathematica for
this (most often PolynomialReduce and GroebnerBasis ) and part
requires human insight. The ability to transform one expression into
another using Mathematica plays almost no role in this.
Most of the work that I do when I wear my (newer) probabilist's hat is
also not suitable for computer based symbolic manipulation since the
concepts are too general. In my probabilistic incarnation I
occasionally use Mathematica for performing certain algorithmic
transformations, for example applying the (multidimensional) Ito
formula to a complicated expression. For this kind of purpose, when
expressions are sufficiently complex, I find using Mathematica more
reliable than my own skills. But most of the time I just use
Mathematica for informal writing of formulas and I rely on typing and
copy and paste, just as I do when I wear my topologists hat. These
are almost never "live" formulas, since they refer to concepts that
are not defined in Mathematica. For example, when you work with an
integral integral with respect to a semi-martingale (e.g. a Wiener
process) you certainly do not want Mathematica to evaluate it as an
ordinary integral.
Finally, there is my third incarnation: when I work on computational
problems in mathematical finance or write a review of a paper on
computational mathematics for Mathematical Reviews I work mainly in
Mathematica (although again the reviews are written in TeX). This work
consists essentially only of programing and does not involve any "step
by step" symbolic manipulation.
All the above concerns informal working on mathematics. Writing for
publication is a different issue.
When I write a research paper or a review I almost always use TeX,
since only TeX is accepted by the journals I publish in.
But, I find Mathematica vastly more convenient than TeX for informal
work. In fact, there is a big difference between the way most people
do "informal mathematics" and the way things are presented for
publication.TeX and Latex are intended for formal mathematical
presentations but are totally unsuitable for informal work. I
certainly do not want to specify environments and all the rest when I
am working informally. On the other hand, Mathematica is very suitable
for informal symbolic manipulation and, if you become used to it and
skilled at it, quite as natural and efficient as pen and paper, with
the added bonus that Mathematica notebooks are harder to mislay and
loose and don't clutter your workspace. In fact I have been using
Mathematica in this way for teaching purposes for a decade, doing
computations "by hand" in Mathematica, displaying them by means of a
projector and making my notebooks available for download for my
students. Its much harder to do that with pen and paper.
Of course other people probably have quite different approaches, which
are better suited to the kind of things they do. But quite generally,
I believe that symbolic algebra programs are best used for symbolic
work that is too hard to do by hand. For example, I don't think it is
an efficient use of computing power and human intelligence to try to
force Mathematica to return an answer that is already well known and
can be easily obtained by hand. Functions, like, for example
TrigToExp, convert expressions to certain standard forms (in this
particular case trigonometric functions are converted to Logs and
Exponentials). Reducing complex expressions to standard forms is a
basic technique not just in computer algebra but in all of
mathematics. (It is because of these standard forms that FullSimplify
can sometimes show that two expressions are equal even if it cannot
reduce on to the other.) The "standard forms" that CAS systems can
handle efficiently are sometimes quite different from forms of
expressions that seem "nice" to human beings. Sometimes, more by
accident than by design, applying a certain permutation of standard
form transformations (perhaps together with Simplify) will lead one to
one of these forms that humans like. Finding such transformations can
be fun but one should keep the importance of such things in proper
perspective. It is not greater than, say, that of sudoku puzzles.
Finally, let me address what seems to be your main objection:
> Proposing to do analysis; numerical calculation; graphing and
> animation;
> and preparation of final expositions or presentations (i.e., reports,
> articles, talks, online web sites), using just one massive
> "integrated"
> package (e.g., Mathematica) and/or one single format (e.g.,
> Mathematica
> notebooks), is an absolutely bad, undesirable, misguided, unworkable
> idea.
I think you are missing the point of what WRI is doing. Nobody is
trying to impose a single format on the world of mathematics, and
nobody is trying to force mathematica users to abandon other programs.
The best proof of that is the large number of export formats that
Mathematica supports. The whole point of Mathematica "integrated
approach" is entirely different. In my opinion it lies in the idea of
"Mathematica Demonstration", as exemplified here:
http://demonstrations.wolfram.com/
I consider the Mathematica demonstration to be a truly remarkable and
revolutionary idea. Why, I will try to explain below. First, I just
want to note that this could not be achieved without a fully
integrated system that Mathematica provides. That's why I don't expect
that Mathematica will see any competition in this area for quite some
time.
Why I think these demonstrations are such a great idea? If you only
glance superficially at the demonstration site you may think that they
are merely cute animations and mathematical toys. Indeed, there are a
few of this kind, but be not deceived. Many demonstrations contain
fully functional code that can be downloaded by the user and after
minor adjustment be used to solve serious real life problems. At the
same time, the Mathematica demonstration provides a remarkably
intuitive and lucid way of conceptualizing what otherwise would be
more or less incomprehensible piece of computational code. Some of the
demonstrations I have contributed are based on papers I reviewed for
Mathematical Reviews. In my opinion, these demonstrations have far
greater explanatory power than any number of words (certainly any
number of words written by me). Some others attempt to elucidate
concepts in Mathematical finance while at the same time providing code
that can be actually useful in real world computations. In the case of
mathematical finance, I think there is an almost universal agreement
that in the past computational techniques were emphasized too much
while conceptual clarity was neglected. Mathematica now offers a
unique way to combine conceptual description of a model with a
mathematical solution through an analytical or numerical process. If
more people contribute demonstrations adopting this approach the
demonstrations site could become a valuable repository of reusable
code accompanied by conceptual visualizations with a very wide area of
applicability.
In my opinion a Mathematica demonstration is much more than a "new
format", it is a completely new form of expressing and communicating
mathematical ideas. As such it justifies everything that WRI has done
to make it possible - which is essentially everything that you are
objecting to in Mathematica. But of course, you are always free to
ignore these new features if they hold no interest for you. You are
also free to use CalcCenter, which may well do everything that you
really wish to use Mathematica for (I can't guarantee that as I do not
really know either how you use Mathematica or what exactly CalcCenter
can do).
Andrzej Kozlowski
- References:
- Re: Simplifying and Rearranging Expressions
- From: AES <siegman@stanford.edu>
- Re: Simplifying and Rearranging Expressions