|
[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]]?
- To: mathgroup at smc.vnet.net
- Subject: [mg91906] Re: [mg91880] Re: [mg91799] How to simplify ArcCos[x/Sqrt[x^2+y^2]] to Pi/2-ArcTan[x/Abs[y]]?
- From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
- Date: Fri, 12 Sep 2008 05:28:40 -0400 (EDT)
- References: <200809080903.FAA25833@smc.vnet.net> <F29C8163-C0D9-41CE-9C78-D4A24DE414C7@mimuw.edu.pl> <366c6f340809101456o1170addeybfa514c3255fd439@mail.gmail.com> <200809111016.GAA01297@smc.vnet.net> <366c6f340809111045r1be788cbh297978a50f1c6e0d@mail.gmail.com>
On 12 Sep 2008, at 02:45, Peng Yu wrote:
>
> 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.
Of course, but... Do you have any reason to think Mathematica
developers do not know it would be a good thing if Mathematica could
transform inverse trigonotmetric functions (or other mathematical
expressions) into equivelent forms? Do you really think that the
reason it can't is because the developer's have not been paying
attention to this matter?
Similarly, do you think that mathematicians do not know that it would
be a good idea to prove the Riemann hypothesis and that the reason it
has not yet been done so is their lack of trying?
>
>
> 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
It is completely trivial to implement all these rules in Mathematica
using pattern matching and you should be able to do it yourself with
just a minimal knowledge of Mathematica. So this is not the problem.
The problem is to implement them in such a way that not only
expressions that match exactly the ones on this page are transformed
but also an infinite class of essentially equivalent expressions which
are mathematically equal but do not match the same pattern. For this
one needs general mathematical algorithms and finding such algorithms
is a problem in mathematics and not a problem in software development.
>
>
> 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].
One way to do this and many similar examples is:
Simplify[Sqrt[x^2 + y^2] /. y -> k*x, x >= 0] /. k -> y/x
x*Sqrt[y^2/x^2 + 1]
On the other hand, computer algebra programs are not really meant, or
at least not principally meant, to transform expressions from one form
to another already known form. Since you already know the answer you
want, you can do the "transforming" by writing an appropriate pattern
and using replacement, which is essentially the same as doing this "by
hand", but can be more efficient in cases where you have to perform
many similar replacements. The true purpose of functions such as
Simplify and FullSimplify is to transform complex expressions into
canonical, "simpler" forms in situations when you do not already know
exactly the form you want and only know that you want a form that is
"simpler" than the one you have got. It would be a waste of resources
to devote much time and energy on improving the abilities of
Mathematica to give users the answers they already know.
Andrzej Kozlowski
Prev by Date:
Re: Simulate a finite-state markov process
Next by Date:
Re: How can you get the list of all used variables and functions
Previous by thread:
Re: How to simplify ArcCos[x/Sqrt[x^2+y^2]] to Pi/2-ArcTan[x/Abs[y]]?
Next by thread:
Re: How to simplify ArcCos[x/Sqrt[x^2+y^2]] to Pi/2-ArcTan[x/Abs[y]]?
|