Re: Problem with antiderivtive of ArcSec
- To: mathgroup at smc.vnet.net
- Subject: [mg24388] Re: [mg24362] Problem with antiderivtive of ArcSec
- From: Andrzej Kozlowski <andrzej at bekkoame.ne.jp>
- Date: Wed, 12 Jul 2000 23:13:29 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
on 7/9/00 5:53 PM, heathw at in-tch.com at heathw at in-tch.com wrote: > Hi, > I am trying to integrate the following function: > 1/(x*Sqrt[x^2-1]) > The solution should be simply: > ArcSec[x] > Mathmatica gives: > -ArcTan[1/Sqrt[x^2-1]] > Why won't Mathematica give me the 'textbook' answer? > It seems that mathematica gives a solution in terms of ArcTan to any > equation like the one I listed. > Thanks, > Heath > > You can't expect Mathematica always to give you back as anti-derivative the function you originally differentiated, since differentiation is only the left inverse of anti-diferentiation on the space of differentiable functions. Choices have to be made and someone among the designers of Mathematica does not seem to like ArcSec and ArcCsc (however wait till the end of this message!) Your question inspired me to do a curious investigation. Consider the follwing operator: In[1]:= ID[f_, x_] := Integrate[D[f, x], x] For a great many classical functions ID is the Identity operator: In[2]:= testlist = {x^2, Sin[Log[x]], ArcSin[x], Log[ArcSin[x]], ArcSin[ArcTan[x]]}; In[3]:= ID[#, x] == # & /@ testlist Out[3]= {True, True, True, True, True} As expected this is not true for ArcCos[x] but instead we have: In[4]:= FixedPointList[ID[#, x] &, ArcCos[x]] Out[4]= {ArcCos[x], -ArcSin[x], -ArcSin[x]} In general, although we would not expect ID to act as identity on all classical functions it is reasonable to expect that it will either have a fixed point or end with a cycle. The reason is that Integrate (unlike DSolve) does not use "arbitrary constants", and there are only a few "named functions", like ArcCos and -ArcSin which differ by a constant). So it would be surprising and worrying if Mathematica failed to produce a fixed point or a cycle in a nested sequence applications of ID. Thus I was lead to try to see what happens for ArcSec and ArcCsc. The results were a bit surprising. As I expected, in both cases we get cycles. In the case of ArcSec the third term is a very complicated expresion but the next one is just -ArcSin[1/x] seems to confirm that Mathematica does not like ArcSec) at which poit we reach the cycle. The case ArCsc seems slightly bizzare: In[5]:= NestList[ID[#1, x] & , ArcCsc[x], 3] 1 Power::infy: Infinite expression - encountered. 0 1 Power::infy: Infinite expression - encountered. 0 Out[5]= {ArcCsc[x], (Sqrt[-1 + x^2]*ArcTan[1/Sqrt[-1 + x^2]])/(Sqrt[1 - x^(-2)]*x), ArcSin[x^(-1)], (Sqrt[-1 + x^2]*ArcTan[1/Sqrt[-1 + x^2]])/(Sqrt[1 - x^(-2)]*x)} Things imporove if we include FullSimplify in the definition of ID: ID[f_, x_] := Integrate[D[f, x], x]//FullSimplify For ArcSec we now get a fixed point, though a somewhat complicated looking one: In[7]:= FixedPointList[ID[#, x] &, ArcSec[x]] Out[7]= 2 x ArcCot[Sqrt[-1 + x ]] {ArcSec[x], -(-----------------------), 2 Sqrt[x ] 2 x ArcCot[Sqrt[-1 + x ]] -(-----------------------)} 2 Sqrt[x ] For ArcCsc we still get a cycle, but no more 1/0 messages: In[8]:= NestList[ID[#, x] &, ArcCsc[x], 3] Out[8]= 2 x ArcCot[Sqrt[-1 + x ]] 1 {ArcCsc[x], -----------------------, ArcCot[Sqrt[1 - --] x], 2 2 Sqrt[x ] x ArcCsc[x]} What is interesting is that this time the cycle does begin with ArcCsc[x] ! This is was really a surprise! It seems that after all Mathematica does not hate ArcCsc, for it gives: In[9]:= FullSimplify[Integrate[-((Sqrt[1 - 1/x^2] + 1/(Sqrt[1 - 1/x^2]*x^2))/(1 + (1 - 1/x^2)*x^2)), x]] Out[9]= ArcCsc[x] What is even stranger: In[10]:= FullSimplify[ Integrate[ FullSimplify[-((Sqrt[1 - 1/x^2] + 1/(Sqrt[1 - 1/x^2]*x^2))/(1 + (1 - 1/x^2)*x^2))], x]] Out[10]= 2 x ArcCot[Sqrt[-1 + x ]] ----------------------- 2 Sqrt[x ] So the result of my investigation leaves me more puzzled than I was to begin with! Andrzej -- Andrzej Kozlowski Toyama International University, JAPAN For Mathematica related links and resources try: <http://www.sstreams.com/Mathematica/>