[Date Index] [Thread Index] [Author Index]
Re: Re: How to simplify ArcCos[x/Sqrt[x^2+y^2]] to Pi/2-ArcTan[x/Abs[y]]?
On Thu, Sep 11, 2008 at 5:16 AM, Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote: > > On 11 Sep 2008, at 06:56, Peng Yu wrote: > >> On Wed, Sep 10, 2008 at 7:45 AM, Andrzej Kozlowski >> <akoz at mimuw.edu.pl> wrote: >>> I don't think there is a way to "simplify" one of these expressions >>> into the >>> other, but one can use Mathematica as an aid in proving that they >>> are equal >>> (for real x and y). One way to do this is: >> >> If this is case, I therefore might have to rely on hand calculation. >> But I would think Mathematica should be improved so that mathematical >> expressions can be manipulated in more versatile ways. >> >> Thanks, >> Peng > > I always agree that Mathematica should be improved (although perhaps I > put the limit the point where it would start putting human > mathematicians out of their jobs). However, that is easy to say, the > hard thing is to find the right algorithms and to implement them. > Algorithmic simplification of expressions is a very complex problem > and only for certain types of expressions (like polynomials, rational > functions, exponentials, logs and a few others) sufficiently general > methods exist (and this ignores the not exactly trivial problem of > defining when one expression is to be considered "simpler" than > another). But the situation is much worse when you wish to convert > from one form to another an expression, when the conversion is only > valid under certain assumptions. If you can suggest a concrete general > algorithm that you think should be implemented in Mathematica and is > not implemented now I am sure WRI will be happy to oblige but just > saying "it should be improved" isn't very helpful. You can be sure > that there are people who are trying to do that all the time. I agree you point. But I don't know the exact algorithm how Mathematica manipulate expressions, and I don't know how to improve it algorithmically in a general way. Like suggesting the improvement to all other softwares, users can only tell the software developers what the users want. Although the users provide somewhat ambiguous or not exact information, it is up to the developers to figure out what the users mean. The users' suggestion might only be some point cases, it is up to the developer to see if these cases can be generalized. Therefore, the communication between the developers and the users become important. For right now, I think Mathematica shall at least be able to do all the elementary manipulations in the following webpage ragarding inverse trigonometry functions, which I don't see can be done by Mathematica now (correct me if I'm wrong). http://en.wikipedia.org/wiki/Inverse_trigonometric_function Another thing that I want is that it shall be able to manipulate Sqrt[x*x+y*y] to x *Sqrt[1+(x/y)^2]. Thanks, Peng