On Tue, Jun 21, 2011 at 08:43, Richard Fateman <fateman at eecs.berkeley.edu>wrote:
> The issue here is, to some extent, not solve but how much simplification
> should be used automatically by any command (including solve) in processing.
> One can try any or all of a substantial number of simplification programs,
> including ratsimp, fullratsimp, trigsimp, exponentialize, factor .... at
> every juncture, including "is", "if", "solve" ...
> or
> expect that the user will occasionally make a choice of some transformation
> before calling the command.
>
> Solve is perhaps unusual in that it may eventually conclude something like
> "nope, I couldn't do that" and could then try some extra tools.
>
> But just factoring the input to solve is probably NOT a good idea, given
> the potential expense of factoring when it is pointless.
>
I'd think that our basic functions like solve, integrate, limit, etc. should
try *all* reasonable techniques to get a useful result. In the vast
majority of practical cases, trying factor will not take too much time. If
a user it working on a problem that stretches the capabilities of the
general-purpose tool, then we should offer special-purpose tools that allow
finer control.
I would be more worried about producing useless or incorrect results. For
example, solve(exponentialize(sin(x)^3+cos(x)+1),x) produces a big, messy,
(and incomplete) result, which I doubt is of any use to anyone.
-s