Re: Re: A Problem with Simplify
- To: mathgroup at smc.vnet.net
- Subject: [mg87782] Re: [mg87760] Re: A Problem with Simplify
- From: Daniel Lichtblau <danl at wolfram.com>
- Date: Wed, 16 Apr 2008 22:33:03 -0400 (EDT)
- References: <ftkb7f$a9m$1@smc.vnet.net> <200804140943.FAA08090@smc.vnet.net> <200804161114.HAA00059@smc.vnet.net>
Alexey Popkov wrote:
> [...]
>>Capitalization notwithstanding, it need not do any such thing. Integrate
>>should give a generic result that behaves sensibly in the limit as a->1
>
>>from whatever path is specified to Limit. This is similar to the
>
>>situation of
>
>
>>In[18]:= InputForm[solns = x /. Solve[a*x^2 + x == 1, x]]
>>Out[18]//InputForm= {(-1 - Sqrt[1 + 4*a])/(2*a),
>> (-1 + Sqrt[1 + 4*a])/(2*a)}
>>
>>In[20]:= Limit[solns, a->0]
>>Out[20]= {-Infinity, 1}
>>
>>Note that a blind substitution of a->0 will not give "nice" results.
>
>
> Well. But how I can get the partial answer for the case a=1 with
> Limit?
> I have tried the foolowing code:
> In[1]:= Limit[Integrate[Cos[a*z]/Sin[z],z],a->1]
> Out[1]= \[Infinity]
> In[2]:= Limit[Integrate[Exp[a*z]*Sinh[z],z],a->1]
> Out[2]= -\[Infinity]
> In[3]:= Limit[Integrate[Exp[z]*Sinh[a z],z],a->1]
> Out[3]= E^z DirectedInfinity[E^(-I*Im[z])]
> In[4]:= Limit[Integrate[Exp[(a-1)*x],x],a->1]
> Out[4]= \[Infinity]
> All results are incorrect!
> As I understand, Integrate does not give a generic result that behaves
> sensibly in the limit as a->1!
Sorry, I should have stated the situation more clearly.
Yes, the antiderivatives you see have singularities at the parameter
value in question (in all cases, when a is 1). Hence the results you
show above. What I should have said is that one can get these
singularities to cancel, if using the parametrized antiderivatives to
obtain definite integrals a la Newton-Leibniz. Here is a standard simple
example (modified slightly so as to have a->1 as the bad value).
In[22]:= InputForm[i1 = Integrate[x^(-a),x]]
Out[22]//InputForm= x^(1 - a)/(1 - a)
Certainly it blows up as a->1.
In[23]:= Limit[i1, a->1]
Out[23]= -Infinity
In[24]:= Limit[i1, a->1, Direction->1]
Out[24]= Infinity
But if we take a pair of values for x, say 2 and 3, to evaluate the
definite integral, we in fact get the expected/desired logarithm result
in the limit as a->1 (and independent of direction).
In[27]:= InputForm[Limit[(i1/.x->3)-(i1/.x->2), a->1]]
Out[27]//InputForm= Log[3/2]
In[28]:= InputForm[Limit[(i1/.x->3)-(i1/.x->2), a->1, Direction->1]]
Out[28]//InputForm= Log[3/2]
To see that this really is reproducing the Fundamental Theorem of
Calculus result (or at least doing a heckuva job to fool me), I'll show
this instead as a definite integral from x0 to x.
In[29]:= InputForm[Limit[i1 - (i1/.x->x0), a->1]]
Out[29]//InputForm= Log[x] - Log[x0]
I believe most of your examples will also behave fine when processed in
this way. The Cos[a*z]/Sin[z] integrand might be an exception, but that
indicates a limitation of Limit rather than a bug in Integrate.
Depending on whether you give symbolic (z,z0) or exact numeric (3,2)
input to Limit it either returns a complicated, but seemingly correct
result, or else unevaluated.
Daniel Lichtblau
Wolfram Research
- References:
- Re: A Problem with Simplify
- From: Alexey Popkov <popkov@gmail.com>
- Re: A Problem with Simplify
- From: Alexey Popkov <popkov@gmail.com>
- Re: A Problem with Simplify