Re: Re: If Integrate returns no result, can we conclude that no closed-form

*To*: mathgroup at smc.vnet.net*Subject*: [mg87812] Re: [mg87784] Re: If Integrate returns no result, can we conclude that no closed-form*From*: Andrzej Kozlowski <akoz at mimuw.edu.pl>*Date*: Thu, 17 Apr 2008 07:00:01 -0400 (EDT)*References*: <fu4lpc$sk9$1@smc.vnet.net> <200804170233.WAA21093@smc.vnet.net> <5E0C371E-10BB-43A7-BE86-C2A06FE723D6@mimuw.edu.pl> <00d101c8a043$1e884840$13783e44@Dell>

On 17 Apr 2008, at 13:25, David W. Cantrell wrote: > Andrzej Kozlowski wrote: >> On 17 Apr 2008, at 11:33, David W.Cantrell wrote: >>>> Szabolcs_Horv=E1t <szhorvat at gmail.com> wrote: >>>> The documentation says: >>>> >>>> "In the most convenient cases, integrals can be done purely in >>>> terms of elementary functions such as exponentials, logarithms and >>>> trigonometric functions. In fact, if you give an integrand that >>>> involves only such elementary functions, then one of the important >>>> capabilities of Integrate is that if the corresponding integral >>>> can be expressed in terms of elementary functions, then Integrate >>>> will essentially always succeed in finding it." >>>> >>>> = http://reference.wolfram.com/mathematica/tutorial/IntegralsThatCanAndCanno= tBeDone.html >>>> >>>> How precise is this? Can one rely on this information? >>> >>> I suppose that depends on the definition of "essentially". ;-) >>> >>>> Is it really >>>> true that if Mathematica cannot integrate an expression made up of >>>> elementary functions, then no closed-form result exists? >> >>> No. Consider, for example, >>> >>> In[9]:= Integrate[D[x Sin[x^ArcSin[x]], x], x] >>> >>> Out[9]= Integrate[x^(1 + ArcSin[x])*Cos[x^ArcSin[x]]*(ArcSin[x]/x = + >>> Log[x]/Sqrt[1 - x^2]) + Sin[x^ArcSin[x]], x] >>> >>> which was done in Versionn 6.0.2 under Windows XP. > >> This is not an "elementary function" (as far as the Risch algorithm >> is concerned). >> >> The class of elementary functions consists of rational functions, >> exponentials, logarithms, trigonometric, inverse trigonometric, >> hyperbolic, and inverse hyperbolic functions, the solutions of a >> polynomial equation whose coefficients are elementary functions) and >> any finite nesting (composition) of elementary functions. It does >> not include the power of an elementary function to another >> elementary function so your example actually shows the opposite of >> what you seem to claim, namely that Mathematica has correctly >> concluded (by using the Risch algorithm) that the integral cannot be >> expressed in terms of elementary functions. > > Are you claiming that, for the purpose of the Risch algorithm, > Exp[Log[x] ArcSin[x]] is not considered to be an elementary function? > > I find that hard to believe! > > David > I think both of us are (partly) right. Well, you are right that this is an "elementary" function in the sense that I stated earlier (composites of elementary functions are elementary) but it is certainly not an "elementary transcendental function" as in the "easy case" of the Risch algorithm (e.g. see p. 529 of Geddes, Czapor, Labahn "Algorithms for computer algebra"). Elementary transcendental functions are just functions generated over the ground field by exponential and logs. However your function is an object that lives in a mixed tower of algebraic and transcendental extensions. Algebraic extensions are needed to convert ArcSin to Log, which is required by the Risch algorithm, and you obviously need to consider two transcendental extensions because of the composition of transcendental functions in your formula. So we have a so called "mixed tower of extensions". However, the original Risch algorithm did not apply to such cases. This case was solved only in 1987 in a PhD thesis of Bronstein (Risch's paper appeared in 1968) and as far as I know it has never been implemented. Its certainly not implemented in Mathematica and moreover it seems it is not even considered as an "unimplemented part of the Risch algorithm" (see Bhuvanesh's post in the same thread, which only mentions the purely algebraic case as "unimplemented"). So, if this is correct (and I am only an amateur in this area) then, although your function is indeed elementary in the wide sense of Bronstein's algorithm it is not elementary in the sense of the original Risch algorithm. Andrzej Kozlowski Andrzej Kozlowski

**References**:**Re: If Integrate returns no result, can we conclude that no closed-form***From:*"David W.Cantrell" <DWCantrell@sigmaxi.net>