Re: Mathematica vs. Lisp

From: Richard Fateman (rfateman_at_sbcglobal.net)
Date: 06/22/04


Date: Mon, 21 Jun 2004 22:57:32 GMT

Re teaching Maxima about integral of sine(x)/x...
1. The commercial Macsyma produces sin_int.
2. Ray is right that you would need to teach Maxima a few things
about sin_int, like a way to evaluate it, differentiate,
and special values for simplification.
3. For many purposes the original expression may be preferable,
though.

  There is a tradeoff in computer algebra systems
"The good of the one outweighs the good of the many." to reverse
Spock's quote.
Do you want a/b to be (quotient a b)
or do you want to minimize the proliferation of "kernels" like quotient,
and use (times a (expt b -1)) ?

which is wordier, but re-uses kernels that you can't really get rid of.
Si(x), the sine integral is one of those kernels that you can
pretty much get rid of: just use the integral. In some cases you want to
pander to
the common usage. e.g. sine and cosine could be expressed in terms
of each other or in terms of complex exponentials, but are so
familiar, they must all coexist somehow.

But I think the original question was really about the
programming language issues, not the mathematical capabilities
of lisp...
RJF

Raymond Toy wrote:
>>>>>>"Albert" == Albert Reiner <areiner@tph.tuwien.ac.at> writes:
>
>
> >> > ,----
> >> > | <1> (run)
> >> > | Maxima 5.9.0 http://maxima.sourceforge.net
> >> > | Distributed under the GNU Public License. See the file COPYING.
> >> > | Dedicated to the memory of William Schelter.
> >> > | This is a development version of Maxima. The function bug_report()
> >> > | provides bug reporting information.
> >> > | (C1) integrate(sin(x)/x, x);
> >> > | | /
> >> > | [ SIN(x)
> >> > | (D1) I ------ dx
> >> > | ] x
> >> > | /
> >> > `----
> >> > I have no idea how easy it would be to teach Maxima about the sine
> >> > integral or to make it recognize this integral - but that is hardly
> >> > what I would call a "complete" CAS in any sense.
> >>
> >> What kind of answer did you expect? That it returns si(x) or
> >> something like that instead of the original integral?
>
> Albert> Yes, that was my expectation.
>
> That could probably be added fairly easily, but it probably wouldn't
> be very useful until you taught maxima about all the properties of
> si(x) too. And that's a bit of work.
>
> Also, AFAICT, no one has complained about the lack of si(x), so, of
> course, no one has done anything about it.
>
> Ray
>