On Fri, Feb 13, 2009 at 7:35 AM, rjf <fate...@gmail.com> wrote:
>
>
>
> On Feb 13, 2:30 am, Simon King <k...@mathematik.uni-jena.de> wrote:
>> Hi all,
>>
>> On Feb 13, 10:09 am, Stan Schymanski <schym...@gmail.com> wrote:
>>
>> > rjf wrote:
>> > > If there is an algorithm for simplify_full(), then presumably it could
>> > > be programmed in Lisp, and incorporated in Maxima.
>>
>> > > You are invited to do so.
>>
>> > > I assume that there are examples for which it doesn't do what you
>> > > want, and so you could argue that it should do more work.
>>
>> Sure. I am of course aware that there is no *algorithm* (in the sense
>> of always terminating in finite time, yielding the correct result) for
>> deciding whether f>0 for a general expression f, and also it is not
>> clear what a "simplification" should be.
>>
>> So, one can't have more than a heuristics. But that's the point: The
>> better the heuristics, the happier the user --- provided the
>> heuristics works in a reasonable time. And any good heuristics should
>> at least catch the obvious cases.
>
> "reasonable time" and "obvious cases" need to be defined.
>
>>
>> Since Maxima certainly knows sin(x)^2+cos(x)^2 == 1 and various other
>> identities, it makes sense to try and apply them to f as
>> simplification rules.
>
> OK, here's an example.
>
> Start with
>
> (x-1)^150-(x-2)^150-2^150+1;
>
> expand it and try to get back to the original.  Is this case
> "obvious"? How much
> time is "reasonable"? And what heuristics would you apply?
>
>
> There are some rules, some may apply, some not
>> -- and if the rules are tested in a greedy way (always strictly reduce
>> the complexity), I guess this step is done in almost no time.
>
> Try your idea on the example above.
>
>>
>> Certainly Maxima does try some rules, before refusing to answer "f>0"?
>
> Sure, though they are not necessary implemented as "rules".
>  Primarily local simplification such as special values e.g. sin(pi),
> and
> collection of terms of + and *.
>
>
>> So, why not add one more easy rule that frequently occurs in real
>> life? Or does Maxima give up right away when being asked "f>0",
>> without to try anything?
>
> No, but as I've suggested, you are mistaken in thinking that rules are
> easy
> to apply.
>
>
> Since you and others you are sufficiently fixed on the sin^2+cos^2,
> consider this example.
>
> (sin(x)-1)^15-(cos(x)-2)^15-2^15+1;
>
> expand it out and try finding sin^2+cos^2,   And also find
> (sin^2+cos^2)^2, etc.
> which appear up to the 7th power.  You can do this by long division.
>
> What "rule" would you apply to get back to the small expression above?
>
> RJF

Here are some things that the Ma*'s tend to do, which sometimes
academic math software projects don't:

   * listening to what users want

   * solving problems in practice that users care about, even if they are hard

In Sage development, we can and should continue to do the same.

 - William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to