limit code



Here is one last example.

(%i1) limit(a*x^b,x,minf);
Is  b  positive, negative, or zero?
p;
(out1) a*(-1)^b*('limit(x^b,x,inf))
(%i2) ev(%,nouns);
Is  b  positive, negative, or zero?
p;
(out2) inf*a*(-1)^b

I want to propose that an extra question (or maybe two) be asked when the domain in real.  Is b an integer?  You could 
be more specific and ask if it is an even or odd integer too but that may be unnecessary.

Here is another bug.

(%i1) limit(x^(2*b),x,minf);
Is  b  positive, negative, or zero?
p;
(out1) minf

You could ask if b is an integer and if yes then the answer would be inf.  So this answer is wrong too.

Rich


--------------------------------------------------
From: "Richard Hennessy" <rich.hennessy at verizon.net>
Sent: Thursday, January 28, 2010 2:42 PM
To: "Barton Willis" <willisb at unk.edu>
Cc: "Maxima List" <maxima at math.utexas.edu>
Subject: Re: [Maxima] limit code

> Here is one example where the bug manifests itself as an error.
>
> (%i1) display2d:false;
> (out1) false
> (%i2) limit(a*x^b,x,inf);
> Is  b  positive, negative, or zero?
> z;
> (out2) 0
> (%i3) limit(a*x^0,x,inf);
> (out3) a
>
>
> Here it returns a noun which can be handled better.
>
> (%i1) display2d:false;
> (out1) false
> (%i2)  limit(a*x^b,x,inf);
> Is  b  positive, negative, or zero?
> p;
> (out2) a*('limit(x^b,x,inf))
> (%i3) ev(%,nouns);
> Is  b  positive, negative, or zero?
> p;
> (out3) inf*a
> (%i4)  limit(a*x^b,x,minf);
> Is  b  positive, negative, or zero?
> p;
> (out4) a*(-1)^b*('limit(x^b,x,inf))
> (%i5) ev(%,nouns);
> Is  b  positive, negative, or zero?
> p;
> (out5) inf*a*(-1)^b
>
> It should ask if b is an integer.   Then if so
>
> (%i4) limit(a*x^b,x,inf)
> Is b an integer?
> y;
> Is b  positive, negative, or zero?
> p;
> Is a positive, negative, or zero?
> (out4) inf
>
> Here is Barton's error.
>
> limit(f(a*x),x,inf),
> f(infinity)
>
> I think $infinity is being returned because the sign of a is undetermined so it could be $minf or $inf so someone made 
> it return $infinity which is wrong.  $infinity means complex infinity, not "unknown sign but still infinite".
>
> Rich
>
> --------------------------------------------------
> From: "Barton Willis" <willisb at unk.edu>
> Sent: Thursday, January 28, 2010 6:54 AM
> To: "Maxima List" <maxima at math.utexas.edu>
> Cc: "Richard Hennessy" <rich.hennessy at verizon.net>
> Subject: Re: [Maxima] limit code
>
>> Better example (independent of limsubst)
>>
>> (%i1) limit(a*x,x,inf);
>> (%o1) infinity
>>
>> Barton
>>
>> -----maxima-bounces at math.utexas.edu wrote: -----
>>
>>
>>>Maybe Richard is refereeing to the (unreported?) bug:
>>>
>>> (%i7) limit(f(a*x),x,inf), limsubst : true;
>>>   1> (RATLIM ((MTIMES SIMP) $A $X))
>>>   <1 (RATLIM $INFINITY)
>>> (%o7) f(infinity)
>>
>>