limit(atan(sqrt(x))/sqrt(x),x,0) => und
correct answer is 1
limit(...,plus) correctly gets 1
but
limit(...,minus) gives noun form
tlimit gets the correct answer
You might think that limit is being particularly (overly)
careful about the imaginary case, but peculiarly, atan(b^
(3/2))/b^(3/2), which should have the same issues,
gives the correct answer!
Logged In: YES
user_id=1797506
Originator: NO
Fixed in limit.lisp rev 1.46.
Limit now returns nounform if limit from either side fails.
(%i17) tlimswitch:true;
(%o17) true
(%i18) limit(atan(sqrt(x))/sqrt(x),x,0);
(%o18) 1
(%i19) limit(atan(sqrt(x))/sqrt(x),x,0,minus);
(%o19) 1
(%i20) limit(atan(sqrt(x))/sqrt(x),x,0,plus);
(%o20) 1
(%i21) tlimswitch:false;
(%o21) false
(%i22) limit(atan(sqrt(x))/sqrt(x),x,0);
(%o22) 'limit(atan(sqrt(x))/sqrt(x),x,0)
(%i23) limit(atan(sqrt(x))/sqrt(x),x,0,minus);
(%o23) 'limit(atan(sqrt(x))/sqrt(x),x,0,minus)
(%i24) limit(atan(sqrt(x))/sqrt(x),x,0,plus);
(%o24) 1