Re: Infinity appears as a factor in Integrate result!
- To: mathgroup at smc.vnet.net
- Subject: [mg74885] Re: Infinity appears as a factor in Integrate result!
- From: "Michael Weyrauch" <michael.weyrauch at gmx.de>
- Date: Tue, 10 Apr 2007 05:13:47 -0400 (EDT)
- References: <evd3f6$59u$1@smc.vnet.net>
Hello, I think this example clearly supports the view I expressed in another recent thread on Integrate, namely that Mathematica 5.2 has trouble calculating the limit of the antiderivative for x -> Infinity. First, I assume that this type of definte integral is evaluated by Mathematica by first calculating the antiderivative (and not via a Mellin transform as was supposed by Dimitris recently). It was really very nice by Buvanesh of WRI that he confirmed this explicitely for a similar integral recently. The antiderivative of the present integral reads RootSum[1 + b*#1 + a*#1^2 + #1^3 & , Log[x - #1]/(b + 2*a*#1 + 3*#1^2) & ] The limit for x->Infinity vanishes as can be shown by neglecting the constant under the Log RootSum[1 + b*#1 + a*#1^2 + #1^3 & , Log[x]/(b + 2*a*#1 + 3*#1^2) & ] which Mathematica simplifies to 0 immediately. To my opinion, it is the Log[x+constant] which Mathematica puts explicitly to Infinity when evaluating this limit x-> Infinity, which is incorrect. Evaluating the limit x->0 of the antiderivative given above e. g. for a->1 and b->2 reproduces the numerical values given by Dimitris. Therefore, I am pretty sure that the problems of Integrate we see in such examples all have to do with an issue concerning limits for x-> Infinity. But I think we have good reason to hope that this issue will have disappeared in the forthcoming version of Mathematica. Michael "dimitris" <dimmechan at yahoo.com> schrieb im Newsbeitrag news:evd3f6$59u$1 at smc.vnet.net... > Consider the integral > > In[13]:= > f = HoldForm[Integrate[1/(x^3 + a*x^2 + b*x + 1), {x, 0, Infinity}]] > > Then > > In[17]:= > Integrate[1/(x^3 + a*x^2 + b*x + 1), {x, 0, Infinity}] > > Out[17]= > If[(Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 1]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 2]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 2]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 3]] != 0), > -(Log[-Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]]/(b + 2*a*Root[1 + b*#1 > + a*#1^2 + #1^3 & , 1] + > 3*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]^2)) - Log[-Root[1 + b*#1 > + a*#1^2 + #1^3 & , 2]]/ > (b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 2] + 3*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 2]^2) - > Log[-Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]]/(b + 2*a*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 3] + > 3*Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]^2) + > Infinity*(1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1] + > 3*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 2] + 3*Root[1 + b*#1 > + a*#1^2 + #1^3 & , 2]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 3] + 3*Root[1 + b*#1 > + a*#1^2 + #1^3 & , 3]^2)), > Integrate[1/(1 + b*x + a*x^2 + x^3), {x, 0, Infinity}, > Assumptions -> !((Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] <= 0 || > Im[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 2]] <= 0 || Im[Root[1 + > b*#1 + a*#1^2 + #1^3 & , 2]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]] <= 0 || Im[Root[1 + > b*#1 + a*#1^2 + #1^3 & , 3]] != 0))]] > > In the results it appears Infinity!. For anyone who dosn't believe me > try: > > In[18]:= > %[[2]] > > Out[18]= > -(Log[-Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]]/(b + 2*a*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 1] + > 3*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]^2)) - Log[-Root[1 + b*#1 + > a*#1^2 + #1^3 & , 2]]/ > (b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 2] + 3*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 2]^2) - > Log[-Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]]/(b + 2*a*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 3] + > 3*Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]^2) + > Infinity*(1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1] + 3*Root[1 > + b*#1 + a*#1^2 + #1^3 & , 1]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 2] + 3*Root[1 + b*#1 > + a*#1^2 + #1^3 & , 2]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 3] + 3*Root[1 + b*#1 > + a*#1^2 + #1^3 & , 3]^2)) > > The following term is multiplied with Infinity and the result of this > product > appeared in the results! > > In[19]:= > Cases[%, (a_)*Infinity -> a] > > Out[19]= > {1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 1] + 3*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 1]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 2] + 3*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 2]^2) + > 1/(b + 2*a*Root[1 + b*#1 + a*#1^2 + #1^3 & , 3] + 3*Root[1 + b*#1 + > a*#1^2 + #1^3 & , 3]^2)} > > Obviolusly Integarate algorithm failes for this integral. > > What is funnier is that > > In[20]:= > Integrate[1/(x^3 + a*x^2 + b*x + 1), {x, 0, Infinity}] > > Out[20]= > If[(Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 1]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 2]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 2]] != 0) && > (Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]] <= 0 || Im[Root[1 + b*#1 > + a*#1^2 + #1^3 & , 3]] != 0), ComplexInfinity, > Integrate[1/(1 + x*(b + x*(a + x))), {x, 0, Infinity}, > Assumptions -> (Im[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] == 0 && > Re[Root[1 + b*#1 + a*#1^2 + #1^3 & , 1]] > 0) || > (Im[Root[1 + b*#1 + a*#1^2 + #1^3 & , 2]] == 0 && Re[Root[1 + > b*#1 + a*#1^2 + #1^3 & , 2]] > 0) || > (Im[Root[1 + b*#1 + a*#1^2 + #1^3 & , 3]] == 0 && Re[Root[1 + > b*#1 + a*#1^2 + #1^3 & , 3]] > 0)]] > > I.e. if you try again to obtain the integral Mathematica returns > ComplexInfinity! > > Dimitris > >
- Follow-Ups:
- Re: Re: Infinity appears as a factor in Integrate result!
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Re: Infinity appears as a factor in Integrate result!