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: MCMC in Mathematica**

**simplifying a resulted derivative expression**

**Re: Simplifying and Rearranging Expressions**

**Re: Re: Re: Simplifying and Rearranging Expressions**