Re: l'Hopital's Rule
- To: mathgroup at smc.vnet.net
- Subject: [mg24395] Re: l'Hopital's Rule
- From: Richard Fateman <fateman at cs.berkeley.edu>
- Date: Wed, 12 Jul 2000 23:13:38 -0400 (EDT)
- Organization: University of California, Berkeley
- References: <8k3oi3$42k@smc.vnet.net> <8lca5.328$f6.112116@ralph.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
"Kevin J. McCann" wrote: > > If you divide numerator and denominator by a, Mathematica will then give the > correct answer of 2a. Also if a is replaced by a number, the correct > answer is given. I would call this a bug in the Limit. > > Kevin > > heathw at in-tch.com wrote: > > > > Hi, > > When I input this: > > Limit[(a^2 - a*x)/(a - Sqrt[a*x]), x -> a] > > The output is: > > 0 > > The output should be 2*a. > > Can't Mathematica 4 use l'Hopital's Rule? > > Thanks, > > Heath Interestingly, Macsyma does the same thing. I should add this to my list of system-independent bugs. Here's my explanation: The numerator evaluates to 0. The denominator does not evaluate to zero, since a-sqrt(a*a) cannot be (correctly) automatically simplified. Indeed, it may be either 0 or 2*a, depending on the choice of sign of the square root. Choosing either particular answer can be used to produce any number of falsehoods. Curiously, here, NOT making a choice leads to problems, too! The correct limit is not 2a, but the PAIR OF POSSIBLE ANSWERS {0 , 2a}, depending on the choice of root. One thing you can do (in macsyma... there is something similar in Mathematica, but I forget its name.) radcan(%) gives sqrt(a)*sqrt(x)+a. Radcan makes a choice (sometimes not the one you want) for signs of radicals. Given that expression, limit produces 2*a. My evaluation of this: it is more than a bug in limit: it is a bug in the concept of simplification in computer algebra systems... one based on the misconception that all algebraic expressions are single-valued... which causes limit's test for the zero-ness of the denominator to fail. Also, I should add, if you think there is only one answer here, then YOU are committing a bug, too. RJF